关于 implement-spec
implement-spec 是用于按 spec 和关联 ticket 完成软件实现的技能,面向需要协调多项依赖任务的编码 Agent。它通过任务前沿、独立 worktree 和集成分支安排并行实施与合并。
主要功能
- 01读取 spec 并梳理 ticket 依赖
- 02按可领取前沿调度实施者
- 03为 ticket 使用独立 worktree 和分支
- 04合并工作并进行代码审查
- 05完成后清理实施 worktree
适用场景
- 01按依赖关系推进多张实现 ticket
- 02并行开发并合并到集成分支
- 03完成 ticket 后执行代码审查与修复
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ devcxl/ mattpocock-skills-zh --skill implement-spec安装后在 Claude Code 中输入/implement-spec确认已加载。
附带文件agents/openai.yaml
详细介绍
来自项目 README你已被提供一份 spec。该 spec 应关联若干 ticket,用以描述如何实现该 spec。
应该已经为你提供了 issue 跟踪器。如果没有,请告诉用户运行 /setup-matt-pocock-skills。
目标是整份 spec 在一条集成分支上实现完成,每张 ticket 都按 issue 跟踪器关闭工作的方式解决。
这些 ticket 不是一份步骤清单。它们是一张任务图,彼此之间存在阻塞关系。这意味着始终存在一个前沿(frontier):可立即被领走的 ticket。
与子智能体之间的通信应保持精简。通信主要通过上下文指针:指向 spec、ticket、研究笔记与历史 commit。无需重复指针已经能触达的信息。
实施者子智能体应尽可能在后台运行,以获得最大并发。
步骤
-
阅读 spec 与 ticket,理解任务图。
-
(可选)使用一个探查子智能体完成 ticket 所需的探查工作:相关的代码库文件或外部文档。确保该探查子智能体能够保存文件:它应把 Markdown 笔记保存在仓库之外、所有后续子智能体都能访问的目录中。这让实施者子智能体可以专心实现,而非探查。
-
创建集成分支。如果 issue 跟踪器通过 PR 关闭工作,或者用户要求一个 PR,则在步骤 5 的第一次合并之后开一个 draft PR(一个在 main 之上没有 commit 的分支开不了 PR),并标记为关闭对应的 spec 与 ticket。
-
使用实施者子智能体逐一实现每张 ticket,每个都在自己的 worktree、自有的分支上工作。每个实施者子智能体:
- 开始前先确认其 worktree 基于集成分支,如果不是则重置到该分支;
- 调用 Skill 工具并传入
tdd来构建 ticket; - 在报告完成之前,把集成分支的顶部合并进自己的分支。
-
一旦某个实施者子智能体完成,使用一个合并子智能体将其工作合并进集成分支。
-
如果这改变了可领取 ticket 的前沿,立刻启动更多实施者子智能体去处理新出现的 ticket。这保证了最大并发。
-
所有 ticket 完成后,对集成分支调用 Skill 工具并传入
code-review。用一个实施者子智能体一次性修复 code review 提出的全部问题。 -
如果存在 draft PR,将它标记为 ready for review。否则,按 issue 跟踪器关闭工作的方式逐张解决 ticket,并报告集成分支。
-
清理所有实施者子智能体的 worktree。