用Claude Code将实现计划分配给子代理并进行审查
機械翻訳 / Machine-translated
機械翻訳 / Machine-translated
原文链接:用Claude Code将实现计划分配给子代理并进行审查(cccskills)
技能页面:subagent-driven-development
本文结论
安装subagent-driven-development后,可以将Claude Code的实现计划按任务分别交给不同的代理执行。
从各任务的确认到整体审查,工作将一气呵成地推进。
进度会保存到文件中,即使中途中断也能从断点继续。
本文将介绍实际的执行流程、安装方法、请求示例以及使用前需确认的前提条件。
只需提交实现计划并发出一句指令,代理便会担任指挥角色,将任务的实现与审查推进到底。
请用subagent-driven-development将这份实现计划推进到最后。
接受请求的代理首先会准备用于作业的Git工作树(在同一仓库的不同文件夹中进行作业的机制)。
接着读取一遍计划,按任务创建待办事项。
开始之前,会梳理计划中的矛盾,并将共享文件或交接内容的任务组整理成表格,写入进度记录。
之后从任务1开始,依次调用新的负责实现的子代理(分担作业的另一个代理)。
实现负责人的工作涵盖实现、测试、提交,以及将结果写入报告文件。
接着由另一位审查负责人读取差异,分别对规格符合度和代码质量两项作出判定。
所有任务完成后,将使用性能最高的模型对整个分支的变更进行审查。
最后一条消息附带的是代理在过程中自行做出的决策列表——"Rulings I made"。
用户需要确认的内容,将汇总在最终审查结果和决策列表中。
任务之间不会插入"是否继续"的确认。
停下来询问用户的情况仅限以下四种:
本技能将"每个任务使用新的实现负责人""每个任务进行审查""最后的整体审查"三者结合,支撑按计划推进实现。
发布来源为GitHub的obra/superpowers。
同一仓库中还有制定计划和请求审查的技能。
每个任务由不继承前一轮对话经历的全新子代理来实现。
指挥代理会将任务全文提取为指令文件并传递,而不会让其读取整个计划文件。
也不会将前一任务的摘要累积传递,因此实现负责人可以专注于自己的任务。
如果同类型的小修改有多个并列,则统一交给一个子代理处理。
另一方面,不会同时启动多个实现负责人,以避免变更之间产生冲突。
与同一仓库中executing-plans的区别如下:
| 项目 | subagent-driven-development | executing-plans |
|---|---|---|
| 实现主体 | 每个任务使用新的子代理 | 在一个上下文中完成所有任务 |
| 审查时机 | 每个任务后 + 最后的整体审查 | 仅最后审查 |
| 上下文成本 | 每次任务和审查都使用新上下文 | 一个上下文 + 最终审查一次 |
| 共同点 | 在同一会话中运行,使用同一进度记录,任务间不停止 | 同左 |
每个任务中,审查负责人会分别确认规格符合度和质量。
传递给审查负责人的内容包括:指令文件、实现负责人的报告文件,以及汇总了提交列表和差异的文件。
缺少任一判定的报告将不予接受。
即使实现负责人已有自我审查,此审查也不会省略。
若出现重要问题,将进入返工修正流程。
每个任务最多返工5次。
轻微问题不进入返工流程,作为待定项写入进度记录。
待定列表将传递给最终审查,在合并前筛选出需要修正的内容。
进度记录保存在记录文件中,中断后可跳过已完成任务继续进行。
记录文件存放在仓库内的.superpowers/sdd/目录下,按计划分别创建。
该文件夹不纳入Git管理。
已完成的任务会标注完成标记。
会话记忆可能因压缩(compaction)而丢失。
因此恢复时,以记录文件和git log为准,而非自身记忆。
通过这一机制,可以防止将已完成的任务完全重做的失误。
模型按角色选择满足处理需求的最低性能版本。
每次调用都需明确指定模型,不会在未指定的情况下持续使用高成本模型。
| 角色 | 选用模型 |
|---|---|
| 规格明确的1~2个文件的实现 | 速度快、成本低的模型 |
| 跨多个文件的集成或缺陷排查 | 标准模型 |
| 设计决策与最终整体审查 | 性能最高的模型 |
最终审查时,将从分支起点到当前的所有差异汇总后进行读取。
若出现问题,将所有问题统一交给一位修正负责人处理,重新审查仅进行一次。
之后删除作业用文件夹,移交给finishing-a-development-branch,进入合并或Pull Request的选择流程。
安装方式有两种:通过一行命令安装,或让Claude确认后安装。
使用命令安装时,请执行以下内容:
npx skills add https://github.com/obra/superpowers --skill subagent-driven-development
委托Claude安装时,请原文发送以下内容:
次の Agent Skill をインストールしてください。
https://github.com/obra/superpowers/tree/main/skills/subagent-driven-development
まず SKILL.md と付属ファイルの中身を確認し、不審な処理(外部への送信、認証情報の読み取りなど)がないことを確かめてから、~/.claude/skills/subagent-driven-development/ に配置してください。
存放位置:若希望在所有项目中使用,请放在~/.claude/skills/;若仅在特定项目中使用,请放在该项目的.claude/skills/下。
发布来源的文件结构可在GitHub的SKILL.md中确认。
技能包含的内容有:实现负责人、任务审查、重新审查用的指令模板,以及创建作业文件夹和差异文件的3个脚本。
请求内容只需简短说明计划文件的位置和希望完成的事项即可。
请将docs/plan.md中的实现计划,按任务分别交给不同的代理推进。
确认工作树后,计划中的矛盾分析表将写入进度记录。
之后从任务1开始依次推进实现与审查,最后返回整体审查结果和决策列表。
上次的作业中途停止了。
请确认进度记录,从未完成的任务重新开始。
此时将通过记录文件确认已完成的任务,从第一个未完成任务继续。
在返工修正过程中停止的任务,将从下一轮继续处理。
请在每个任务中确认规格与质量,最后对整个分支的变更进行审查。
除每个任务的审查外,还将由性能最高的模型对从分支起点至今的差异进行审查。
待定的轻微问题是否需要修正,也将在此审查中作出判断。
使用本技能需要具备两个条件:实现计划,以及可以调用子代理的环境。
如果没有计划或任务之间联系紧密,将建议手动推进,或返回先行制定计划的阶段。
在无法使用子代理的环境中,executing-plans是替代选项。
作业场所为Git的独立工作区域。
如果从main/master分支开始实现,需要用户明确同意。
附带脚本在bash下运行。
作业文件夹不在Git管理范围内,因此执行git clean -fdx将导致其被删除,请注意。
除四种停止条件外,中途的决策均由代理自行做出。
请务必阅读决策列表,如有与预期不符之处,请指示进行修正。
此外,由于每次任务和审查都使用新的上下文,上下文成本将高于在单一会话中推进的方式。
最终审查参考的是同一仓库中requesting-code-review所包含的审查模板。
单独安装时,请一并安装该技能,以确保按流程正常运行。
许可证为MIT。
安装前请阅读SKILL.md和附带脚本的内容,确认处理内容。
以下介绍同属obra/superpowers、在本技能前后使用的3个技能。
executing-plans:在同一会话中按任务执行已创建的实现计划。
适用于无法使用子代理的环境,或希望在单一上下文中推进的情况。
requesting-code-review:向另一个代理请求代码审查的技能。
subagent-driven-development的最终审查使用该技能的模板。
finishing-a-development-branch:实现完成后确认测试,并选择合并或创建Pull Request继续推进。
是subagent-driven-development最后移交的技能。
不可以。
为避免变更冲突,实现负责人始终按顺序逐一调用。
同类型的小修改并列时,统一交给一个负责人处理。
不需要。
进度保存在按计划分别创建的记录文件中,已完成的任务将被跳过,从断点继续。
即使记录文件丢失,也有从git log恢复状态的流程。
基本上不会。
停止的情况仅限以下四种:破坏性操作、涉及安全的操作、合并或发布等影响工作树外部的操作,以及计划存在严重问题的情况。
其他决策将记录在案,最后以列表形式汇报。
subagent-driven-development是一项将实现计划按任务分配给新的子代理,并在每个任务审查与最终整体审查之间穿插推进的技能。
进度保存在记录文件中,即使是长期作业也能从断点继续。
适合已完成计划与任务拆分、希望尽早发现规格偏差的开发场景。
安装前后请在cccskills页面确认发布来源和相关技能。
本文转载自cccskills的文章「用Claude Code将实现计划分配给子代理并进行审查」。
技能详情及安装方法请参阅cccskills的subagent-driven-development页面。