doubt-driven-development

Subjects non-trivial code decisions to adversarial fresh-context review before they stand.

Updated Jul 9, 2026
One-click install
npx skills add https://github.com/ByronWilliamsCPA/plugin --skill doubt-driven-development-byronwilliamscpa
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: doubt-driven-development
Source: https://github.com/ByronWilliamsCPA/plugin/tree/main/plugins/wff-code/skills/doubt-driven-development
Command: npx skills add https://github.com/ByronWilliamsCPA/plugin --skill doubt-driven-development-byronwilliamscpa

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Long coding sessions quietly turn assumptions into facts, and confident answers are not always correct ones. This Skill catches wrong decisions early by forcing every non-trivial decision through an adversarial fresh-context review while course-correction is still cheap, instead of discovering bugs at PR time or in production. ## Core Features & Use Cases - Five-step doubt cycle: CLAIM the decision, EXTRACT the smallest reviewable artifact plus contract, DOUBT it with an adversarial fresh-context reviewer, RECONCILE findings by precedence (contract misread, actionable, trade-off, noise), and STOP within a bounded 3-cycle loop. - Cross-model escalation: Offers a second opinion via a consensus skill or external CLIs (Gemini, Codex) with strict safety rules, including read-only sandboxes, stdin piping to avoid shell injection, and explicit per-invocation user authorization. - Use Case: Before committing a new caching layer claimed to be thread-safe, extract the diff and its contract, spawn an adversarial reviewer instructed only to find issues, classify each finding against the artifact text, and fix or document trade-offs before shipping. ## Quick Start Ask the AI to apply doubt-driven development to review the thread-safety claim in your new caching layer before committing it.

Frequently Asked Questions about doubt-driven-development

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I verify a code decision before committing it?▼

Use the doubt cycle: write a compact CLAIM, extract the smallest reviewable artifact plus its contract, and spawn a fresh-context reviewer with an adversarial prompt that asks it to find issues rather than validate. Classify each finding against the artifact text, then stop after trivial findings, three cycles, or user override.

What is the difference between doubt-driven development and code review?▼

Code review and PR review are post-hoc verdicts on a finished artifact, while doubt-driven development is an in-flight posture applied per decision while changes are still cheap. The two are complementary and meant to be used together.

When should I not use adversarial review on my code?▼

Skip it for mechanical operations like renaming or formatting, one-line changes with obvious correctness, reading or summarizing code, pure tooling operations, or when the user explicitly prioritizes speed. It applies only to non-trivial decisions such as branching logic, cross-boundary changes, or irreversible operations.

Can this skill run inside a subagent in Claude Code?▼

No. Claude Code does not allow a subagent to spawn another subagent, so the DOUBT step only works from the main-session orchestrator. Inside a subagent, surface the limitation to the user or use a degraded self-questioning fallback flagged as not fresh-context.

Is it safe to pass code artifacts to external CLIs like Gemini or Codex?▼

Only with precautions: never interpolate the artifact into a shell-quoted argument, write the prompt to a file and pipe it via stdin, run the CLI in a read-only sandbox, and get explicit user authorization for every invocation. This prevents shell execution and prompt injection from the artifact.