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

MITAuto-check: notesProduct & Project Management

Install Echo Interview

skills CLI
$ npx skills add jeremylongshore/tons-of-skills-marketplace --skill echo-interview -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install jeremylongshore/tons-of-skills-marketplace echo-interview --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/jeremylongshore/tons-of-skills-marketplace.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/ai-agency/tonone/skills/echo-interview .claude/skills/echo-interview && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
echo-interview
GitHub stars
2.8k
Token cost
~2.1k tokens
SKILL.md length
400 words
Files
2
Skills in repo
3,342
Repo updated
First seen
Licence
MIT

At a glance

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

  • Works in 6 steps: Anchor on the Decision → Write the Interview Guide → Classify the Input → …
  • Asked to run a user interview
  • SKILL.md covers Operating Principle, Mode A: Build the Interview…, Mode B: Synthesize Interview… and Delivery
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Echo Interview is an agent skill from jeremylongshore/tons-of-skills-marketplace. 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".

Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `.claude-plugin/plugin.json`).

It sits in Product & Project Management, covering User research and User stories. The repository describes itself as: Model-agnostic agent-skills platform with a harness-free canonical layer, verified adapters, and the ccpi package manager. Explore at tonsofskills.com. The licence is MIT.

When your agent uses it

  • Asked to run a user interview
  • Synthesize these interview notes
  • What do users actually want
  • Build a persona from this feedback

Example prompts

  • “run a user interview”
  • “synthesize these interview notes”
  • “what do users actually want”
  • “/echo-interview”

Requirements

  • Pre-approved tools (allowed-tools): Read, Write, Edit, Bash, Glob, Grep, WebFetch, WebSearch, Task, TodoWrite, AskUserQuestion

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Anchor on the Decision
  2. Write the Interview Guide
  3. Classify the Input
  4. Extract the Job Stories
  5. Find the Pattern
  6. Produce the Synthesis Report

What it can do on your machine

Read from SKILL.md and the folder at commit 80f86df. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves these tools, so the agent can use them without asking each time:

    • Read
    • Write
    • Edit
    • Bash
    • Glob
    • Grep
    • WebFetch
    • WebSearch
    • Task
    • TodoWrite

    …and 1 more on the same allowed-tools line.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Echo Interview loads about 2.1k tokens when it runs. Until then it costs about 86 tokens; SKILL.md has 400 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~86
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NotePre-approves every shell command (allowed-tools: Bash)SKILL.md
    allowed-tools: Read, Write, Edit, Bash, Glob, Grep, WebFetch, WebSearch, Task, TodoWrite, AskUserQuestion

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from jeremylongshore/tons-of-skills-marketplace at commit 80f86df, republished under its MIT licence (© jeremylongshore). 400 words, ~2,053 tokens.

Download SKILL.mdSave it as .claude/skills/echo-interview/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
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.

Show full SKILL.md (164 more words)Show less
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.

© jeremylongshore, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in plugins/ai-agency/tonone/skills/echo-interview of jeremylongshore/tons-of-skills-marketplace.

  • SKILL.md
  • .claude-plugin/plugin.json

Open the folder on GitHubat commit 80f86df

Compare with similar skills

Echo Interview next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Echo Interview compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Echo Interview this skilljeremylongshore/tons-of-skills-marketplace2.8k—~2.1kAutomated safety check: NotesMIT
Design Sprintwondelai/skills2.4k—~3.8kAutomated safety check: PassMIT
Discovery Researchandreaskelm/pm-brain234—~1.2kAutomated safety check: PassCustom licence
Customer Interviewsmenkesu/awesome-pm-skills433—~4.4kAutomated safety check: PassCustom licence
Interview Scriptkillvxk/pm-skills-zh167—~547Automated safety check: PassMIT
Building ProductGTM-Strategist/gtm-strategist-skills263—~5.8kAutomated safety check: PassMIT

Similar skills

  • Design Sprint

    wondelai/skills

    Run a structured 5-day process to prototype, test, and validate product ideas with real users.

    2.4k GitHub stars~3.8k tokensUpdated 29 days ago
    Product & Project ManagementAuto-check passed
  • Discovery Research

    andreaskelm/pm-brain

    Support discovery and research workflows using PM Brain’s discovery frameworks (research interviews, continuous discovery, JTBD, segmentation, opportunity assessment, idea validation…

    234 GitHub stars~1.2k tokensUpdated 3 mo ago
    Product & Project ManagementAuto-check passed
  • Customer Interviews

    menkesu/awesome-pm-skills

    Designs customer interviews and turns the transcripts into decisions.

    433 GitHub stars~4.4k tokensUpdated 3 days ago
    Product & Project ManagementAuto-check passed
  • Interview Script

    killvxk/pm-skills-zh

    创建结构化的用户访谈脚本,包含 JTBD(用户待办任务)探测问题、破冰环节、核心探索及收尾部分。遵循"老妈测试"原则——不引导、不推销,聚焦过去的实际行为。适用于准备用户访谈、创建访谈指南或规划探索性研究时使用。

    167 GitHub stars~547 tokensUpdated 6 mo ago
    Product & Project ManagementAuto-check passed
  • Building Product

    GTM-Strategist/gtm-strategist-skills

    A skill your agent uses when the user needs to define their MVP, create a product roadmap, plan metrics and tracking, refine their value proposition with JTBD, or run usability tests.

    263 GitHub stars~5.8k tokensUpdated 2 mo ago
    Product & Project ManagementAuto-check passed
  • Summarize Interview

    phuryn/pm-skills

    Summarize a customer interview transcript into a structured template with JTBD, satisfaction signals, and action items.

    27k GitHub stars~508 tokensUpdated 25 days ago
    Product & Project ManagementAuto-check passed

More from jeremylongshore/tons-of-skills-marketplace

All 3,342 skills in this repo
  • Performing Security Code Review

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to conduct a security-focused code review using the security-agent plugin.

    2.8k GitHub starsUsed in 2 repos~1.3k tokens
    Auto-check: notes
  • Adapting Transfer Learning Models

    jeremylongshore/tons-of-skills-marketplace

    Build this skill automates the adaptation of pre-trained machine learning models using transfer learning techniques.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Agent Context Loader

    jeremylongshore/tons-of-skills-marketplace

    Execute proactive auto-loading: automatically detects and loads agents.md files.

    2.8k GitHub stars~1.1k tokensUpdated today
    Auto-check passed
  • Aggregating Performance Metrics

    jeremylongshore/tons-of-skills-marketplace

    Aggregate and centralize performance metrics from applications, systems, databases, caches, and services.

    2.8k GitHub stars~1.2k tokensUpdated today
    Auto-check passed
  • Analyzing Capacity Planning

    jeremylongshore/tons-of-skills-marketplace

    Execute this skill enables AI assistant to analyze capacity requirements and plan for future growth.

    2.8k GitHub stars~947 tokensUpdated today
    Auto-check passed
  • Analyzing Database Indexes

    jeremylongshore/tons-of-skills-marketplace

    Process use when you need to work with database indexing. An agent skill from jeremylongshore/tons-of-skills-marketplace.

    2.8k GitHub stars~2k tokensUpdated today
    Auto-check passed

Questions about Echo Interview

What does Echo Interview do?

Run a user interview — produce an interview guide and synthesize the output into an actionable insight report. Echo Interview is an agent skill from jeremylongshore/tons-of-skills-marketplace. Run a user interview — produce an interview guide and synthesize the output into an actionable insight report.

When should I use Echo Interview?

Echo Interview fits situations like: asked to run a user interview; synthesize these interview notes; what do users actually want; build a persona from this feedback.

How do I install Echo Interview in Claude Code?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill echo-interview -a claude-code`. Or copy the skill folder (plugins/ai-agency/tonone/skills/echo-interview in jeremylongshore/tons-of-skills-marketplace) into .claude/skills/echo-interview in your project. Claude Code loads it when a task matches its description.

How do I install Echo Interview in Codex?

Run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill echo-interview -a codex`. Or copy the skill folder (plugins/ai-agency/tonone/skills/echo-interview in jeremylongshore/tons-of-skills-marketplace) into .agents/skills/echo-interview in your project. Codex loads it when a task matches its description.

Can I use Echo Interview in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add jeremylongshore/tons-of-skills-marketplace --skill echo-interview -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/echo-interview, .gemini/skills/echo-interview, .github/skills/echo-interview and .opencode/skills/echo-interview in your project.

What does Echo Interview need to run?

SKILL.md names no scripts, command-line tools or credentials: Echo Interview is instructions for the agent only. Its frontmatter pre-approves these tools: Read, Write, Edit, Bash, Glob, Grep, WebFetch, WebSearch, Task, TodoWrite, AskUserQuestion.

Does Echo Interview access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Echo Interview safe to install?

Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Echo Interview use?

Echo Interview is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Echo Interview use?

About 2.1k tokens (SKILL.md is roughly 8.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Echo Interview?

Skills that share tags, products or a category with Echo Interview: Design Sprint (wondelai/skills, 2.4k stars), Discovery Research (andreaskelm/pm-brain, 234 stars), Customer Interviews (menkesu/awesome-pm-skills, 433 stars) and Interview Script (killvxk/pm-skills-zh, 167 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Echo Interview?

jeremylongshore (a GitHub user) maintains it in jeremylongshore/tons-of-skills-marketplace, which has 2,825 GitHub stars. The repository holds 3,342 skills in this directory. The repository was last updated on October 9, 2026.

Source: jeremylongshore/tons-of-skills-marketplace on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.