validate
Skill1 starsChanged 22 days agoMITView on GitHub
Tests whether people want an idea before the founder builds it. Names the riskiest assumption, designs 1 to 3 cheap demand tests (fake door, waitlist, pre-order, concierge), sets and locks pass and fail lines before anything runs, writes the copy for the waitlist or pre-order page, and later reads the results into a go, pivot or stop call. Writes founder/validate.md. Use it when someone says "how do I validate this", "should I build this", "test demand", "fake door test", "will people pay for this", "make me a waitlist page", "pre-order page", "I'll decide based on signups", "here are my test results", "did my test work", or after market research or customer interviews. Use it for any waitlist or coming-soon page for an unlaunched idea, since that page is a demand test. Never makes up results or social proof.
68 other projects use a version of this.
Adopted by
Most recently taken up by
- aya-taleb/mimic-skillsword for word, first seen Nov 15, 2026
- intelligentcode-ai/skillstheir own version, first seen Nov 15, 2026
- RemiPelloux/kill-my-ideatheir own version, first seen Nov 15, 2026
- SireJeff/k0ntexttheir own version, first seen Nov 15, 2026
- joeldevz/skynex-pitheir own version, first seen Nov 8, 2026
- 99Luuk/Forge-or-Scraptheir own version, first seen Nov 8, 2026
Used with
Projects with it also use policy-init, create and 10 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.
open-coder-aiSkillpolicy-init
Create conformant Chock policy from request. args(request, target_path,
Also in 3 projects that use this
MicrosoftSkillcreate
Also in 4 projects that use this
HermeticOrmusSkillclose
End-of-session ritual. Captures session state, updates auto-memory, writes a session summary, then exits the session cleanly.
Also in 4 projects that use this
Hugging FaceSkillsprint
Work on a batch of GitHub issues in parallel using Agent Teams. Creates one worktree per issue with TDD enforcement, coordinates via a lead agent, then produces stacked PRs.
Also in 4 projects that use this
qtzx06Skilleval
Evaluate trained YOLO model accuracy with mAP metrics and per-class error analysis. Identifies failure cases for targeted improvement. Use after training.
Also in 4 projects that use this
csiddhant796-blipSkillboard
Read, write, and browse the AgentHub message board for agent coordination.
Also in 3 projects that use this
Other versions68 projects use a version of this.
Word for word · 2
- aya-taleb/biz-ready-skills★ 1100% same
- aya-taleb/mimic-skills★ 1100% same
Edited · 0
None found.
Wrote their own version · 66
- iPlug2/iPlug2★ 2.4ksame name
- sirius-db/sirius★ 1.1ksame name
- H-mmer/pentest-agents★ 815same name
- nudgebee/nudgebee★ 520same name
- microsoft/skills-for-copilot-studio★ 486same name
- boshu2/agentops★ 453same name
- scaccogatto/okf-skills★ 444same name
- whawkinsiv/solo-founder-skills★ 260same name
- whawkinsiv/claude-code-skills★ 258same name
- OffchainLabs/arbitrum-docs★ 252same name
56 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 repository5 other files it gives its agents.
- competitorsSkill
- customer-discoverySkill
- founder-contextSkill
- humanizeSkill
- market-researchSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
16 rules. 0 are common, 12 are distinctive, and 4 are very specific to this project.
0
Common
Most of the 56 edited versions we read keep these.
12
Distinctive
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 13
Design: no test yet. Name the risk, design the tests, lock the lines, draft the page.
- Very specific: line 16
Every run writes founder/validate.md, even when the founder only asked for a page or a quick answer.
- Distinctive: line 47
Prefer the test where people give up the most: money beats an email, an email beats a click.
- Distinctive: line 60
No goal or break-even to work from?
- Very specific: line 69
Write them to founder/validate-plan.json (format in the script's header).
- Very specific: line 93
Write the full copy into founder/validate.md under "Page copy", word for word, even if you also write a page file.
- Distinctive: line 96
Use only claims the founder can stand behind today.
- Distinctive: line 100
If asked for fake proof (a made-up join counter, invented testimonials), say no in a line and say why: it misleads the people signing up, …
- Distinctive: line 105
Run the copy through the humanize skill if it's available, and show its score.
- Distinctive: line 110
If the test spends money (ads), show the budget and wait for the founder's yes.
- Distinctive: line 118
Put them in a small results file and run the read:
- Distinctive: line 126
Keep the numbers you report to what the tool printed.
- Distinctive: line 138
If the plan was never locked, or a line moved, say the read is soft.
- Distinctive: line 142
Lines before results: Never set or change pass and fail lines after seeing numbers.
- Distinctive: line 145
Honest tests only: No fake scarcity, no fake reviews, no taking money without a real date and refund.
- Very specific: line 160
After design: "Publish the page, send traffic, and come back with the numbers on <end date>", then name /validate again for the read.
“Common” is measured: kept by at least 6 in 10 of the 56 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
Find out if people will act on the idea, cheaply, before the founder spends months building. Then read the results honestly, against lines set in advance.
Two modes. Pick from the message:
- Design: no test yet. Name the risk, design the tests, lock the lines, draft the page.
- Read results: they have numbers back. Judge them against the locked lines.
Every run writes founder/validate.md, even when the founder only asked for a page or a
quick answer. The page is only useful as a test if its lines are written down first.
What you read and write
- Reads the business file (
founder/context.md, else the active one under~/.founder/). Goals give the numbers the pass lines work back from. If there is none, say so in one line, ask for the goal in the same message, or offer/founder-context. If they're in a hurry, carry on and label your starting lines as assumptions to swap for their numbers. - Reads
founder/market.md("what we don't know yet") andfounder/discovery/evidence.mdif they exist. Their open guesses are the test candidates. - Reads competitor pain points if they exist:
mimic/fixes.md(the recommended angle and its riskiest assumption) andmimic/pain-points.csvfrom mimic-reviews, and the Complaints table infounder/competitors.md. A test of the angle the reviews point to beats one built on guesses. Quote their counts as the tool wrote them. - Writes
founder/validate.md(the plan, the page copy, later the results and the call) andfounder/validate-plan.json(the locked lines the tool reads).
Design
1. Name the riskiest assumption
List the three or four guesses the idea rests on (people have the problem, they'll pay this price, they'll find us through this channel, we can deliver at this cost). Pick the one that, if wrong, kills the idea and has the least evidence so far. Say why in two lines. Testing an easy assumption first feels productive and proves nothing.
2. Design 1 to 3 tests
Pick from fake door, waitlist, pre-order and concierge (references/test-types.md).
Prefer the test where people give up the most: money beats an email, an email beats a
click. For each test write: what it is, who sees it and how they get there, what you
count, the cost in money and time, and the end date.
Three is the most. A founder running five tests at once runs none of them well.
3. Set the pass and fail lines, then lock them
For each test: a pass line (at or above, it's a go signal), a fail line (below, it's a stop signal), a minimum sample and an end date. Between the two lines is "unclear". Work the pass line back from the founder's goal where you can, and show that math.
No goal or break-even to work from? Don't pick a fixed number for them. Offer a range for their kind of business and have the founder pick inside it before the test starts:
- local, food, subscription or product: 10 to 30 paid pre-orders in 14 days
- service or agency: 2 to 5 paid pilots in 30 days
- online product or app: 10 to 50 paid pre-orders or deposits from the page in 14 days
- a rate test (signups per visitor): give the range as rates, with a minimum sample The right bar depends on price, reach and what they can serve, and they know those better. The low end is the least that rules out friends-only demand. Give a fail range under it too.
Write them to founder/validate-plan.json (format in the script's header). With a range,
fill pass_range and fail_range, leave pass_at and fail_below as null, and write
the ranges in validate.md ("Pass: your pick from 10 to 30 paid pre-orders by Nov 20").
Make picking one short reply: suggest one number inside each range with a one-line reason
("I'd start at 15: the low end rules out friends, the top needs reach you haven't shown"),
and say "reply with your two numbers, or 'use yours', and I'll lock them". If the founder
is not there to answer, that reply is task 1 in the plan, before the page goes live. Once
the founder has picked, set pass_at and fail_below and lock them:
python3 <skill-dir>/scripts/testplan.py lock founder/validate-plan.json<skill-dir> is the folder this SKILL.md is in. Locking stamps the date and a
fingerprint, so if anyone moves a line after seeing results, the read flags it. That's
the whole point: lines set after the fact always get set to "it worked".
4. Draft the test page copy
For a fake door, waitlist or pre-order, draft the page copy in founder/validate.md
(and in a page file too, if the founder asked for one):
headline, one line on who it's for, three short lines on what they get, the call to
action, and for a pre-order the price, the delivery date and the refund promise.
- Write the full copy into
founder/validate.mdunder "Page copy", word for word, even if you also write a page file. A pointer ("see index.html") isn't enough: the plan file is what the founder and the next skills read. - Use only claims the founder can stand behind today. No testimonials, logos, user
counts or "as seen in" unless they're real and in the business file's proof. Features
too: describe only what the founder said the product does, and leave
{{what it does, in one line}}where you don't know. - If asked for fake proof (a made-up join counter, invented testimonials), say no in a line and say why: it misleads the people signing up, and it ruins the test, because signups would measure the fake proof, not the idea. Then do the rest of the job.
- A fake door says on the next screen that it isn't built yet. A pre-order states the date and the refund. Taking money for something with no honest date is not a test.
- Run the copy through the humanize skill if it's available, and show its score. If it isn't, check by hand for long dashes and stock phrases, and say so.
- The founder publishes the page. Point them to any page builder or form they already use; don't sign them up for anything that costs money without a yes.
If the test spends money (ads), show the budget and wait for the founder's yes. Default cap $5 for anything this skill runs itself; ad budgets are the founder's call, in their own ad account.
Read results
- Get the numbers from the founder: the count for each test and the denominator (visitors, people asked). Don't estimate missing numbers. If one is missing, ask.
Put them in a small results file and run the read:
python3 <skill-dir>/scripts/testplan.py read founder/validate-plan.json founder/validate-results.jsonThe tool says pass, fail, unclear, too early or no data for each test, and flags any line that moved after the lock. Keep the numbers you report to what the tool printed. Don't mix a test's count with the business goal ("4 pre-orders is 40% of the 10-office goal") unless they measure the same thing.
- Make one call, in
founder/validate.mdunder "Results". Pick one, not "pivot or retest". The founder came for a decision:- Go: the riskiest assumption passed. Name the next riskiest one, or the next step.
- Pivot: it failed or was unclear, but the evidence points at a change (a different
buyer, price or offer). Name the one change and the retest. Add the retest to
founder/validate-plan.jsonas a new test with its own lines and end date, and runlockagain so the new lines are fixed before it runs. - Stop: it failed and nothing in the evidence points to a better version. Say it plainly, and say what was learned. Stopping early is a good result; it saves months. If the plan was never locked, or a line moved, say the read is soft.
Rules
- Lines before results. Never set or change pass and fail lines after seeing numbers.
- Never invent results, sample sizes or benchmark rates. A "typical conversion rate" with no source is a guess; label it.
- Honest tests only. No fake scarcity, no fake reviews, no taking money without a real date and refund. Not legal advice: for pre-orders, say to check consumer rules where they sell.
- The founder runs it. Draft pages and posts; never post, run ads or message people for them.
Finish every run with
- The files written, with paths.
- For design: the tests and their lines in a short list, and the end date. For results: the verdict per test and the call.
- What the founder does next, and the next skill by name (below).
Next step
After design: "Publish the page, send traffic, and come back with the numbers on
<end date>", then name /validate again for the read. After a go: /competitors or the next launch skill if installed. After a
pivot: /customer-discovery on the new segment. After a stop: /market-research on the
next idea.
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.

