doubt-driven-development

doubt-driven-development is a skill for Claude Code, Codex from vinvcn/addyosmani-agent-skills-zh. It costs 72 tokens per session (4,111 once invoked), scanned A, original, MIT.

A development practice that puts an independent, fresh-context challenge in front of important coding decisions.

In plain words
What is it for?
Use it to question architecture choices, non-trivial code changes, safety claims, and behavior that compilers or type systems cannot verify.
Why use it?
It helps catch hidden assumptions before they become costly bugs, especially in unfamiliar, high-risk, or hard-to-reverse work.

Skill for Claude CodeCodex

Written for Claude Code and Codex: shipped in a Claude Code plugin, but also runs codex exec. Also seen: mentions subagents; mentions Claude Code; mentions Codex.

Part of the agent-skills plugin — 23 skills, 8 commands, 3 agents, 1 hook shipped together

Good fit Use it to question architecture choices, non-trivial code changes, safety claims, and behavior that compilers or type systems cannot verify.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/vinvcn/addyosmani-agent-skills-zh/doubt-driven-development
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add vinvcn/addyosmani-agent-skills-zh --skill doubt-driven-development
Clone the repo
git clone --depth 1 https://github.com/vinvcn/addyosmani-agent-skills-zh

Made for: Claude Code, Codex.

Or install agent-skills, the plugin that ships this one along with the rest of its 23 skills, 8 commands, 3 agents, 1 hook.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for doubt-driven-development

README.md
[![agentmods](https://agentmods.dev/badge/skills/vinvcn/addyosmani-agent-skills-zh/doubt-driven-development/github.svg)](https://agentmods.dev/skills/vinvcn/addyosmani-agent-skills-zh/doubt-driven-development)
Your own site
<a href="https://agentmods.dev/skills/vinvcn/addyosmani-agent-skills-zh/doubt-driven-development"><img src="https://agentmods.dev/badge/skills/vinvcn/addyosmani-agent-skills-zh/doubt-driven-development/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for doubt-driven-development

Your own site · 80×15
<a href="https://agentmods.dev/skills/vinvcn/addyosmani-agent-skills-zh/doubt-driven-development"><img src="https://agentmods.dev/badge/skills/vinvcn/addyosmani-agent-skills-zh/doubt-driven-development.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 72 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,111 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00072 $0.04111
Opus 5 $0.00036 $0.02056
Sonnet 5 $0.00014 $0.00822
Haiku 4.5 $0.00007 $0.00411

Measured 10d ago against content hash af6c8aa7e554, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

doubt-driven-development scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 10d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/doubt-driven-development/SKILL.md · 244 lines

How it starts

The opening of the file, as written. The whole thing — 244 lines — stays where its author put it; the contents beside it link to each section on GitHub.

怀疑驱动开发

概览

自信的答案不等于正确的答案。长会话会积累上下文,悄悄把假设变成“事实”,而没人察觉。怀疑驱动开发是一种纪律:在任何非平凡输出成立前,物化一个带全新上下文的审查者,其偏向是证伪,而不是批准。

这不是 /review/review 是对已完成产物的裁决。这是一种进行中的姿态:在修正方向仍然便宜时,让非平凡决策接受交叉质询。

何时使用

当至少满足以下任一条件时,决策就是非平凡的:

  • 引入或修改分支逻辑
  • 跨越模块或服务边界
  • 断言类型系统或编译器无法验证的性质(线程安全、幂等性、顺序、不变量)
  • 正确性依赖未来读者看不到的上下文
  • 影响半径不可逆(生产部署、数据迁移、公共 API 变更)

在以下场景应用此 skill:

  • 准备在不确定性下做架构决策
  • 准备提交非平凡代码
  • 准备声称一个非显而易见的事实(“this is safe”、“this scales”、“this matches the spec”)
  • 正在处理你没有完全理解的代码

何时不使用:

  • 机械操作(重命名、格式化、移动文件)
  • 遵循清晰、无歧义的用户指令
  • 阅读或总结现有代码
  • 正确性显而易见的一行改动
  • 纯工具操作(运行测试、列文件)
  • 用户明确要求速度优先于验证

如果你怀疑每一次按键,就什么也发布不了。该 skill 只适用于上面定义的非平凡决策。

加载约束

这个 skill 设计给主会话编排者使用,因为第 3 步(DOUBT,详见下文)可以 spawn 一个全新上下文审查者。

  • 不要把此 skill 加入 persona 的 skills: frontmatter。 遵循第 3 步的 persona 会 spawn 另一个 persona,这正是 references/orchestration-patterns.md 明确禁止的编排反模式(“personas do not invoke other personas”)。
  • 如果你发现自己在 subagent 上下文中应用此 skill(Claude Code 会阻止嵌套 subagent spawn):首选路径是告知用户,doubt-driven 无法嵌套运行,并让主会话处理。只有作为最后手段,才使用降级的自我质询 fallback:把 ARTIFACT + CONTRACT 改写成一个带硬心理分隔的全新自我 prompt,与之前推理隔离,并执行第 1-5 步。这不是全新上下文审查(你携带着自己的上下文),所以要把结果标记为降级,并在用户可达时优先升级。

流程

应用该 skill 时复制此 checklist:

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 user override)

Step 1: CLAIM — 呈现将要成立的内容

用两三行命名该决策:

CLAIM: "The new caching layer is thread-safe under the
        read-heavy workload described in the spec."
WHY THIS MATTERS: a race here corrupts user data and is
                  hard to detect in QA.

如果你无法把 claim 写得这么紧凑,那你拥有的是感觉,而不是决策。在审视它之前先把它呈现出来。

Step 2: EXTRACT — 最小可审查单元

全新上下文审查者需要的是产物契约,不是你的心路历程。

  • 代码:diff 或函数,而不是整个文件
  • 决策:3-5 句提案,以及它必须满足的约束
  • 断言:claim 加上据称支持它的证据(与第 1 步 CLAIM 块保持区分,后者是编排者正在接受审视的假设)

Read the full file on GitHub · 244 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 10d ago First seen · 244 lines · 72 tokens per session scan A af6c8aa7e554

Subscribe to this mod's changes

doubt-driven-development is a skill published in the GitHub repository vinvcn/addyosmani-agent-skills-zh (30 stars, last pushed 4mo ago), licensed MIT. It adds 72 tokens to every session and 4,111 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

code-review-and-quality

Conducts multi-axis code review with hard rules against rubber-stamping and diff-only tunnel vision. Use before merging any change, whether written by yourself, another agent, or a human. Triggers on "review this", "is this ready to merge", or any completed implementation awaiting approval.

borhen68/SkillEngine · 63 tokens

doubt-driven-development

Subjects every non-trivial decision to a fresh-context adversarial review before it stands. Use when correctness matters more than speed, when working in unfamiliar code, when stakes are high (production, security-sensitive logic, irreversible operations), or any time a confident output would be cheaper to verify now…

borhen68/SkillEngine · 67 tokens

code-simplification

Simplifies code for clarity. Use when refactoring code for clarity without changing behavior. Use when code works but is harder to read, maintain, or extend than it should be. Use when reviewing code that has accumulated unnecessary complexity.

borhen68/SkillEngine · 51 tokens

code-review-and-quality

Conducts multi-axis code review. Use before merging any change. Use when reviewing code written by yourself, another agent, or a human. Use when you need to assess code quality across multiple dimensions before it enters the main branch.

addyosmani/agent-skills · 51 tokens

doubt-driven-development

Subjects every non-trivial decision to a fresh-context adversarial review before it stands. Use when you want every assumption cross-examined before proceeding, when stress-testing a plan for hidden failure modes, when correctness matters more than speed, when working in unfamiliar code, when stakes are high…

addyosmani/agent-skills · 96 tokens

code-simplification

Simplifies code for clarity. Use when refactoring code for clarity without changing behavior. Use when code works but is harder to read, maintain, or extend than it should be. Use when reviewing code that has accumulated unnecessary complexity.

addyosmani/agent-skills · 51 tokens