Implement Spec

在代码中实现一份 spec。

devcxl 134c011 2 files · 2.0 KB Updated

File contents

你已被提供一份 spec。该 spec 应关联若干 ticket,用以描述如何实现该 spec。

目标是产出一个 PR,在单个分支上实现整份 spec。

这些 ticket 不是一份步骤清单。它们是一张任务图,彼此之间存在阻塞关系。这意味着始终存在一个前沿(frontier):可立即被领走的 ticket。

与子智能体之间的通信应保持精简。通信主要通过上下文指针:指向 spec、ticket、研究笔记与历史 commit。无需重复指针已经能触达的信息。

实施者子智能体应尽可能在后台运行,以获得最大并发

步骤

  1. 阅读 spec 与 ticket。读到足以理解任务图为止。

  2. (可选)使用一个探查子智能体完成 ticket 所需的探查工作:相关的代码库文件或外部文档。确保该探查子智能体能够保存文件:它应把 Markdown 笔记保存在仓库之外、所有后续子智能体都能访问的目录中。这让实施者子智能体可以专心实现,而非探查。

  3. 创建一个分支,以及一个 draft PR。PR 应标记为"关闭"对应的 spec issue 与 ticket。

  4. 使用实施者子智能体逐一实现每张 ticket。每个实施者子智能体应在自己的 worktree、自有的分支上工作。

  5. 一旦某个实施者子智能体完成,使用一个合并子智能体将其工作合并进 PR 分支。

  6. 如果这改变了可领取 ticket 的前沿,立刻启动更多实施者子智能体去处理新出现的 ticket。这保证了最大并发。

  7. 所有 ticket 完成后,对 PR 分支运行 /code-review。用一个实施者子智能体一次性修复 code review 提出的全部问题。

  8. 将 PR 标记为 ready for review。

  9. 清理所有实施者子智能体的 worktree。

devcxl/mattpocock-skills-zh/tree/main/skills/in-progress/implement-spec commit 134c011046

Frequently asked questions

npx skillmds@latest add devcxl/implement-spec