From plan-pmf
Builds MVP PRD by reverse-engineering features from core aha moment, grounded in ICP pains and value prop. Use for MVP scoping, PRD, or feature definition.
npx claudepluginhub adidacta/pmf-detective --plugin pmf-detectiveThis skill is limited to using the following tools:
You help product builders create a high-level MVP PRD that an AI coding agent can use as project context. The PRD cascades from the core aha moment down to features and requirements — grounding every line in "why does this matter to the ICP?"
Scopes MVPs by defining core hypotheses, triaging features with effort/impact scoring, outlining 2-week sprints, and setting success criteria. Activates on 'MVP' or scoping requests.
Scopes MVPs for indie founders using Hexa's methodology: clarifies problems with interviews, defines core hypotheses, prioritizes 3-5 stable features, applies anti-scope creep checklists for 3-month launches.
Guides users sequentially through PMF context layer: ICP, value proposition, MVP PRD, validation plan, execution. Triggered by /plan-pmf or full context needs.
Share bugs, ideas, or general feedback.
You help product builders create a high-level MVP PRD that an AI coding agent can use as project context. The PRD cascades from the core aha moment down to features and requirements — grounding every line in "why does this matter to the ICP?"
The aha moment is the north star. Everything in the MVP exists to deliver that moment.
The cascade:
The output is a PRD file that gives an AI agent full context: what to build, why each piece matters, what's out of scope, and how to know it's working.
Check if pmf/icp.md and pmf/value-prop.md exist. Both are required.
If any are missing, inform the user:
To define your MVP scope, I need your PMF context layer.
Missing:
[ ] pmf/icp.md
[✓] pmf/value-prop.md
Use /plan-pmf to build your context layer first.
Read pmf/icp.md and pmf/value-prop.md. Extract:
Display the value proposition back to the user as the anchor for everything that follows:
┌───────────────────────────────────────────────────────────────┐
│ YOUR VALUE PROPOSITION │
├───────────────────────────────────────────────────────────────┤
│ │
│ ICP: [Hypothesis name] │
│ Promise: "[The full value prop message]" │
│ │
│ Now let's find the moment your ICP feels this │
│ promise was delivered. │
│ │
└───────────────────────────────────────────────────────────────┘
The aha moment is the single experience where value clicks. It's not a feature — it's the moment the user's perspective shifts. The goal of this phase is to explore widely before narrowing down.
What is an aha moment?
Q1: Open exploration. Repeat the value proposition and ask the user to describe the moment:
Use AskUserQuestion: "Your promise to [ICP identity] is: '[value prop message]'. Describe the moment they first feel this promise was delivered — what are they doing, and what shifts?"
Options: Generate 2-3 seed aha moments grounded in the ICP's pain and the Magnet. Each should be a specific, concrete user experience — not a feature. Always include a "Something else" option so the user can propose their own.
Q2-Q3: Keep diverging. After the user picks or describes one, don't converge yet. Ask: "That's one strong moment. What's another way they might feel the promise was delivered?"
Repeat until you have 3-5 candidate aha moments on the table. 3 is enough. Don't push past 5. Each should be distinct — different aspects of the product or different stages of the user journey.
Display the full list:
We've explored [N] possible aha moments:
1. [Name] — [One-line description]
2. [Name] — [One-line description]
3. [Name] — [One-line description]
Now help the user narrow down. The right aha moment for an MVP is:
Q4: Use AskUserQuestion: "Which of these aha moments should drive your MVP? Pick the one that hits earliest, feels strongest, and you can demo."
Present all candidates with a brief note on timing (first use vs. accumulated use) for each.
Q5 (optional): If the user is torn between two, briefly discuss the tradeoffs (timing, buildability, emotional impact) and ask them to commit. The goal is ONE clear aha moment before moving on.
Now work backwards from the aha moment — like Sherlock Holmes deducing what must be true.
The logic: If the aha moment is the destination, what had to happen right before it? And before that? Keep tracing back to the user's starting point. That chain of steps is the minimum the product must deliver.
Important: Go one step at a time. Don't present the whole chain at once. Walk backwards with the user.
Q6: Start from the aha moment: "For [ICP identity] to experience [aha moment], what has to happen right before that moment?"
Use AskUserQuestion with 2-3 options for the immediately preceding step. Confirm with the user.
Q7-Q8: Keep stepping back: "And for [previous step] to happen, what has to happen before that?"
Continue until you reach the user's starting point (opens the app / lands on the page).
Q9: Present the complete chain for confirmation:
Path to Aha:
1. [Start] → 2. [Step] → 3. [Step] → ... → N. [Aha moment]
Use AskUserQuestion: "Here's the full path. Does it look right?"
Options: "Looks right" / "Something's missing" / "Something doesn't belong" / "Not sure (needs research)"
Adjust if needed. The final chain becomes the MVP scope.
Now cascade each step into features and high-level requirements. This is what turns the path from a user journey into a buildable spec.
The cascade:
Aha Moment (why)
└── Step (what has to happen)
└── Feature (what the product does)
└── Requirement (what the feature must deliver)
For each step in the path, generate:
Good requirement: "Must extract YouTube video ID from full URLs, short URLs (youtu.be), and URLs with timestamps" Bad requirement: "Use a regex to parse the URL" (implementation detail) Bad requirement: "Handle URLs" (too vague)
Walk through each step with the user. For each step, present the proposed features and requirements, then confirm:
Use AskUserQuestion: "Here are the features needed for step [N]: '[step name]'. Does this look right?"
Options: "Looks right" / "Something's missing" / "Too much — simplify" / "Not sure (needs research)"
Adjust based on feedback before moving to the next step.
Keep it tight. The goal is the minimum set of features and requirements to deliver each step. If a requirement isn't directly needed for the aha moment path, it doesn't belong here.
Equally important as what's in scope: what's NOT in v1.
Based on the ICP's broader wants (from icp.md) and the Magnet, generate 3-4 things that might seem important but should wait for v2+.
Use AskUserQuestion: "Which of these should be explicitly OUT of scope for v1?" (multiSelect: true)
Include "Not sure (needs research)" as one of the options — if selected, add the scope question to Open Questions.
Frame it as: "Saying 'no' to these now means you ship faster and learn sooner."
How will you know the aha moment has landed? This should be an observable user behavior, not a metric.
Generate 2-3 behavioral signals based on the aha moment.
Use AskUserQuestion: "How will you know a user has experienced the aha moment? What will they do?"
Examples of good success criteria:
Save to pmf/mvp.md with the following structure:
# MVP PRD — [Product Name]
<!-- AI_INSTRUCTION: Use this file as project context for building the MVP.
Everything exists to deliver the aha moment. Features and requirements
are scoped to the Path to Aha — anything not listed here is out of scope. -->
## The Aha Moment
[Name and description]
[Why this moment — timing, emotional impact]
## Path to Aha
### Step 1: [Step name]
[What happens from the user's perspective]
**Features:**
**[Feature name]**
- [Requirement]
- [Requirement]
**[Feature name]**
- [Requirement]
- [Requirement]
### Step 2: [Step name]
...
(repeat for each step)
## In Scope for v1 (Beyond Path to Aha)
[Additional features that support the ICP need but aren't on the critical path]
## Out of Scope (v2+)
[Explicitly deferred items with brief rationale]
## Success Criteria
[Observable user behavior that proves the aha moment landed]
## Open Questions
[Unresolved decisions]
Show only at the END:
┌───────────────────────────────────────────────────────────────┐
│ MVP PRD COMPLETE │
├───────────────────────────────────────────────────────────────┤
│ │
│ Aha Moment: [The key experience] │
│ │
│ Path to Aha: [N] steps │
│ Features: [N] features across all steps │
│ Requirements: [N] total requirements │
│ │
│ Out of Scope: [N] items deferred to v2+ │
│ Success: [Behavioral signal] │
│ │
│ Saved to: pmf/mvp.md │
│ │
└───────────────────────────────────────────────────────────────┘
If pmf/mvp.md already exists:
When user says "not sure" or wants research:
The MVP PRD file is designed as project context for AI coding agents. It helps them:
Created by Adi Shmorak, The P/MF Detective Star on GitHub if this helped | Feedback: adi@adidacta.com