doubt-driven-development
Skill1 starsChanged 11 days agoMITView on GitHub
Review every non-trivial decision with a fresh-context adversarial review. Use when correctness matters, stakes are high, or code is unfamiliar. Do NOT use for trivial changes.
We split this skill into the rules it gives an agent
3 rules. 0 are common, 1 is distinctive, and 2 are very specific to this project.
0
Common
Most of the 52 edited versions we read keep these.
1
Distinctive
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 79
Stop when: next iteration returns only trivial findings, 3 cycles completed (escalate to user), or user says "ship it".
- Very specific: line 86
debugging-and-error-recovery: when reviewer surfaces a real failure mode, use this skill to localize and fix. - Very specific: line 87
shipping-and-launch: use TOOL_GAP — if you can't reach the real world, report "ship status unknown".
“Common” is measured: kept by at least 6 in 10 of the 52 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
Doubt-Driven Development
Overview
A confident answer is not a correct one. Long sessions accumulate context that quietly turns assumptions into "facts". Doubt-driven development materializes a fresh-context reviewer biased to disprove before any non-trivial output stands.
This is not /review. /review is a verdict on a finished artifact. This is an in-flight posture for course-correction when it's still cheap.
When to Use
A decision is non-trivial when it introduces branching logic, crosses a module boundary, asserts unverifiable properties (thread safety, idempotence), has irreversible blast radius (production deploy, data migration, public API change), or depends on context the future reader cannot see.
Apply when: about to make an architectural decision, commit non-trivial code, claim a non-obvious fact, or work in code you don't fully understand.
When NOT to Use
- Mechanical operations (renaming, formatting)
- Clear, unambiguous instructions
- Reading or summarizing existing code
- One-line changes or pure tooling
Output Contract
Doubt cycle log + adversarial review findings — CLAIM statement, isolated ARTIFACT + CONTRACT, fresh-context reviewer findings classified by precedence (contract misread / actionable / trade-off / noise), cross-model offer recorded, stop condition met.
Loading Constraints
Designed for the main-session orchestrator — Step 3 spawns a fresh-context reviewer. Do NOT add this skill to a persona's skills: frontmatter (personas must not invoke other personas). If inside a subagent context, surface to the user that doubt-driven cannot run nested. As last resort, use degraded self-questioning fallback (flag as degraded in output).
The Process
Doubt cycle:
- [ ] Step 1: CLAIM — wrote the claim + why-it-matters
- [ ] Step 2: EXTRACT — isolated artifact + contract, stripped reasoning
- [ ] Step 3: DOUBT — invoked fresh-context reviewer with adversarial prompt
- [ ] Step 4: RECONCILE — classified every finding against the artifact text
- [ ] Step 5: STOP — met stop condition (trivial findings, 3 cycles, or override)Step 1: CLAIM — Surface what stands
Name the decision in 2-3 lines. If you can't write it that compactly, you have a vibe, not a decision.
Step 2: EXTRACT — Smallest reviewable unit
Pass the reviewer the artifact and the contract, not your reasoning or the journey. The unit must fit in one read — if it's a 500-line PR, decompose first.
Step 3: DOUBT — Invoke the fresh-context reviewer
Prompt must be adversarial. Find what is wrong. Do NOT validate. Do NOT summarize. Pass ARTIFACT + CONTRACT only — never the CLAIM (biases toward agreement).
→ See guides/CROSS-MODEL.md for cross-model escalation (mandatory offer in interactive cycles).
Step 4: RECONCILE — Fold findings back
The reviewer's output is data, not verdict. Re-read the artifact text against each finding. Classify (first match wins):
- Contract misread — contract was unclear. Fix contract, re-loop.
- Valid + actionable — real issue. Fix artifact, re-loop.
- Valid trade-off — cost of fixing > cost of accepting. Document explicitly.
- Noise — reviewer lacked context. Note it.
Step 5: STOP — Bounded loop
Stop when: next iteration returns only trivial findings, 3 cycles completed (escalate to user), or user says "ship it". If after 3 cycles issues remain substantive, the artifact may not be ready.
Interaction with Other Skills
code-review-and-quality//review: complementary.reviewis post-hoc PR verdict; doubt-driven is in-flight per-decision.source-driven-development: SDD verifies facts about frameworks; doubt-driven verifies your reasoning about the artifact.test-driven-development: TDD's RED step satisfies the doubt step for behavioral claims.debugging-and-error-recovery: when reviewer surfaces a real failure mode, use this skill to localize and fix.shipping-and-launch: use TOOL_GAP — if you can't reach the real world, report "ship status unknown".
Verification
- Every non-trivial decision named as a CLAIM before standing
- At least one fresh-context review per non-trivial artifact
- Reviewer received ARTIFACT + CONTRACT — not CLAIM or your reasoning
- Prompt was adversarial ("find issues"), not validating
- Findings classified using precedence: contract misread / actionable / trade-off / noise
- Stop condition met (trivial findings, 3 cycles, or user override)
- Interactive: cross-model offered. Non-interactive: skip announced
- CLI: PATH check + binary test + syntax confirmed + user authorized
- No rule conflicts — checked (Rule 0h, 0i, 12)
Other versions61 projects use a version of this.
Word for word · 0
None found.
Edited · 40
- addyosmani/agent-skills★ 112k10% same
- rizqinrr/viserys-agent★ 55611% same
- sampleXbro/agentsmesh★ 2411% same
- jaskirat1616/grok-skills★ 2211% same
- robertoatila/jarvis-skill-registry★ 811% same
- HK-hub/AgentSkills★ 611% same
- coreplanelabs/switchboard★ 511% same
- ddddjaak/ae-skills★ 411% same
- dzevs/zynk★ 410% same
- Marvellbrazil/my-agentic-skills★ 411% same
30 more not listed
Wrote their own version · 21
- mycelium-hq/ai-brain-starter★ 50same name
- drvoss/everything-copilot-cli★ 49same name
- vinvcn/addyosmani-agent-skills-zh★ 46same name
- etr/groundwork★ 44same name
- valpere/session-indexer★ 42same name
- sirius-cc-wu/sirius-skills★ 6same name
- bnalwalid/walidforge-skills★ 2same name
- codexskills/agent-forge★ 2same name
- GuillemRoca/agent-skills-android★ 2same name
- seikaikyo/dash-skills★ 2same name
11 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.
Used alongsideProjects with it also use constraint-driven-development and using-agent-skills.
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.
MrCipherSmithSkillconstraint-driven-development
Use when a project needs a persistent, measurable quality bar — starting a project without documented standards, 'set up constraints', or when coverage/perf/a11y thresholds get re-debated per-PR. Produces CONSTRAINTS.md with enforceable numbers, ratchets, and a guard against silent weakening. NOT for throwaway prototypes or a one-off CI setup.
Also in 14 projects that use this
LLl0k0laDSkillusing-agent-skills
Use when starting a session or when you need to discover which skill applies to the current task. This is the meta-skill that governs how all other skills are discovered and invoked.
Also in 33 projects that use this
In this repository59 other files it gives its agents.
- AGENTS.mdAGENTS.md
- templates/CLAUDE.mdCLAUDE.md
- adapt-skillSkill
- api-and-interface-designSkill
- architecture-analysisSkill
- audit-skillSkill
- backend-api-masterySkill
- browser-testing-with-devtoolsSkill
- ci-cd-and-automationSkill
- clarify-skillSkill
- cli-toolsSkill
- code-review-and-qualitySkill
- code-simplificationSkill
- context-engineeringSkill
- critique-skillSkill
- customize-opencodeSkill
- debugging-and-error-recoverySkill
- debugging-three-strikesSkill
- delight-skillSkill
- deprecation-and-migrationSkill
- dev-environment-auditSkill
- documentation-and-adrsSkill
- engineering-fundamentalsSkill
- frontend-desktopSkill
- frontend-mobileSkill
- frontend-pwaSkill
- frontend-ui-engineeringSkill
- frontend-webSkill
- fullstack-shippingSkill
- gateSkill
- git-init-and-versioningSkill
- git-workflow-and-versioningSkill
- hard-skillSkill
- idea-refineSkill
- incremental-implementationSkill
- industrial-brutalist-uiSkill
- interview-meSkill
- minimalist-uiSkill
- multi-agent-orchestrationSkill
- observability-and-instrumentationSkill
- optimize-skillSkill
- output-skillSkill
- performance-optimizationSkill
- planning-and-task-breakdownSkill
- polish-skillSkill
- project-health-checkSkill
- project-metricsSkill
- redesign-skillSkill
- security-and-hardeningSkill
- self-improvementSkill
- shipping-and-launchSkill
- skill-creatorSkill
- skill-improverSkill
- soft-premium-uiSkill
- source-driven-developmentSkill
- spec-driven-developmentSkill
- test-driven-developmentSkill
- typeset-skillSkill
- user-onboardingSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
Reviews can't be read right now.
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.

