addy-doubt-driven-development

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

Updated Aug 21, 2026
One-click install
npx skills add https://github.com/TylerSimons1127/vibe --skill addy-doubt-driven-development-tylersimons1127
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: addy-doubt-driven-development
Source: https://github.com/TylerSimons1127/vibe/tree/main/skills/addy-doubt-driven-development
Command: npx skills add https://github.com/TylerSimons1127/vibe --skill addy-doubt-driven-development-tylersimons1127

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve? Long coding sessions quietly turn assumptions into facts, and confident answers are not always correct ones. This Skill forces every non-trivial decision through a fresh-context adversarial review while course-correction is still cheap, catching wrong directions before they reach 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, and STOP at a bounded condition (trivial findings, 3 cycles, or user override). - Cross-model escalation: In interactive sessions it always offers a second opinion via external CLIs like Gemini or Codex, with read-only sandboxing and stdin piping to avoid shell injection from artifact content. - Use Case: Before committing a new caching layer you believe is thread-safe, run the doubt cycle so an isolated reviewer hunts for races, unstated assumptions, and contract violations instead of validating your conclusion. ## Quick Start Ask the agent to apply doubt-driven development to the architectural decision or non-trivial code change you are about to commit.

Frequently Asked Questions about addy-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, then spawn a fresh-context reviewer with an adversarial find-issues prompt. Classify each finding as contract misread, actionable, trade-off, or noise before reconciling.

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

Doubt-driven development is an in-flight posture applied per non-trivial decision while changes are still cheap, whereas a code review is a post-hoc verdict on a finished artifact or PR. The two are complementary and can be used together.

When should I not use adversarial decision review?▼

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

Can I get a cross-model second opinion on my code?▼

Yes. In interactive sessions the skill always offers cross-model escalation via external CLIs such as Gemini or Codex, piping the prompt through stdin with a read-only sandbox. Each invocation requires explicit user authorization and is skipped with an announcement in non-interactive contexts.

Why does the reviewer only receive the artifact and contract?▼

Passing your CLAIM or reasoning biases the reviewer toward agreement, defeating the purpose of fresh-context review. The reviewer must independently determine whether the artifact satisfies the contract, so only those two inputs are provided.

What are the limitations of doubt-driven development?▼

It cannot run nested inside a subagent context, where only a degraded self-questioning fallback is possible. The loop is bounded at three cycles, and a fresh reviewer lacking context can produce noise, so findings must be re-classified against the artifact text rather than rubber-stamped.