validate-idea
Skill7 starsChanged 17 days agoMITView on GitHub
Intake for the Validator pack. Turns a startup idea into validator/idea.json: the target user, the problem hypothesis, the search terms and competitor apps to mine, and the pass/fail bar, which is set before any data comes in and never moved after. Use when the user says "validate my idea", "is this idea any good", "test this startup idea", "should I build this", or starts the Validator pack.
23 other projects use a version of this.
Adopted by
Most recently taken up by
- insight68/Skillstheir own version, first seen Nov 8, 2026
- lalulali/vespyrtheir own version, first seen Nov 6, 2026
- alexjmiller5/agent-config-publictheir own version, first seen Oct 15, 2026
- scaccogatto/minimalist-entrepreneurtheir own version, first seen Oct 15, 2026
- menkesu/awesome-pm-skillstheir own version, first seen Oct 13, 2026
- sendaifun/solana-newtheir own version, first seen Oct 9, 2026
Used with
Projects with it also use company-values, find-community and 8 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
insight68Skillcompany-values
Help define company values and culture for a minimalist business. Use when someone is setting up their company culture, preparing to hire, or wanting to codify what their company stands for.
Also in 6 projects that use this
insight68Skillfind-community
Help identify and evaluate communities to build a minimalist business around. Use when someone is looking for a business idea, trying to find their community, or wondering where to start as an entrepreneur.
Also in 6 projects that use this
slavingiaSkillgrow-sustainably
Evaluate business decisions through the lens of sustainable, profitable growth. Use when someone is making decisions about spending, hiring, fundraising, or scaling their business.
Also in 6 projects that use this
slavingiaSkillprocessize
Turn a product idea into a manual-first process you can start delivering today. Use when you have an idea and want to figure out how to deliver value by hand before writing any code.
Also in 6 projects that use this
MicrosoftSkilllaunch
Launch and automate VS Code Insiders with the Copilot Chat extension using @playwright/cli via Chrome DevTools Protocol. Use when you need to interact with the VS Code UI, automate the chat panel, test the extension UI, or take screenshots. Triggers include 'automate VS Code', 'interact with chat', 'test the UI', 'take a screenshot', 'launch with debugging'.
Also in 3 projects that use this
- +4 more from insight68
- +1 more from slavingia
Other versions23 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 23
- slavingia/skills★ 11ksame name
- emotixco/claude-skills-founder★ 796same name
- me2resh/apexyard★ 542same name
- menkesu/awesome-pm-skills★ 441same name
- sendaifun/solana-new★ 178same name
- konglong87/superPM★ 84same name
- keeea/minimalist-entrepreneur-skills★ 19same name
- ariadoss/superskills★ 12same name
- lalulali/vespyr★ 11same name
- Latifox/find-me-saas★ 10same name
13 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository10 other files it gives its agents.
- validate-clusterSkill
- validate-competitorsSkill
- validate-interviewSkill
- validate-mineSkill
- validate-painSkill
- validate-prospectsSkill
- validate-segmentSkill
- validate-smokeSkill
- validate-verdictSkill
- validate-wtpSkill
The file
We split this skill into the rules it gives an agent
8 rules. 0 are common, 1 is distinctive, and 7 are very specific to this project.
0
Common
Most of the 20 edited versions we read keep these.
1
Distinctive
This author's own choices. Worth a look.
7
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 34
If $ARGUMENTS is empty, ask for the idea in one line.
- Distinctive: line 44
If the user already knows this from their own customers, use it and say which parts came from them and which are your guesses.
- Very specific: line 53
If the user has no price in mind, leave a range and say /validate-wtp will test it.
- Very specific: line 58
Write search.terms the way a frustrated person would type a post, not the way a landing page talks.
- Very specific: line 95
Write validator/idea.json in the shape of the example.
- Very specific: line 96
Run IDEA check validator/idea.json and fix everything it lists.
- Very specific: line 101
After the lock, terms, subreddits and apps can still change freely.
- Very specific: line 104
Never edit idea.lock by hand, and never move the bar without the user asking.
“Common” is measured: kept by at least 6 in 10 of the 20 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
validate-idea
The first skill in the pack. It does one job: pin the idea down tightly enough that the rest of the pack can test it, and set the pass/fail bar before anyone has seen a single complaint. People who set the bar after seeing the data always find a reason to pass.
What the user typed after /validate-idea: $ARGUMENTS
The tool
python3 "${CLAUDE_SKILL_DIR}/idea.py" check validator/idea.json
python3 "${CLAUDE_SKILL_DIR}/idea.py" lock validator/idea.jsonBelow, IDEA means python3 "${CLAUDE_SKILL_DIR}/idea.py". If the path is not
expanded, use the base directory Claude Code printed for this skill. The shape
of the file is in ${CLAUDE_SKILL_DIR}/idea.example.json.
Step 1: the idea, the person, the problem
If $ARGUMENTS is empty, ask for the idea in one line. Then ask, one question at
a time, only for what is still missing:
- Who has the problem. Push for a role and a context, not a demographic. "Small businesses" is too wide. "Solo recruiters who work leads over email, LinkedIn and WhatsApp" is something you can search for.
- What goes wrong for them today, in their words. A missed reply, a lost hour, a bill they hate. Not the absence of your product.
- What they do about it now. The workaround is the best clue there is.
If the user already knows this from their own customers, use it and say which parts came from them and which are your guesses.
Step 2: the hypothesis
One sentence the data can prove wrong:
[who] struggle with [problem] and would pay [rough price] for [outcome].
If the user has no price in mind, leave a range and say /validate-wtp will
test it.
Step 3: what to search for
Write search.terms the way a frustrated person would type a post, not the way
a landing page talks. Three to eight terms. Quote exact phrases:
"unified inbox", "too many messaging apps". A term without quotes matches
posts that contain every word, in any order.
Good terms name the pain or the workaround: "missed a message", "spreadsheet
to track", "switched from <competitor>". Bad terms are your product category
in marketing language, because nobody complains in that voice.
search.subreddits (optional): communities where this person hangs out.
search.competitor_apps (optional): apps people already use for this. Look up
each App Store id with the miner's search:
python3 "${CLAUDE_SKILL_DIR}/../validate-mine/sources.py" find-app "<app name>"Pick the right one from the list with the user. A wrong id mines the wrong app.
Step 4: the bar
Explain this once: the bar is what the evidence must show for the idea to pass, and it is set now because nobody judges fairly after seeing the data.
bar.evidence is what the mined data has to show:
min_complaints: distinct complaints about this problem. Default 100.min_money_signals: complaints that mention paying, a price, or switching tools. Default 10. This is the number that matters most.max_age_months: only count complaints this recent. Default 24.
bar.real_world is what a real test has to show later (/validate-smoke
plans it). Ask the user, and suggest numbers if they have none, for example
"200 waitlist signups from strangers" and "10 paid, refundable preorders".
Step 5: write, check, lock
- Write
validator/idea.jsonin the shape of the example. - Run
IDEA check validator/idea.jsonand fix everything it lists. - Show the user the idea, the hypothesis, the terms and the bar in a few lines. Let them correct it.
- Once they agree, run
IDEA lock validator/idea.json.
After the lock, terms, subreddits and apps can still change freely. The bar
cannot. If the user later wants to move it, run IDEA lock ... --reason "<why>".
The move is kept in validator/idea.lock, and /validate-verdict reports it.
Never edit idea.lock by hand, and never move the bar without the user asking.
Output
validator/idea.json, validator/idea.lock.
Next: /validate-mine reads the search terms and competitor apps.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

