子代理驱动开发Skill subagent-driven-development

子代理驱动开发是一种AI驱动的软件开发方法,通过为每个独立任务派遣新鲜子代理并执行两阶段审查(规格符合性和代码质量),以提高开发效率和质量。关键词:子代理、AI智能体、软件开发、代码审查、TDD、迭代开发、规格符合性、代码质量。

AI智能体 0 次安装 0 次浏览 更新于 3/21/2026

name: subagent-driven-development description: 当在当前会话中执行具有独立任务的实现计划时使用

子代理驱动开发

通过为每个任务派遣新鲜子代理来执行计划,每个任务后进行两阶段审查:首先是规格符合性审查,然后是代码质量审查。

核心原则: 每个任务新鲜子代理 + 两阶段审查(先规格后质量)= 高质量、快速迭代

何时使用

digraph when_to_use {
    "有实现计划吗?" [shape=diamond];
    "任务大部分独立吗?" [shape=diamond];
    "留在此会话中吗?" [shape=diamond];
    "子代理驱动开发" [shape=box];
    "执行计划" [shape=box];
    "手动执行或先头脑风暴" [shape=box];

    "有实现计划吗?" -> "任务大部分独立吗?" [label="是"];
    "有实现计划吗?" -> "手动执行或先头脑风暴" [label="否"];
    "任务大部分独立吗?" -> "留在此会话中吗?" [label="是"];
    "任务大部分独立吗?" -> "手动执行或先头脑风暴" [label="否 - 紧密耦合"];
    "留在此会话中吗?" -> "子代理驱动开发" [label="是"];
    "留在此会话中吗?" -> "执行计划" [label="否 - 并行会话"];
}

vs. 执行计划(并行会话):

  • 相同会话(无上下文切换)
  • 每个任务新鲜子代理(无上下文污染)
  • 每个任务后两阶段审查:先规格符合性,后代码质量
  • 更快迭代(任务间无需人工介入)

流程

digraph process {
    rankdir=TB;

    subgraph cluster_per_task {
        label="每个任务";
        "派遣实现者子代理 (./implementer-prompt.md)" [shape=box];
        "实现者子代理提问吗?" [shape=diamond];
        "回答问题,提供上下文" [shape=box];
        "实现者子代理实现、测试、提交、自我审查" [shape=box];
        "派遣规格审查者子代理 (./spec-reviewer-prompt.md)" [shape=box];
        "规格审查者子代理确认代码匹配规格吗?" [shape=diamond];
        "实现者子代理修复规格差距" [shape=box];
        "派遣代码质量审查者子代理 (./code-quality-reviewer-prompt.md)" [shape=box];
        "代码质量审查者子代理批准吗?" [shape=diamond];
        "实现者子代理修复质量问题" [shape=box];
        "在TodoWrite中标记任务完成" [shape=box];
    }

    "读取计划,提取所有任务完整文本,注意上下文,创建TodoWrite" [shape=box];
    "更多任务剩余吗?" [shape=diamond];
    "派遣最终代码审查者子代理用于整个实现" [shape=box];
    "使用超能力:finishing-a-development-branch" [shape=box style=filled fillcolor=lightgreen];

    "读取计划,提取所有任务完整文本,注意上下文,创建TodoWrite" -> "派遣实现者子代理 (./implementer-prompt.md)";
    "派遣实现者子代理 (./implementer-prompt.md)" -> "实现者子代理提问吗?";
    "实现者子代理提问吗?" -> "回答问题,提供上下文" [label="是"];
    "回答问题,提供上下文" -> "派遣实现者子代理 (./implementer-prompt.md)";
    "实现者子代理提问吗?" -> "实现者子代理实现、测试、提交、自我审查" [label="否"];
    "实现者子代理实现、测试、提交、自我审查" -> "派遣规格审查者子代理 (./spec-reviewer-prompt.md)";
    "派遣规格审查者子代理 (./spec-reviewer-prompt.md)" -> "规格审查者子代理确认代码匹配规格吗?";
    "规格审查者子代理确认代码匹配规格吗?" -> "实现者子代理修复规格差距" [label="否"];
    "实现者子代理修复规格差距" -> "派遣规格审查者子代理 (./spec-reviewer-prompt.md)" [label="重新审查"];
    "规格审查者子代理确认代码匹配规格吗?" -> "派遣代码质量审查者子代理 (./code-quality-reviewer-prompt.md)" [label="是"];
    "派遣代码质量审查者子代理 (./code-quality-reviewer-prompt.md)" -> "代码质量审查者子代理批准吗?";
    "代码质量审查者子代理批准吗?" -> "实现者子代理修复质量问题" [label="否"];
    "实现者子代理修复质量问题" -> "派遣代码质量审查者子代理 (./code-quality-reviewer-prompt.md)" [label="重新审查"];
    "代码质量审查者子代理批准吗?" -> "在TodoWrite中标记任务完成" [label="是"];
    "在TodoWrite中标记任务完成" -> "更多任务剩余吗?";
    "更多任务剩余吗?" -> "派遣实现者子代理 (./implementer-prompt.md)" [label="是"];
    "更多任务剩余吗?" -> "派遣最终代码审查者子代理用于整个实现" [label="否"];
    "派遣最终代码审查者子代理用于整个实现" -> "使用超能力:finishing-a-development-branch";
}

提示模板

  • ./implementer-prompt.md - 派遣实现者子代理
  • ./spec-reviewer-prompt.md - 派遣规格符合性审查者子代理
  • ./code-quality-reviewer-prompt.md - 派遣代码质量审查者子代理

示例工作流

你:我正在使用子代理驱动开发来执行这个计划。

[一次读取计划文件:docs/plans/feature-plan.md]
[提取所有5个任务完整文本和上下文]
[创建包含所有任务的TodoWrite]

任务1:钩子安装脚本

[获取任务1文本和上下文(已提取)]
[派遣实现子代理并完整任务文本 + 上下文]

实现者:"在我开始之前 - 钩子应该安装在用户级还是系统级?"

你:"用户级(~/.config/superpowers/hooks/)"

实现者:"明白。现在实现中..."
[之后] 实现者:
  - 实现了安装钩子命令
  - 添加了测试,5/5通过
  - 自我审查:发现我错过了--force标志,已添加
  - 已提交

[派遣规格符合性审查者]
规格审查者:✅ 规格符合 - 所有要求满足,无额外

[获取git SHA,派遣代码质量审查者]
代码审查者:优点:良好的测试覆盖,干净。问题:无。批准。

[标记任务1完成]

任务2:恢复模式

[获取任务2文本和上下文(已提取)]
[派遣实现子代理并完整任务文本 + 上下文]

实现者:[无问题,继续]
实现者:
  - 添加了验证/修复模式
  - 8/8测试通过
  - 自我审查:全部良好
  - 已提交

[派遣规格符合性审查者]
规格审查者:❌ 问题:
  - 缺失:进度报告(规格说“每100项报告”)
  - 额外:添加了--json标志(未请求)

[实现者修复问题]
实现者:移除了--json标志,添加了进度报告

[规格审查者再次审查]
规格审查者:✅ 现在规格符合

[派遣代码质量审查者]
代码审查者:优点:扎实。问题(重要):魔数(100)

[实现者修复]
实现者:提取了PROGRESS_INTERVAL常量

[代码审查者再次审查]
代码审查者:✅ 批准

[标记任务2完成]

...

[所有任务后]
[派遣最终代码审查者]
最终审查者:所有要求满足,准备合并

完成!

优势

vs. 手动执行:

  • 子代理自然遵循TDD
  • 每个任务新鲜上下文(无混淆)
  • 并行安全(子代理不干扰)
  • 子代理可以提问(在开始前和工作中)

vs. 执行计划:

  • 相同会话(无交接)
  • 持续进展(无需等待)
  • 审查检查点自动

效率提升:

  • 无文件读取开销(控制器提供完整文本)
  • 控制器策划所需上下文
  • 子代理获得完整信息
  • 问题在开始前提出(不是之后)

质量门:

  • 自我审查在交接前捕获问题
  • 两阶段审查:规格符合性,然后代码质量
  • 审查循环确保修复有效
  • 规格符合性防止过度或不足构建
  • 代码质量确保实现良好构建

成本:

  • 更多子代理调用(每个任务实现者 + 2审查者)
  • 控制器做更多准备工作(提前提取所有任务)
  • 审查循环添加迭代
  • 但早期捕获问题(比后期调试更便宜)

红旗

绝不:

  • 跳过审查(规格符合性或代码质量)
  • 进行未修复的问题
  • 并行派遣多个实现子代理(冲突)
  • 让子代理读取计划文件(提供完整文本代替)
  • 跳过场景设置上下文(子代理需要理解任务位置)
  • 忽略子代理问题(在让他们进行前回答)
  • 接受“差不多”在规格符合性上(规格审查者发现问题 = 未完成)
  • 跳过审查循环(审查者发现问题 = 实现者修复 = 再次审查)
  • 让实现者自我审查代替实际审查(两者都需要)
  • 在规格符合性✅之前开始代码质量审查(错误顺序)
  • 当任一审查有未解决问题时移动到下一个任务

如果子代理提问:

  • 清晰完整地回答
  • 如果需要,提供额外上下文
  • 不要匆忙让他们进入实现

如果审查者发现问题:

  • 实现者(相同子代理)修复它们
  • 审查者再次审查
  • 重复直到批准
  • 不要跳过重新审查

如果子代理失败任务:

  • 派遣修复子代理并具体指令
  • 不要尝试手动修复(上下文污染)

集成

所需工作流技能:

  • superpowers:writing-plans - 创建此技能执行的计划
  • superpowers:requesting-code-review - 审查者子代理的代码审查模板
  • superpowers:finishing-a-development-branch - 所有任务后完成开发

子代理应使用:

  • superpowers:test-driven-development - 子代理为每个任务遵循TDD

替代工作流:

  • superpowers:executing-plans - 用于并行会话而不是相同会话执行