Use when shaping a discovery slice — JTBD-framed interview guide, switch-event focus, verbatim quotes not summaries. Triggers on 'talk to users', 'why did they cancel', 'before we build X'.
Scanned 9/12/2026
Install to Claude Code
npx -y skills add event4u-app/agent-config --skill customer-research --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Customer Research?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/event4u-app-customer-research-agent-config)More formats (shields.io, HTML) on the badges page.
---
model_tier: high
name: customer-research
description: "Use when shaping a discovery slice — JTBD-framed interview guide, switch-event focus, verbatim quotes not summaries. Triggers on 'talk to users', 'why did they cancel', 'before we build X'."
status: active
tier: senior
domain: product
context_spine: [product]
workspaces:
- product
packs:
- product-discovery
trust:
level: professional
install:
default: false
removable: true
---
# customer-research
## When to use
- A backlog item is fuzzy because no one has talked to a current user about the underlying job in the last quarter.
- A churn or refund spike needs a switch-event explanation, not a feature gap list.
- A product owner is about to write AC for a feature that has not been validated against a real user job.
Do NOT use for quantitative funnel diagnosis (see `funnel-analysis`),
RICE-style ranking (see `rice-prioritization`), or surveying at scale —
this skill is about depth-5-to-10 interviews, not statistics.
## Cognition cluster
- **Mental model 2 — Jobs-to-be-Done.** Frames every question against
the **switch event**: what caused the user to fire the previous
solution? See [`docs/contracts/mental-models.md`](../../../docs/contracts/mental-models.md) § 2.
- **Mental model 3 — Pareto principle.** A research week that
produces 12 distinct insights is usually re-discovering the same
three. See `mental-models.md` § 3.
## Procedure
### Step 0: Frame the job
1. Write one sentence: *"Users hire \<thing\> to make progress in \<situation\>, when motivated by \<pressure\>, expecting \<outcome\>."* If you cannot finish the sentence, the discovery slice is not yet shaped — stop and route to `po-discovery`.
2. Read the **product** slot of the [context-spine](../../../docs/contracts/context-spine.md) (if the consumer project has filled it) for bounded scope, and the **team** slot for the senior PO / researcher handoff target. Skip if absent — note in the brief.
3. Identify **one** competing solution the user might fire. Multiple competitors per session blurs the switch event.
### Step 1: Recruit the right 5–8
1. Recruit **switchers** (joined in last 60 days) and **leavers**
(cancelled in last 60 days). Long-tenure power-users go in a
separate bucket — they explain habits, not jobs.
2. 5 minimum, 8 maximum. Saturation hits around 6 in a tightly
scoped job — the Pareto cut. Beyond 8 is research theatre.
3. Avoid friends, employees, beta-program over-talkers — selection bias is the failure mode that survives the AC.
### Step 2: Run the interview
1. Open with the **switch event**: *"Walk me through the day you decided to start using \<product\>."* Time, place, trigger, alternative considered.
2. Past behaviour, not hypothetical. Replace *"would you use"* with *"the last time you needed X, what did you do?"*.
3. Capture **quotes**, not summaries. Verbatim quotes survive the AC; paraphrases get re-interpreted into pre-existing beliefs.
4. Listen for the **anxiety / habit** pair — what they feared in switching, what habit died.
### Step 3: Code the evidence
1. One quote per insight. Tag each with: switch-event, anxiety, habit, expected-outcome, unexpected-outcome.
2. An insight without a quote is a hypothesis, not a finding — mark it.
3. Frequency-rank by how many distinct interviewees touched the insight (≥ 3 is signal; 1 is anecdote).
### Step 4: Hand back
1. Produce the three artifacts (see `## Output`).
2. Hand the brief to the senior PO. Do **not** translate findings into AC inside this skill — that is `refine-ticket`'s job.
## Related Skills
**WHEN to use this**
- The unit of analysis is **a real user's switch event**.
- Discovery is fuzzy and the team is about to ship without validation.
- A retention or churn spike needs a narrative, not a metric.
**WHEN NOT to use this**
- Quantitative drop-off across stages — route to [`funnel-analysis`](../funnel-analysis/SKILL.md).
- Ranking competing initiatives — route to [`rice-prioritization`](../rice-prioritization/SKILL.md).
- Reframing a fuzzy product ask before any user contact — route to [`po-discovery`](../po-discovery/SKILL.md).
- AC sharpening on an already-validated ticket — route to [`refine-ticket`](../refine-ticket/SKILL.md).
## When the agent should load this
- "We need to talk to users before we build X."
- "Why are people churning at month 2?"
- "Run customer research on the new pricing tier."
- "I keep guessing what the user wants — let's actually ask."
- "Before refining this ticket, do we know the real job?"
## Output
1. **`research-brief.md`** — frame sentence, recruit criteria, target sample, JTBD focal job, list of competing solutions in scope. Pre-interview artifact.
2. **`evidence-log.md`** — one row per insight: quote · interviewee ID · tag (switch / anxiety / habit / outcome) · frequency. Sorted by frequency descending. Verbatim only.
3. **`switch-event-summary.md`** — narrative of the dominant switch event(s) the research surfaced, with ≥ 3 supporting quotes per claim. Hand-off artifact for [`refine-ticket`](../refine-ticket/SKILL.md) and the senior product owner persona (currently [`product-owner`](../../personas/product-owner.md); senior persona shipping in next plate).
## Gotcha
- Asking *"would you use"* contaminates the answer with politeness; ground every question in past behaviour.
- One articulate interviewee can swamp evidence-log. Frequency-rank by distinct people, not distinct quotes.
- Tagging too aggressively pre-interview hides surprise findings — leave room for `unexpected-outcome`.
- A research week without ≥ 3 disqualified hypotheses is suspect — research that confirms everything is research that asked nothing.
## Do NOT
- Do NOT translate findings into acceptance criteria inside this skill — hand off to `refine-ticket`.
- Do NOT recruit only happy users; switchers and leavers carry the switch-event signal, satisfied users do not.
- Do NOT skip the frame sentence. An unframed interview produces 50 quotes about 8 different jobs.
## Runnable example
Pricing-tier churn at month 2:
- Frame: *"Customers hire \<product\> to make progress in \<weekly reporting\>, motivated by \<board cadence\>, expecting \<one-click roll-up\>."*
- Recruit: 6 leavers (cancelled within 30 days of month 2), 2 switchers from competitor C.
- Interview: open with *"Walk me through the day you decided to cancel."* Capture verbatim.
- Output: `evidence-log.md` shows 5 of 8 cite the *manual export step* as the cancellation trigger — switch-event signal, ≥ 3 frequency. `switch-event-summary.md` recommends the senior PO scope a discovery slice on the export step, not the report itself.
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!