alenazaharovaux/share/pmf

Claude Code and agent skill by alenazaharovaux/share

Trust tier 2
  • community
LLM review pending
Source check pending

Checking that the SKILL.md file is still in the repository.

Full product-market fit cycle for one product — from initial hypothesis to post-launch metrics. 10 stages: setup → hypothesis (7 dimensions) → market research → risk synthesis → DVF validation → interview prep → field → interview synthesis → MVP → metrics (Sean Ellis + retention + Levels of PMF) → iterate. Resumes between sessions based on the project folder state. Bilingual (English + Russian) — picks the language during first-run setup. TRIGGER on ANY: - "do PMF for [product]" / "I need produ…

Install

npx vskill@latest install alenazaharovaux/share/pmf

SKILL.md

PMF — Product-Market Fit Engine

This skill takes a product through the full product-market fit cycle. One skill = one orchestrator, not a bundle. All 10 stages live inside it. The skill figures out which stage the project is in and proposes the next step.

A PMF cycle takes months. The skill accepts that pace: it resumes between sessions, remembers where you left off, and does not rush.


⛔ Critical rules

  1. No subagents for research. Stage 2 (market research) is done sequentially in the main session via Exa/WebSearch. The user sees every search and every result and can intervene. Researching analogs is substantive work, not "file lookup."
  1. The PMF projects folder is configurable. Stored in ~/.claude/skills/pmf/config.md. Default: ~/pmf-projects/. The skill writes everything for a given product into <projects_path>/<product-slug>/. Not CWD, not somewhere else.
  1. Confidence can decrease. That is normal. If the confidence in narrative-v2 is lower than v1 — the data is contradicting the hypothesis, and that is a useful signal, not a reason to inflate the number.
  1. Terminology: "assumption" (not "hypothesis") in Stage 4. In stages 1–3 — "hypothesis." In stage 4 with DVF — only "assumption." This is methodologically important (David Bland).
  1. Tone is calm. No exclamation marks, no dramatization. The user is doing PMF not to be cheered on, but to understand what works and what does not.
  1. Stages 6 (interviews) and 8 (MVP) are outside the skill. The skill prepares the guide / gives metrics instructions, but does NOT try to "conduct interviews" or "launch an MVP." This is the user's work in the real world, weeks or months.

Step 0 — Configuration (first run)

On every trigger, before doing anything else, the skill reads its config:

~/.claude/skills/pmf/config.md

Expected format:

language: en # or "ru"
projects_path: ~/pmf-projects
If config.md does not exist OR is missing values

Ask the user, one question at a time. Each question can be skipped (the default is used).

Question 1 — Language:

"What language should we work in for this skill — English or Russian? (default: English)"
English: skill communicates in English, references loaded from references/en/.
Russian / Русский: skill communicates in Russian, references loaded from references/ru/.

Question 2 — Projects path:

"Where do you want PMF projects stored? (default: ~/pmf-projects/)"
Examples:
- ~/pmf-projects/ (default — home folder)
- ~/Documents/PMF/
- D:/Work/PMF/ (Windows)
- /Users/me/Projects/PMF/ (macOS)
The skill creates one subfolder per product inside this path.

Save the config: After both answers (or skips → defaults), write ~/.claude/skills/pmf/config.md with the chosen values. Confirm to the user: "Config saved. Default language is <lang>, projects folder is <path>. You can change this anytime by editing the file."

If config.md exists

Read it. Use those values for the rest of the session. All references must be loaded from `references/<language>/...`. All communication happens in the configured language.


Step 1 — Auto-start (what the skill does first on every trigger after config)

1a. Read the listing of the projects folder
ls <projects_path>/
  • Folder does not exist → create it (mkdir)
  • Folder is empty → no active projects
  • Subfolders exist → each = one active PMF project (product slug)
1b. Parse the user's intent
Trigger phraseAction
"Do PMF for [new name]" / "new PMF for [X]"Create project, go to Stage 0 (Setup)
"Do PMF" (no name)Ask for product name and slug
"Continue PMF" (no name)0 projects → offer to create; 1 → continue; >1 → show list, ask which
"PMF [name]" / "continue PMF [name]"Find project [name] in the listing, continue from its current stage. If not found — show what exists, offer to create
"What stage" / "show my PMF projects" / "PMF status"Show table: project \stage \last updated \next action. Do not move forward, wait for user choice
1c. Determine the stage of the chosen project from folder contents

Check files in priority order (later stages first):

File foundStage
metrics-dashboard.mdStage 9 done (or Stage 10 if iteration-changelog.md exists)
interview-synthesis.md + narrative-v3.mdStage 7 done → waiting for Stage 8 (MVP launch) or jump to Stage 9
interviews/notes/*.md ≥ 1 fileStage 6 (field in progress or done), ready for Stage 7
interview-guide.mdStage 5 done → waiting for Stage 6 (field)
assumptions-map.mdStage 4 done, ready for Stage 5
risk-prioritization.md + narrative-v2.mdStage 3 done, ready for Stage 4
market-research.mdStage 2 done, ready for Stage 3
narrative-v1.mdStage 1 done, ready for Stage 2
00_setup.mdStage 0 done, ready for Stage 1
Folder empty or just createdStage 0 (setup needed)
1d. Show status and ask for the next action

Output format:

📍 PMF project: <product-slug>
Product type: <type> | Context: <org>
Current stage: Stage N — <name>
Ready artifacts: <list of .md files>
Last updated: <file date>
Next step: Stage N+1 — <name>
What it is: <one-line stage goal>
Artifact: <filename>
Move on to Stage N+1? Or go back to stage X?

After the user agrees — move to the chosen stage.


Step 2 — Setup (Stage 0)

When it runs: auto-start found an empty folder or an explicit "new PMF for X." If 00_setup.md already exists in the folder — Stage 0 is skipped.

Goal: collect basic product and team context before working on the hypothesis. Short stage (10–20 minutes).

What is collected:

  1. Product name and folder slug
  2. Product type (B2C / B2B / Marketplace / DTC / Services / Internal / Other)
  3. Organizational context (Zero-to-one / Established / Extension)
  4. Team Pre-Flight Check (3 questions: Founder-Market Fit, Skill gaps, Conviction-flexibility) → risk flag

Artifact: 00_setup.md in the project folder.

The Pre-Flight Check happens HERE, not in Stage 1. It is about the team, not the product. Stage 1 will read the finished results from 00_setup.md and copy them into the narrative.

Detailed logic, the `00_setup.md` template, quality gates, common pitfalls: references/<lang>/stage-0-setup.md.


Pipeline overview — 10 stages

#StageGoalArtifact
0SetupProduct context (type, org, team)00_setup.md
1HypothesisHypothesis across 7 dimensions + confidence scoresnarrative-v1.md
2Market researchAnalogs (successes) + antilogs (failures) per dimensionmarket-research.md
3SynthesisRisk scoring + cross-fit + narrative V2risk-prioritization.md, narrative-v2.md
4Validate (DVF)9 assumptions from the riskiest dimension + 2×2 map + experimentassumptions-map.md, experiment-brief.md
5Interview prepGuide for in-depth interviewsinterview-guide.md
6[Field]Outside the skill. The user runs 15–20 interviews.interviews/notes/*.md
7Interview synthesisPatterns from notes → narrative V3interview-synthesis.md, narrative-v3.md
8[MVP launch]Outside the skill. The user launches the MVP.—
9MetricsSean Ellis + retention cohorts + Levels of PMFmetrics-dashboard.md
10IterateDecision: continue / iterate / pivotiteration-changelog.md

For the stage-to-stage transition map, see references/<lang>/pipeline-overview.md.


Step 3 — Hypothesis (Stage 1)

Goal: turn the product idea into a structured hypothesis across 7 PMF dimensions with honest confidence scores.

7 dimensions (detail — references/<lang>/7-dimensions.md):

  1. Problem to Solve — outcome-motivation gap
  2. Target Audience — 2-3 defining attributes, Now vs Future segments
  3. Value Proposition — tagline + 3-5 benefits (not features)
  4. Competitive Advantage — one of the 7 Powers (Helmer)
  5. Growth Strategy — short-term traction (first 1K) ≠ long-term sustainable (100K+)
  6. Business Model — equation, pricing, LTV, cost structure
  7. Timing / Why Now — what changed, why now in particular

Before dimensions: Team Pre-Flight Check — 3 questions (references/<lang>/stage-1-hypothesis.md).

After dimensions: confidence assessment 1–10 for each + identification of the riskiest.

Artifact: narrative-v1.md from the template references/<lang>/template-narrative.md (structured) or references/<lang>/template-narrative-prose.md (prose, for stakeholders).

Detailed stage logic: references/<lang>/stage-1-hypothesis.md.


Step 4 — Market Research (Stage 2)

Goal: find analogs (successful companies validating the dimension) and antilogs (known failures on the dimension) for each of the 7 dimensions.

Method: sequentially via Exa (preferred) or WebSearch (fallback). Per dimension — 3-5 analogs and 2-3 antilogs. Total ~14-21 searches.

Adaptive threshold:

  • Mature markets (SaaS, e-commerce, marketplace): analog = $10M+ revenue
  • Emerging markets (AI, web3, new categories): analog = $1M+ ARR or 10K+ active users

⛔ Do NOT use the Agent tool / subagents. Search is done by direct calls to mcp__exa__web_search_exa or WebSearch in the main session. This is a hard rule.

Artifact: market-research.md from the template references/<lang>/template-market-research.md.

If context overflows: split into 2 passes (dim 1-4 in one session, dim 5-7 in the next). This is normal for a months-long cycle.

Detailed logic and search strategies per dimension: references/<lang>/stage-2-research.md.


Step 5 — Synthesis (Stage 3)

Goal: condense the research into risk-prioritization, identify the riskiest dimension, update the narrative to V2.

Risk scoring formula:

Risk Score = (10 - Evidence Score) × Failure Impact

Failure Impact defaults (can be recalibrated for the specific product):

DimensionDefault Impact
Problem to Solve4 (Critical)
Target Audience3 (High)
Value Proposition2 (Medium)
Competitive Advantage2 (Medium)
Growth Strategy3 (High)
Business Model4 (Critical)
Timing / Why Now3 (High)

Cross-fit analysis (mandatory):

  • Channel-Model Fit — does the growth channel fit the business model? (example conflict: enterprise sales + freemium pricing)
  • Model-Market Fit — does the business model fit the target audience? (example conflict: subscription for an audience that does not pay for software)

Artifacts:

  • risk-prioritization.md (from the template references/<lang>/template-risk-prioritization.md)
  • narrative-v2.md (an update of V1 based on research data, with an explicit version history changelog)

Decision tree after synthesis:

  • Overall confidence > 7 + a riskiest dimension exists → Stage 4 (validate the riskiest) or jump to Stage 5 (interviews)
  • Overall confidence 4–7 → Stage 4 is mandatory
  • Overall confidence < 4 → return to Stage 1 (rethink hypothesis) or do more research

Detailed logic: references/<lang>/stage-3-synthesis.md.


Step 6 — Validate / DVF (Stage 4)

Goal: take the riskiest dimension, decompose it into 9 assumptions across DVF (Desirability × Viability × Feasibility), prioritize via a 2×2 (importance × evidence), and design an experiment for the riskiest assumption.

This is the start of the file. Read the full SKILL.md on GitHub.

Security

  • Security scanPassed, 100 of 100Pattern checks on the skill's files.
  • Model reviewNot runA model review is scheduled for the next rescan.

Quality evaluation

  • Task evaluationNot runNo evaluation yet. Run one in Skill Studio.

Source

Popularity

7-day trend score
0

Not refreshed yet.

Works with

Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.

  • Claude Code
  • Cursor
  • GitHub Copilot
  • Windsurf
  • Codex
  • Gemini CLI
  • Cline
  • Amp
  • Roo Code
  • Goose
  • Continue
  • Kilo Code
  • Junie
  • Trae
  • OpenHands
  • Qwen Code
  • AI Agent
  • Tabnine Chat
  • Sourcegraph Cody
  • Amazon Q
  • Firebase Genkit
  • Sweep
  • Devin
  • Phind
  • Mentat
  • Claude Desktop
  • Aider
  • GPT Pilot
  • Plandex
  • bolt.new
  • v0
  • Replit Agent
  • Anse
  • TypingMind
  • BetterChatGPT
  • LibreChat
  • Warp AI
  • Pieces
  • Fig AI
Embed badge
vskill VERIFIED badge
[![vskill VERIFIED](https://verified-skill.com/api/v1/skills/alenazaharovaux/share/pmf/badge)](https://verified-skill.com/skills/alenazaharovaux/share/pmf)

Something wrong with this skill or its page? Tell us.