🚀 快速安装

复制以下命令并运行,立即安装此 Skill:

npx @anthropic-ai/skills install obra/superpowers/subagent-driven-development

💡 提示:需要 Node.js 和 NPM

子智能体驱动的开发

通过为每个任务分派一个全新的子智能体来执行计划,并在每个任务后进行两阶段审查:首先进行规范符合性审查,然后进行代码质量审查。

核心原则: 每个任务使用全新的子智能体 + 两阶段审查(先规范后质量)= 高质量、快速迭代

何时使用

digraph when_to_use {
    "有实施计划?" [shape=diamond];
    "任务基本独立?" [shape=diamond];
    "在同一会话中执行?" [shape=diamond];
    "subagent-driven-development" [shape=box];
    "executing-plans" [shape=box];
    "手动执行或先进行头脑风暴" [shape=box];

    "有实施计划?" -> "任务基本独立?" [label="是"];
    "有实施计划?" -> "手动执行或先进行头脑风暴" [label="否"];
    "任务基本独立?" -> "在同一会话中执行?" [label="是"];
    "任务基本独立?" -> "手动执行或先进行头脑风暴" [label="否 - 紧密耦合"];
    "在同一会话中执行?" -> "subagent-driven-development" [label="是"];
    "在同一会话中执行?" -> "executing-plans" [label="否 - 并行会话"];
}

与执行计划(并行会话)相比:

  • 相同会话(无需上下文切换)
  • 每个任务使用全新的子智能体(无上下文污染)
  • 每个任务后进行两阶段审查:先规范符合性,后代码质量
  • 迭代更快(任务之间无需人工介入)

流程

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];
    "使用 superpowers: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="否"];
    "分派最终代码审查者子智能体审查整个实现" -> "使用 superpowers:finishing-a-development-branch";
}

模型选择

使用能处理每个角色的最轻量级模型,以节约成本并提高速度。

机械性实施任务(独立的函数、清晰的规范、1-2 个文件):使用快速、便宜的模型。当计划详细明确时,大多数实施任务都是机械性的。

集成和判断任务(多文件协调、模式匹配、调试):使用标准模型。

架构、设计和审查任务:使用最强大的可用模型。

任务复杂性信号:

  • 涉及 1-2 个文件,且有完整规范 → 便宜的模型
  • 涉及多个文件,且有集成问题 → 标准模型
  • 需要设计判断或广泛的代码库理解 → 最强大的模型

处理实施者状态

实施者子智能体会报告四种状态之一。请妥善处理每一种:

DONE(已完成): 进入规范符合性审查。

DONE_WITH_CONCERNS(完成但存疑): 实施者完成了工作,但对某些点表示疑虑。在进行下一步之前,先阅读疑虑。如果疑虑是关于正确性或范围的,请在审查前解决它们。如果只是观察性评论(例如,“这个文件变大了”),记录下来并进入审查。

NEEDS_CONTEXT(需要上下文): 实施者需要未提供的信息。提供缺失的上下文并重新分派。

BLOCKED(受阻): 实施者无法完成任务。评估阻碍原因:

  1. 如果是上下文问题,提供更多上下文,并使用相同模型重新分派
  2. 如果任务需要更多推理,使用更强大的模型重新分派
  3. 如果任务太大,将其分解成更小的部分
  4. 如果计划本身有误,上报给用户

切勿无视上报,或强制同一模型在没有变化的情况下重试。如果实施者表示受阻,说明某些东西需要改变。

提示模板

  • ./implementer-prompt.md – 分派实施者子智能体
  • ./spec-reviewer-prompt.md – 分派规范符合性审查者子智能体
  • ./code-quality-reviewer-prompt.md – 分派代码质量审查者子智能体

工作流程示例

你:我正在使用子智能体驱动开发来执行此计划。

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

任务 1:钩子安装脚本

[获取任务 1 的文本和上下文(已提取)]
[分派实施子智能体,提供完整的任务文本 + 上下文]

实施者:“开始之前 - 钩子应该安装在用户级还是系统级?”

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

实施者:“收到。正在实施...”
[稍后] 实施者:
  - 实现了 install-hook 命令
  - 添加了测试,5/5 通过
  - 自我审查:发现漏掉了 --force 标志,已添加
  - 已提交

[分派规范符合性审查者]
规范审查者:✅ 符合规范 - 满足所有要求,无额外内容

[获取 git SHA,分派代码质量审查者]
代码审查者:优点:测试覆盖率高,代码整洁。问题:无。已批准。

[标记任务 1 完成]

任务 2:恢复模式

[获取任务 2 的文本和上下文(已提取)]
[分派实施子智能体,提供完整的任务文本 + 上下文]

实施者:[无问题,直接开始]
实施者:
  - 添加了验证/修复模式
  - 8/8 测试通过
  - 自我审查:一切正常
  - 已提交

[分派规范符合性审查者]
规范审查者:❌ 问题:
  - 缺少:进度报告(规范要求“每 100 个项目报告一次”)
  - 额外:添加了 --json 标志(未要求)

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

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

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

[实施者修复]
实施者:提取出 PROGRESS_INTERVAL 常量

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

[标记任务 2 完成]

...

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

完成!

优势

与手动执行相比:

  • 子智能体自然遵循 TDD
  • 每个任务有全新的上下文(无混淆)
  • 并行安全(子智能体互不干扰)
  • 子智能体可以提问(在开始之前期间

与执行计划相比:

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

效率提升:

  • 无文件读取开销(控制器提供完整文本)
  • 控制器精确策划所需上下文
  • 子智能体预先获得完整信息
  • 问题在工作开始前(而非之后)浮现

质量关卡:

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

成本:

  • 更多子智能体调用(每个任务一个实施者 + 两个审查者)
  • 控制器做更多准备工作(预先提取所有任务)
  • 审查循环增加迭代
  • 但能尽早捕获问题(比之后调试更便宜)

危险信号

切勿:

  • 未经用户明确同意,在主分支上开始实施
  • 跳过审查(规范符合性代码质量)
  • 在问题未修复的情况下继续
  • 并行分派多个实施者子智能体(会产生冲突)
  • 让子智能体读取计划文件(改为提供完整文本)
  • 跳过场景设置上下文(子智能体需要了解任务所处位置)
  • 忽略子智能体的问题(先回答,再让他们继续)
  • 在规范符合性上接受“差不多就行了”(规范审查者发现问题 = 未完成)
  • 跳过审查循环(审查者发现问题 = 实施者修复 = 再次审查)
  • 让实施者的自我审查取代实际审查(两者都需要)
  • 在规范符合性 ✅ 之前开始代码质量审查(顺序错误)
  • 在任一审查仍有未决问题时,进入下一个任务

如果子智能体提问:

  • 清晰完整地回答
  • 必要时提供额外上下文
  • 不要催促他们立即实施

如果审查者发现问题:

  • 由实施者(同一个子智能体)修复
  • 审查者再次审查
  • 重复直到获得批准
  • 不要跳过重新审查

如果子智能体任务失败:

  • 分派一个修复子智能体,并提供具体指示
  • 不要手动修复(会导致上下文污染)

集成

所需的工作流程技能:

  • superpowers:using-git-worktrees – 必需:在开始前设置隔离的工作空间
  • superpowers:writing-plans – 创建此技能执行的计划
  • superpowers:requesting-code-review – 供审查者子智能体使用的代码审查模板
  • superpowers:finishing-a-development-branch – 所有任务完成后完成开发

子智能体应使用:

  • superpowers:test-driven-development – 子智能体为每个任务遵循 TDD

替代工作流程:

  • superpowers:executing-plans – 用于并行会话而非同会话执行

📄 原始文档

完整文档(英文):

https://skills.sh/obra/superpowers/subagent-driven-development

💡 提示:点击上方链接查看 skills.sh 原始英文文档,方便对照翻译。

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。