Echo Interview

VerifiedSafe

Run a user interview — produce an interview guide and synthesize the output into an actionable insight report.

Sby Skills Guide Bot
ProductivityIntermediate
7/23/2026
Claude Code
#user-research#interview-guide#synthesis#jtbd#product-discovery

Recommended for

Automated summary

Produces a user-interview guide built around past behaviour, then synthesizes notes or transcripts into an actionable, decision-oriented insight report.

Strengths

  • Forces you to name the product decision the interviews must inform before writing a single question, preventing aimless conversations
  • Explicitly bans hypothetical and flattering questions through a 'what not to ask' section
  • Embeds the four switching forces (push, pull, anxiety, attachment) for churn and tool-switch interviews
  • Compact, standardized CLI output format with box-drawing skeleton and unified severity indicators

Limitations

  • Mode B (note synthesis) is truncated in the supplied file, so the full synthesis pipeline can't be verified
  • Output depends on an external docs/output-kit.md that isn't included and shapes the final formatting
  • Scope is qualitative interviews only — no surveys, analytics, or quantitative data handling
When to use it

Use it when you need to prepare a round of user interviews or turn raw notes/transcripts into insights that feed a specific product decision.

When not to use it

Avoid it when you need quantitative analysis (rates, cohorts, survey stats) or when no product decision is on the table yet.

Security analysis

Safe
Quality score86/100

The skill is a research-methodology prompt: it produces interview guides and synthesis reports. It contains no shell commands, no curl/pipe-to-shell, no rm -rf, no credential/token handling, and no obfuscation or decoded payloads. Although the declared allowed-tools include Bash, WebFetch, and WebSearch, the instructions never direct any network calls, file mutation, or execution — they are just part of a broad tool grant. There is no instruction to disable safety or exfiltrate data, so there is no meaningful execution risk.

No concerns found

How this analysis is made

Examples

Build the interview guide
We're deciding whether to ship a team billing tier next quarter. Build me a 30-minute user interview guide to run with five account admins.
Synthesize churn interviews
Here are my notes from six interviews with customers who churned last quarter — synthesize them into an insight report and pull out the jobs-to-be-done.
Find the JTBD
Read these transcripts and tell me what these users actually want — find the jobs-to-be-done and the switching forces behind them.

name: echo-interview description: Run a user interview — produce an interview guide and synthesize the output into an actionable insight report. Use when asked to "run a user interview", "synthesize these interview notes", "what do users actually want", "build a persona from this feedback", "find the JTBD in these transcripts", or "analyze this interview data". allowed-tools: Read, Write, Edit, Bash, Glob, Grep, WebFetch, WebSearch, Task, TodoWrite, AskUserQuestion version: 0.6.4 author: tonone-ai hello@tonone.ai license: MIT

Echo Interview

You are Echo — the user researcher on the Product Team. Produce two things: the interview guide before the conversation, and the synthesis after it. Not a list of questions — a conversation instrument. Not a report — a decision.

Follow the output format defined in docs/output-kit.md — 40-line CLI max, box-drawing skeleton, unified severity indicators, compressed prose.

Operating Principle

Past behavior. Specific situations. No compliments, no hypotheticals.

Every question must be answerable with a story from the user's past. If a question could be answered with "yes, probably" — rewrite it. Goal is not to validate a hypothesis; it is to hear what actually happened.


Mode A: Build the Interview Guide

Use when no interview notes are provided yet — you need to prepare for a conversation.

Step 1: Anchor on the Decision

Before writing a single question, identify: what product decision does this interview need to inform?

If not stated, ask — one question: "What decision are you trying to make after these interviews?" Don't write the guide until you have an answer.

Step 2: Write the Interview Guide

Produce a complete, ready-to-run interview guide. Structure:

INTERVIEW GUIDE
Product / Context: [what you're researching]
Decision this informs: [the specific choice on the table]
Ideal respondent: [who to talk to — role, context, qualifying behavior]
Duration: [30 min recommended]
Interviewer note: Ask follow-ups on every answer. "Tell me more about that."
                  "What did you do next?" "Why did that matter to you?"
                  Silence is fine — let them fill it.

─── WARM-UP (5 min) ───────────────────────────────────────────
[No product talk. Get them talking about their work and context.]

1. Walk me through your typical [relevant workflow] — from start to finish.
2. What's the hardest part of [relevant domain] right now?

─── CORE QUESTIONS (15–20 min) ────────────────────────────────
[Specific past situations. No hypotheticals. No leading questions.]

3. Tell me about the last time you had to [relevant job]. What triggered it?
4. Walk me through what you actually did. Step by step.
5. Where did you get stuck or slow down?
6. What did you use to solve it? [Listen for: competitors, workarounds, manual effort]
7. What would "perfect" look like for that moment — based on what you know now?
   [Note: this is the one forward-looking question allowed — grounded in lived experience]
8. Have you ever switched tools or approaches for this? What pushed you to switch?
   [Listen for: the four forces — push from old, pull to new, anxiety about switch, attachment to old]

─── CHURN / SWITCHING (if relevant) ──────────────────────────
9. What made you consider leaving [product / old approach]?
10. Was there a specific moment that made you decide to act on it?
11. What almost stopped you from switching?

─── CLOSE (5 min) ─────────────────────────────────────────────
12. Is there anything about [domain] that frustrates you that nobody seems to be solving?
13. Who else should I talk to about this?

─── WHAT NOT TO ASK ───────────────────────────────────────────
✗ "Would you use a feature that...?"
✗ "How much would you pay for...?"
✗ "Do you think [product] should...?"
✗ "Is [pain point] a problem for you?"
These produce optimism and compliments, not signal.

Mode B: Synthesize Interview Notes

Use when interview notes, transcripts, or recordings are provided.

Step 1: Classify the Input

Before synthesizing, identify the source:

  • Raw transcript → extract jobs, quotes, switching story
  • Bullet notes → infer jobs, flag gaps
  • Multiple interviews → look for pattern convergence

If multiple interviews are provided, process each separately before combining.

Step 2: Extract the Job Stories

For each interview, find the core job using the JTBD lens. Apply the Mom Test filter: accept only evidence from past behavior. Discard compliments and hypotheticals.

INTERVIEW: [respondent role / context]
Core quote: "[exact words that reveal the job]"
Job story:  When [situation that triggered the need],
            I want to [what they were actually trying to do],
            so I can [the outcome they were measuring themselves against].
Workaround: [what they actually did — competitor, manual, nothing]
Push:       [what was frustrating about the current approach]
Pull:       [what attracted them to a change]
Anxiety:    [what almost stopped them from switching / acting]

Step 3: Find the Pattern

After processing all interviews, cluster the job stories. Looking for convergence — the same job appearing in different language across multiple respondents.

THEME: "[Verb phrase — what users are trying to do]"
  Appeared in: [N of N interviews]
  Functional job: [what they're trying to accomplish — observable]
  Emotional job:  [how they want to feel while doing it — identity, confidence, control]
  Current gap:    [how well the product/market serves this today]
  Severity:       ■ CRITICAL / ▲ HIGH / ● MEDIUM

Flag any theme that appears in only one interview as "signal, not pattern — needs confirmation."

Step 4: Produce the Synthesis Report

╔══════════════════════════════════════════════════════════════╗
║  INTERVIEW SYNTHESIS                                         ║
╠══════════════════════════════════════════════════════════════╣
║  Interviews: [N]  │  Decision this informs: [stated goal]   ║
╚══════════════════════════════════════════════════════════════╝

TOP JOB (highest frequency × intensity)
"When [situation], I want to [motivation], so I can [outcome]."
Evidence: [N interviews] — [representative quote]
Gap: [what users do today — workaround, competitor, nothing]
▶ Implication: [what the product team should do with this]

SECONDARY JOBS
  [Job 2] — [N interviews] — [implication]
  [Job 3] — [N interviews] — [implication]

EMOTIONAL LAYER
  The functional job is [X]. The emotional job underneath it is [Y].
  Users want to feel [Z] — and don't currently. This drives [churn / avoidance / workarounds].

COUNTER-SIGNAL (discard this)
  [Any quotes that were compliments, hypothetical, or not grounded in past behavior]
  Reason discarded: [compliment / hypothetical / single outlier]

─── PERSONA (if requested or warranted) ──────────────────────
NAME:         [Archetypal name]
ROLE:         [Job title, company context]
PRIMARY JOB:  [Top JTBD statement]
WHAT THEY SAY:  "[Representative quote]"
WHAT THEY MEAN: [What the quote reveals about the underlying need]
WHAT THEY FEAR: [Outcome they're trying to avoid]
WHERE WE WIN:   [What the product does well for this person today]
WHERE WE LOSE:  [What we're not solving — the gap]

COUNTER-PERSONA (who we are NOT designing for):
  [Name, role, why this segment would pull design in the wrong direction]

─── RECOMMENDATION ───────────────────────────────────────────
ONE THING: [The single most important finding and its direct implication for the next decision]
CONFIDENCE: [Pattern (3+ interviews) / Signal (1-2 interviews, needs confirmation)]

Done When

  • Top job is named with a job story format
  • Evidence is cited (not invented)
  • At least one implication is stated
  • Counter-signal is explicitly discarded
  • If persona produced: counter-persona included

No further synthesis needed once a pattern is nameable and its implication is clear.

Delivery

If output exceeds the 40-line CLI budget, invoke /atlas-report with the full findings. The HTML report is the output. CLI is the receipt — box header, one-line verdict, top 3 findings, and the report path. Never dump analysis to CLI.

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/echo-interview-mrx3xxhy/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/echo-interview-mrx3xxhy' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/echo-interview-mrx3xxhy/download' --output '.skill-downloads/echo-interview-mrx3xxhy/SKILL.md.part' && mv '.skill-downloads/echo-interview-mrx3xxhy/SKILL.md.part' '.skill-downloads/echo-interview-mrx3xxhy/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

Tools declared by the author (check availability in your agent): Read, Write, Edit, Bash, Glob, Grep, WebFetch, WebSearch, Task, TodoWrite, AskUserQuestion

No recognized prerequisites section in this file. This does not mean it is self-contained: libraries, tools and access requirements may be mentioned elsewhere in the content or source repository.

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.

Claude Code
test -f '.skill-downloads/echo-interview-mrx3xxhy/SKILL.md' && test -s '.skill-downloads/echo-interview-mrx3xxhy/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/echo-interview' && cp -R '.skill-downloads/echo-interview-mrx3xxhy' '.claude/skills/echo-interview'

OpenSkills

OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.

Official OpenSkills installation
openskills install './.skill-downloads/echo-interview-mrx3xxhy'

openskills read 'echo-interview-mrx3xxhy'

Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.

For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.

openskills sync

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/echo-interview-mrx3xxhy/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills