falsify-project
Skill8 starsChanged 6 months agoMITView on GitHub
Audit a project, repo, app, or site by assuming its documented claims are false until disproven through code inspection, tests, builds, runtime checks, and contradiction hunting. Use when the user wants an adversarial validation that attempts to disprove README, ADR, PRD, roadmap, or marketing claims before accepting the project as working.
In this repository12 other files it gives its agents.
- create-issueSkill
- dumb-it-downSkill
- from-issueSkill
- github-repo-hygieneSkill
- new-featureSkill
- overengineering-reviewSkill
- project-doc-scaffolderSkill
- system-diagrammerSkill
- test-writerSkill
- to-adrSkill
- verify-projectSkill
- zero-techdebtSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
16 rules. About 0 are common, 14 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈14
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 10
Use this skill when the user wants adversarial project verification.
- Distinctive: line 12
Default stance: every README, ADR, PRD, roadmap, issue, and UI claim is untrusted until evidence proves it.
- Distinctive: line 17
Read docs, manifests, visible UI copy, examples, scripts, tests, issue templates, and recent commits.
- Distinctive: line 19
Do not treat architecture docs, product docs, or TODOs as evidence that something works.
- Distinctive: line 22
Prefer direct contradiction: missing code paths, dead links, failing commands, placeholder implementations, mock-only flows, skipped tests, …
- Very specific: line 26
Use search for TODO, FIXME, mock, stub, placeholder, skip, only, throw new Error, disabled code, fake data, and missing environment …
- Distinctive: line 27
Follow the primary workflows end to end through the implementation.
- Distinctive: line 29
Run setup, lint, typecheck, test, build, smoke, and start commands that the repo advertises or makes available.
- Distinctive: line 30
If the app/site can run, exercise the claimed primary user flows through browser automation, HTTP requests, CLI commands, or direct runtime …
- Distinctive: line 40
Put validated claims after the failure analysis.
- Distinctive: line 95
Start from distrust. Do not summarize docs as if they are true.
- Very specific: line 97
Do not validate by absence of evidence.
- Distinctive: line 98
Do not hide environment blockers, skipped tests, missing secrets, or unavailable services.
- Distinctive: line 99
Do not create issues, PRs, or fixes unless the user explicitly asks.
- Distinctive: line 100
If the repo is too large to inspect exhaustively, state the sampling strategy and residual risk.
- Distinctive: line 101
Prefer concrete file paths, commands, screenshots, HTTP responses, test failures, and runtime observations over opinions.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Falsify Project
Use this skill when the user wants adversarial project verification.
Default stance: every README, ADR, PRD, roadmap, issue, and UI claim is untrusted until evidence proves it.
Workflow
- Extract claims.
- Read docs, manifests, visible UI copy, examples, scripts, tests, issue templates, and recent commits.
- Convert claims into falsifiable statements such as "users can sign in", "the app deploys", "the API persists records", or "tests cover the core workflow".
- Do not treat architecture docs, product docs, or TODOs as evidence that something works.
- Build a disproof plan.
- For each important claim, identify the fastest way to prove it false.
- Prefer direct contradiction: missing code paths, dead links, failing commands, placeholder implementations, mock-only flows, skipped tests, unhandled errors, missing persistence, broken setup, inaccessible UI, or non-working integrations.
- Rank claims by user impact and centrality to the project.
- Inspect the whole project at a practical level.
- Map entrypoints, routes, commands, domain logic, data storage, API boundaries, auth, integrations, tests, config, deployment, and docs.
- Use search for
TODO,FIXME,mock,stub,placeholder,skip,only,throw new Error, disabled code, fake data, and missing environment variables. - Follow the primary workflows end to end through the implementation.
- Run falsification checks.
- Run setup, lint, typecheck, test, build, smoke, and start commands that the repo advertises or makes available.
- If the app/site can run, exercise the claimed primary user flows through browser automation, HTTP requests, CLI commands, or direct runtime checks.
- Record exact failures and the command, URL, screen, or code path that exposed them.
- Decide claim status.
Disproven: evidence shows the claim is false.Unproven: not enough evidence to validate the claim.Partially proven: a narrow version works, but the full claim does not.Validated: repeated code/runtime evidence supports the claim and no attempted disproof succeeded.- Validation is allowed only after serious contradiction checks fail.
- Produce the report.
- Lead with disproven and unproven claims.
- Put validated claims after the failure analysis.
- Give next steps that would convert disproven/unproven claims into validated behavior.
Report Format
## Falsification Report
Overall status: Broken | Mostly broken | Partially working | Mostly working | Validated
Confidence: High | Medium | Low
### Claims tested
| Claim | Status | Disproof attempt | Evidence |
| --- | --- | --- | --- |
| Claim text | Disproven/Unproven/Partially proven/Validated | What was tried to break it | File, command, response, or observation |
### Disproven claims
1. Claim
- Disproof evidence:
- Impact:
- Required fix:
### Unproven or partial claims
1. Claim
- Missing evidence:
- Risk:
- Required verification:
### Validated claims
- Claim: evidence that survived disproof attempts.
### Commands and checks run
```bash
commands that were run
```
### Next steps to make the project true
1. Highest priority fix or verification step
2. Next priority fix or verification step
3. Next priority fix or verification step
### Limits of this audit
- Anything that could not be accessed, run, inspected, or falsified.Guardrails
- Start from distrust. Do not summarize docs as if they are true.
- Disprove before validating. The report must show attempted contradiction for important claims.
- Do not validate by absence of evidence. If a claim cannot be tested, mark it
Unproven. - Do not hide environment blockers, skipped tests, missing secrets, or unavailable services.
- Do not create issues, PRs, or fixes unless the user explicitly asks.
- If the repo is too large to inspect exhaustively, state the sampling strategy and residual risk.
- Prefer concrete file paths, commands, screenshots, HTTP responses, test failures, and runtime observations over opinions.
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.

