1. 基本信息
| 项目 | 内容 | 数据来源 |
|---|---|---|
| 名称 | tdd(mattpocock/skills 合集仓库子技能;项目自述名称与正式名称一致) |
GitHub |
| 作者/维护者 | Matt Pocock(个人开发者/技术教育者,运营 aihero.dev,自述约 6 万订阅 newsletter) | 仓库 README |
| 来源链接 | https://github.com/mattpocock/skills/tree/main/skills/engineering/tdd | — |
| 许可证 | MIT(仓库根 LICENSE) | GitHub API |
| GitHub Stars / Forks | 所属 mattpocock/skills 仓库整体 219,255 stars / 18,877 forks;该数字属整个合集仓库,不代表本技能自身热度 |
GitHub API |
| 最新版本 | 插件包版本 1.2.3(.claude-plugin/plugin.json) |
仓库核对 |
| 安装方式 | Claude Code 官方插件市场 / Agent Skills 通用 CLI / 手动复制 | 仓库 README |
2. 功能介绍与亮点
tdd 教 agent 用红→绿的测试驱动开发循环,核心目标是让循环产出“经得起重构考验的测试”,而不是任意能通过的测试。它定义了 seam(公开边界)概念——测试只打在预先与用户确认过的 seam 上,从不测内部实现;给出三类反模式(实现耦合、重言式断言、水平切片式批量写测试)及各自的识别方法;配套 tests.md(好测试/坏测试对照示例)与 mocking.md(仅在系统边界处 mock、依赖注入设计建议)两份参考文档;循环规则明确“红在前、一次一个切片、重构不算在循环内”。
亮点:GitHub 代码搜索按精确路径命中 2,952 个仓库复用了该技能文件;仓库 issue 区可查证到多名与作者无关联的外部用户就该技能提交过具体反馈——其中一人明确称其为“我们见过的最清晰、最有用的红绿重构 AI 辅助编码参考之一”,并专门开 issue 请求把 tdd 单独打包成可独立安装的插件;另有开发者提交了基于变异测试的 A/B 验证方案与增强建议;作为 Claude Code 官方插件市场收录的 mattpocock-skills 插件组成部分。
3. 适用场景
固定分类:工程效率与代码质量
面向使用 Claude Code / Codex 等编码 agent、希望 agent 按测试先行纪律实现新功能或修复缺陷的初中级开发者;尤其适合已经知道“要写测试”、但苦于 agent 容易写出“实现耦合”或“批量补测试”这类低质量测试的团队。该技能不依赖同仓库其他技能即可独立安装使用。
4. 跨 Agent 兼容性
- Claude Code:原生支持——
mattpocock/skills是 Claude Code 官方插件市场收录的插件,仓库自带.claude-plugin/plugin.json清单,/plugin install mattpocock-skills即可安装。 - Codex:支持——作者 README 将 Codex 列为“Codex, and other agents”安装分支的目标,经通用安装器
npx skills add mattpocock/skills安装;该安装器官方文档的 Supported Agents 表格明确列出 Codex 的项目路径.agents/skills/与全局路径~/.codex/skills/。 - OpenClaw:支持——同一份 Supported Agents 表格列出 OpenClaw 的项目路径
skills/与全局路径~/.openclaw/skills/;经通用安装器而非厂商原生渠道。 - Hermes Agent:支持——同一份表格列出 Hermes Agent 的项目路径
.hermes/skills/与全局路径~/.hermes/skills/;同样经通用安装器安装。
5. 推荐理由
把“写测试”从“要求 agent 补测试”这类笼统指令,变成一套可执行的测试质量标准——先谈好测哪里(seam)、区分好测试和坏测试、只在系统边界 mock。这是一份公开、可审计的方法论参考,而非黑盒脚本,独立于同仓库其他技能即可完整使用;已进入 Claude Code 官方插件市场,且有真实外部开发者持续贡献增强方案与反馈,说明它在被认真使用而非发布即弃。
6. 评分
| 维度 | 分数 | 说明 |
|---|---|---|
| 受欢迎程度 | 8 | GitHub 代码搜索按精确路径命中 2,952 个仓库复用该技能文件;仓库 issue 区至少 5 名与作者无关联的外部用户(如 gwpl、onur-aslan、ecancino、yifengingit、dmeehan1968)就该技能提交过具体反馈或增强提案;另有独立技术博客文章与 Hacker News 讨论帖佐证 |
| 可用性 | 9 | 独立可用,无需依赖同仓库姊妹技能;MIT 许可;一条命令即可通过 Claude Code 官方插件市场或通用 CLI 安装;文档完整(含 tests.md / mocking.md 两份参考示例);近期仍在积极维护(最近一次相关提交发生在 2026-08-15) |
| 安全性 | 10 | 见下方安全检查清单 |
安全检查清单:
| 检查项 | 结果 |
|---|---|
| ① Shell 命令与权限范围 | 纯提示词/参考文档技能,不执行任何 shell 命令,不涉及权限范围问题 |
| ② 运行时联网外发 | 无网络请求,不外发任何数据 |
| ③ API Key/凭据存储 | 不涉及,无需任何凭据 |
| ④ 可疑指令 | 全文通读未发现提示注入、混淆代码或与任务无关的夹带指令 |
| ⑤ 作者/组织信誉 | Matt Pocock,知名 TypeScript 技术教育者(Total TypeScript / aihero.dev 创始人),未发现刷星或造假迹象 |
| ⑥ License | 仓库级 MIT,明确 |
| ⑦ 最近维护 | 本子技能最近一次相关提交发生在 2026-08-15,仓库整体几乎每日都有提交,活跃维护中 |
综合评分 = 三项均值 = 9.0
7. 跟同类 Skills 相比的优势
| 竞品 | 定位 | 与 tdd 的差异 |
|---|---|---|
| test-driven-development(addyosmani/agent-skills) | 面向刚接触编码 Agent 的初中级开发者,强制先写失败测试再写实现的基础红绿纪律 | 覆盖 TDD 最基本的“测试先行”强制,不展开“什么是好测试”的判断标准;tdd 在此之上补上 seam 概念、反模式识别与 mock 边界指南,两者可视为入门版与进阶版的关系 |
| tdd-guide(alirezarezvani/claude-skills) | 用脚本工具链把测试生成、覆盖率缺口排序、跨框架转换变成可直接调用的自动化工具 | 定位是“批量补测试”的自动化工具,方向上与 tdd 倡导的“一次一个切片、拒绝批量写测试”相反,适合已有代码库补测试场景,而非测试先行的新开发流程 |
| test-driven-development(obra/superpowers) | 大型系统化 Agent 技能合集中的一环,以“铁律”式硬性规则(未见测试失败不得写实现代码,违者删除重写)强制执行 | 采用更严格的零例外强制式规则,未展开 seam、mock 策略或反模式识别的细节判断;tdd 更偏方法论讲解与质量判断标准,二者风格一硬一软,可按团队文化选择 |
8. 用户评价
- gwpl(GitHub issue #138):明确评价 tdd 技能“是我们见过的最清晰、最有用的红绿重构 AI 辅助编码参考之一”,并专门提交需求,希望能把 tdd 单独打包成可独立安装的 Claude Code 插件,而不必连带安装整个技能合集。
- ecancino(GitHub issue #514):基于变异测试做了盲测式 A/B 验证,对比增强版与原版 tdd 技能——增强分支消灭了 24 个注入缺陷中的全部,原版为 22 个,测试质量得分从 175 分升至 181 分,同时指出增强版会多消耗约 25% 的构建 token、测试数量增加约 50%,是一份具体、可复现的技术评测。
9. 其他补充
作者维护一份约 6 万订阅的技术 newsletter,同步该仓库技能集的更新;tdd 的姊妹参考文档 tests.md 与 mocking.md 随 SKILL.md 一并安装,无需额外配置。
10. 安装使用方式
方式一(推荐,Claude Code 官方插件市场):
claude plugins install mattpocock-skills
或在会话内执行:
/plugin install mattpocock-skills
已在 Claude Code 官方市场上架,无需额外添加来源,后续更新自动到达。
方式二(Codex / OpenClaw / Hermes Agent 等,Agent Skills 通用 CLI):
npx skills@latest add mattpocock/skills
安装时可勾选仅安装 tdd。
方式三(手动复制):
git clone https://github.com/mattpocock/skills /tmp/mattpocock-skills
mkdir -p ~/.claude/skills/tdd
cp -r /tmp/mattpocock-skills/skills/engineering/tdd/* ~/.claude/skills/tdd/
安装后注意事项:SKILL.md 未声明 disable-model-invocation,会被模型根据 description 自动触发(用户提及“test-first”/“red-green-refactor”或要求写集成测试等场景),无需手动调用;若想串联同仓库 code-review、codebase-design 等技能组成完整工作流,建议额外安装并先运行一次 /setup-matt-pocock-skills 完成配置,但仅使用 tdd 本身不需要此步骤。
11. 注意事项
- Hacker News 相关讨论中有评论对该技能集“措辞是否真的比朴素指令更有效”提出过质疑,指出目前没有受控对照实验证明其效果,评估时可留意这一点。
- 通用安装器
npx skills(vercel-labs/skills)的 GitHub 仓库存在关于私有仓库场景下遥测/审计端点数据处理方式的公开 issue 讨论;若对此有顾虑,可改用方式三手动复制。 - 完整体验若想串联同仓库 code-review、codebase-design 等技能,需要额外单独安装并配置,但 tdd 单独使用即可满足测试先行、判断测试质量的核心场景。