用Claude Code实现TDD ― tsumiki的dev-impl技能
機械翻訳 / Machine-translated
機械翻訳 / Machine-translated
原文:用Claude Code实现TDD ― tsumiki的dev-impl技能(cccskills)
技能页面:dev-impl
本文结论
引入tsumiki的dev-impl后,Claude Code等智能体会先编写测试,并确认测试失败。
之后再推进实现,使测试通过。
本文将说明按计划推进的普通模式与直接指示的快速模式的区别。
同时也整理了安装方法、请求示例以及使用前需要了解的前提条件。
指定已规划好的任务后,dev-impl会先编写测试并确认失败,然后再开始实现。
请求示例如下:
/dev-impl auth 001
智能体首先读取docs/dev/context.md和任务文件。
接着根据任务中写明的测试方针生成测试代码,执行并确认失败(Red)。
然后编写使测试通过所需的最小实现,并确认成功(Green)。
测试通过后,会检查文件行数、安全性、性能和覆盖率。
最后返回"可信度报告"。
报告中列出各包的覆盖率与阈值,以及每个已实现文件所需的确认优先级。
同时,任务文件的状态会更新为done。
dev-impl是classmethod公开的tsumiki中包含的实现用技能。
以TDD(先编写测试再实现的开发方式)作为护栏。
测试通过之前不进入下一步,是该技能的基本规则。
共有两种模式,通过传入的参数形式切换。
| 模式 | 调用方式 | 适合的工作 |
|---|---|---|
| 普通模式 | /dev-impl <plan-name> <task-id> | 实现计划(Plan)中的某个任务 |
| 快速模式 | /dev-impl "修改指示" | 小型bug修复、向现有测试添加用例、轻量重构 |
普通模式是tsumiki开发流程中位于计划之后的工序。
使用dev-context分析项目、用dev-plan分解任务后,再用dev-impl逐个任务进行实现。
验证由dev-verify负责,失败时的排查由dev-debug负责。
快速模式无需Plan。
通过子智能体查找相关文件,修改测试和实现后,执行测试进行确认。
同时包含500行规则的检查和简洁报告。
测试变为Green后进行的检查,每次都是相同的项目。
判断优先级定为"质量 > 速度 > Token消耗"。
生成的所有public函数和方法都会附带"Intent注释"。
该注释以类似交通灯的三个级别,标明设计决策依据的来源。
| 信号 | 含义 | 在评审中的处理 |
|---|---|---|
| 蓝 | 在任务文件或context.md中明确说明的决策 | 优先级较低 |
| 黄 | 从指示中推断出的合理决策 | 需确认 |
| 红 | 前置工序中无依据、由AI补充的决策 | 必须由人工确认 |
安全性和性能方面标记为红的问题,需修复后方可完成。
在可信度报告中,文件也会按相同的三个级别分类展示。
测试和实现的推进方式,会根据任务文件中标注的复杂度而变化。
| 复杂度 | 推进方式 |
|---|---|
| low | 一次性生成测试和实现,通过测试执行进行验证 |
| medium | 按测试、Red确认、实现、Green确认的顺序循环 |
| high | 逐个添加测试,逐个完成Green |
一行命令即可安装。
执行时可选择安装到Claude Code或Codex等目标智能体。
npx skills add https://github.com/classmethod/tsumiki --skill dev-impl
若要让智能体代为安装,请直接发送以下内容:
次の Agent Skill をインストールしてください。
https://github.com/classmethod/tsumiki/tree/main/skills/dev-impl
まず SKILL.md と付属ファイルの中身を確認し、不審な処理(外部への送信、認証情報の読み取りなど)がないことを確かめてから、Claude Code なら ~/.claude/skills/dev-impl/、Codex なら ~/.agents/skills/dev-impl/ に配置してください。
安装位置可根据是用于所有项目还是仅用于特定项目来选择。
| 智能体 | 用于所有项目 | 仅用于特定项目 |
|---|---|---|
| Claude Code | ~/.claude/skills/dev-impl/ | 项目的.claude/skills/dev-impl/ |
| Codex | ~/.agents/skills/dev-impl/ | 项目的.agents/skills/dev-impl/ |
完整仓库可在classmethod/tsumiki中查看。
可用于调用的表述包括:"实现任务"、"测试优先实现"、"开始实现"、"快速修复"、"quick fix"等。
请用dev-impl auth 001,以测试优先方式实现认证计划的任务001。
这个请求使用普通模式。
首先确认所依赖的任务是否全部为done状态。
然后按测试编写、Red确认、实现、Green确认、检查的顺序推进。
最后返回可信度报告,任务状态变为done。
quick fix:请修改登录表单,在验证邮箱地址前先去除首尾空格。
这个使用快速模式。
查找相关文件后修改测试和实现,执行测试并确认结果。
返回简洁报告。
请用快速修复,向现有测试中添加页码为0时的用例。
这也是快速模式的请求。
向现有测试添加用例,是该模式的使用场景之一。
同时调整实现使新增测试通过,并报告执行结果。
dev-impl无法单独完成,它依赖tsumiki其他技能所生成的文件。
安装前请确认以下几点:
许可证为MIT。
附带文件只有SKILL.md和references/impl-strategies.md两个,建议安装前先阅读内容以确认安全。
dev-impl前后使用的技能,均在同一tsumiki仓库中提供。
dev-context分析技术栈、测试框架、编码规范,生成项目上下文。
这是准备dev-impl所需context.md的工序。
dev-plan根据需求制定实现计划并分解为任务。
普通模式中指定的Plan和任务,就是在这里创建的。
dev-debug是处理测试失败和构建错误的技能。
当dev-impl修复3次后测试仍未通过时,系统会引导使用此技能。
快速模式下无需Plan也无需任务文件。
可以直接以/dev-impl "修改指示"的形式请求。
但若没有context.md,系统会引导先使用dev-context,提前创建好可加快推进速度。
分析错误并进行修复的循环最多进行3次。
若仍未解决,系统会引导使用dev-debug。
安装命令中可以选择Codex作为安装目标。
但流程中包含TodoWrite、子智能体模型指定等Claude Code专有功能名称。
相关文件超过500行时,规定按职责边界进行拆分。
测试文件也一并拆分,拆分后重新执行测试以确认成功。
dev-impl是将先编写测试的习惯带入AI协作开发的技能。
已规划的任务使用普通模式,小型修改使用快速模式推进。
两种模式都在确认测试执行结果后才完成。
最后返回的是以三个级别标明依据强度的报告。
详细信息可在cccskills页面查看。
本文转载自 cccskills 的文章「用Claude Code实现TDD ― tsumiki的dev-impl技能」。
技能详情和安装方法请访问 cccskills的dev-impl页面。