mcpField
S
subagent-driven-development

subagent-driven-development

github.com/sickn33Agent 工作流48.7k527 次安装1 天前更新
代码仓库

关于 subagent-driven-development

用于按计划执行软件开发任务的工作流技能,面向需要分阶段实现和审查代码的开发者。它为每项任务安排新的子 Agent,并依次进行规格符合性和代码质量审查。

主要功能

  1. 01每项任务使用新的子 Agent
  2. 02先审查规格符合性,再审查代码质量
  3. 03通过审查反馈循环修复问题
  4. 04强调任务依赖和上下文准备
  5. 05要求核验审查版本及命令证据

适用场景

  1. 01按实现计划逐项推进开发任务
  2. 02为独立任务安排实现与双阶段审查
  3. 03在审查发现问题后组织修复和复核

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/sickn33/agentic-awesome-skills --skill subagent-driven-development

安装后在 Claude Code 中输入/subagent-driven-development确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

code-quality-reviewer-prompt.md
implementer-prompt.md
spec-reviewer-prompt.md

详细介绍

子 Agent 驱动开发

通过为每项任务派遣全新的子 Agent 来执行计划,并在每项任务后进行两阶段审查:先审查规范符合性,再审查代码质量。

核心原则: 每项任务使用全新的子 Agent,并进行两阶段审查,有助于提升隔离性和反馈质量;请验证实际质量、延迟和成本。

适用场景

digraph when_to_use {
    "Have implementation plan?" [shape=diamond];
    "Tasks mostly independent?" [shape=diamond];
    "Stay in this session?" [shape=diamond];
    "subagent-driven-development" [shape=box];
    "executing-plans" [shape=box];
    "Manual execution or brainstorm first" [shape=box];

    "Have implementation plan?" -> "Tasks mostly independent?" [label="yes"];
    "Have implementation plan?" -> "Manual execution or brainstorm first" [label="no"];
    "Tasks mostly independent?" -> "Stay in this session?" [label="yes"];
    "Tasks mostly independent?" -> "Manual execution or brainstorm first" [label="no - tightly coupled"];
    "Stay in this session?" -> "subagent-driven-development" [label="yes"];
    "Stay in this session?" -> "executing-plans" [label="no - parallel session"];
}

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

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

宿主和授权前提

仅使用对此任务实际可用且获准使用的委派工具。下文提到的 Task、TodoWrite 和 superpowers 名称是特定于宿主的示例,并非随附能力。随附了三个本地提示词模板;其他 superpowers 技能/模板属于外部依赖。若这些工具不可用,请直接使用等效的任务跟踪器,并独立审查代码和规范,不要声称运行过子 Agent。设置全局并发、成本、时间限制和取消机制;子 Agent 无权扩大授权范围。提交必须遵循既定的仓库工作流并使用指定分支,审查者批准不代表授权推送、合并或发布。完成前,请在经过审查的确切提交版本上检查实际文件和命令证据。

流程

digraph process {
    rankdir=TB;

    subgraph cluster_per_task {
        label="Per Task";
        "Dispatch implementer subagent (./implementer-prompt.md)" [shape=box];
        "Implementer subagent asks questions?" [shape=diamond];
        "Answer questions, provide context" [shape=box];
        "Implementer subagent implements, tests, commits, self-reviews" [shape=box];
        "Dispatch spec reviewer subagent (./spec-reviewer-prompt.md)" [shape=box];
        "Spec reviewer subagent confirms code matches spec?" [shape=diamond];
        "Implementer subagent fixes spec gaps" [shape=box];
        "Dispatch code quality reviewer subagent (./code-quality-reviewer-prompt.md)" [shape=box];
        "Code quality reviewer subagent approves?" [shape=diamond];
        "Implementer subagent fixes quality issues" [shape=box];
        "Mark task complete in TodoWrite" [shape=box];
    }

    "Read plan, extract all tasks with full text, note context, create TodoWrite" [shape=box];
    "More tasks remain?" [shape=diamond];
    "Dispatch final code reviewer subagent for entire implementation" [shape=box];
    "Use superpowers:finishing-a-development-branch" [shape=box style=filled fillcolor=lightgreen];

    "Read plan, extract all tasks with full text, note context, create TodoWrite" -> "Dispatch implementer subagent (./implementer-prompt.md)";
    "Dispatch implementer subagent (./implementer-prompt.md)" -> "Implementer subagent asks questions?";
    "Implementer subagent asks questions?" -> "Answer questions, provide context" [label="yes"];
    "Answer questions, provide context" -> "Dispatch implementer subagent (./implementer-prompt.md)";
    "Implementer subagent asks questions?" -> "Implementer subagent implements, tests, commits, self-reviews" [label="no"];
    "Implementer subagent implements, tests, commits, self-reviews" -> "Dispatch spec reviewer subagent (./spec-reviewer-prompt.md)";
    "Dispatch spec reviewer subagent (./spec-reviewer-prompt.md)" -> "Spec reviewer subagent confirms code matches spec?";
    "Spec reviewer subagent confirms code matches spec?" -> "Implementer subagent fixes spec gaps" [label="no"];
    "Implementer subagent fixes spec gaps" -> "Dispatch spec reviewer subagent (./spec-reviewer-prompt.md)" [label="re-review"];
    "Spec reviewer subagent confirms code matches spec?" -> "Dispatch code quality reviewer subagent (./code-quality-reviewer-prompt.md)" [label="yes"];
    "Dispatch code quality reviewer subagent (./code-quality-reviewer-prompt.md)" -> "Code quality reviewer subagent approves?";
    "Code quality reviewer subagent approves?" -> "Implementer subagent fixes quality issues" [label="no"];
    "Implementer subagent fixes quality issues" -> "Dispatch code quality reviewer subagent (./code-quality-reviewer-prompt.md)" [label="re-review"];
    "Code quality reviewer subagent approves?" -> "Mark task complete in TodoWrite" [label="yes"];
    "Mark task complete in TodoWrite" -> "More tasks remain?";
    "More tasks remain?" -> "Dispatch implementer subagent (./implementer-prompt.md)" [label="yes"];
    "More tasks remain?" -> "Dispatch final code reviewer subagent for entire implementation" [label="no"];
    "Dispatch final code reviewer subagent for entire implementation" -> "Use superpowers:finishing-a-development-branch";
}

提示词模板

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

工作流示例

You: I'm using Subagent-Driven Development to execute this plan.

[Read plan file once: docs/plans/feature-plan.md]
[Extract all 5 tasks with full text and context]
[Create TodoWrite with all tasks]

Task 1: Hook installation script

[Get Task 1 text and context (already extracted)]
[Dispatch implementation subagent with full task text + context]

Implementer: "Before I begin - should the hook be installed at user or system level?"

You: "User level (~/.config/superpowers/hooks/)"

Implementer: "Got it. Implementing now..."
[Later] Implementer:
  - Implemented install-hook command
  - Added tests, 5/5 passing
  - Self-review: Found I missed --force flag, added it
  - Committed

[Dispatch spec compliance reviewer]
Spec reviewer: ✅ Spec compliant - all requirements met, nothing extra

[Get git SHAs, dispatch code quality reviewer]
Code reviewer: Strengths: Good test coverage, clean. Issues: None. Approved.

[Mark Task 1 complete]

Task 2: Recovery modes

[Get Task 2 text and context (already extracted)]
[Dispatch implementation subagent with full task text + context]

Implementer: [No questions, proceeds]
Implementer:
  - Added verify/repair modes
  - 8/8 tests passing
  - Self-review: All good
  - Committed

[Dispatch spec compliance reviewer]
Spec reviewer: ❌ Issues:
  - Missing: Progress reporting (spec says "report every 100 items")
  - Extra: Added --json flag (not requested)

[Implementer fixes issues]
Implementer: Removed --json flag, added progress reporting

[Spec reviewer reviews again]
Spec reviewer: ✅ Spec compliant now

[Dispatch code quality reviewer]
Code reviewer: Strengths: Solid. Issues (Important): Magic number (100)

[Implementer fixes]
Implementer: Extracted PROGRESS_INTERVAL constant

[Code reviewer reviews again]
Code reviewer: ✅ Approved

[Mark Task 2 complete]

...

[After all tasks]
[Dispatch final code-reviewer]
Final reviewer: All requirements met, ready to merge

Done!

优势

与手动执行相比:

  • 明确要求运行相关测试;子 Agent 不会自动遵循 TDD
  • 每项任务使用全新上下文(避免混淆)
  • 独立上下文并不会隔离文件;请分配互不重叠的文件所有权,或使用隔离检出
  • 子 Agent 可以提问(开始工作前和工作期间都可以)

与执行计划相比:

  • 同一会话(无需交接)
  • 持续推进(无需等待)
  • 自动设置审查检查点

效率提升:

  • 无需承担读取文件的开销(控制器会提供全文)
  • 控制器会精确筛选所需上下文
  • 子 Agent 一开始就能获得完整信息
  • 工作开始前就能提出问题(而非事后)

质量关卡:

  • 自我审查可在交接前发现问题
  • 两阶段审查:先审查规范符合性,再审查代码质量
  • 审查循环确保修复确实有效
  • 规范符合性审查可防止过度或不足实现
  • 代码质量审查可确保实现完善

成本:

  • 调用子 Agent 的次数更多(每项任务包括实现者和两位审查者)
  • 控制器需要做更多准备工作(提前提取所有任务)
  • 审查循环会增加迭代次数
  • 但能及早发现问题(比之后调试更省成本)

风险信号

绝不可:

  • 跳过审查(规格合规性或代码质量)
  • 在问题未修复时继续推进
  • 并行派遣多个实现子 Agent(会产生冲突)
  • 让子 Agent 阅读计划文件(应直接提供完整文本)
  • 跳过场景背景说明(子 Agent 需要了解任务的上下文)
  • 忽略子 Agent 的问题(让他们继续之前,先予以回答)
  • 对规格合规性接受“差不多就行”(规格审查员发现问题,就意味着尚未完成)
  • 跳过审查循环(审查员发现问题 = 实现者修复 = 再次审查)
  • 让实现者自我审查来替代实际审查(两者都不可少)
  • 在规格合规性审查通过 ✅ 之前开始代码质量审查(顺序错误)
  • 在任一审查仍有未解决问题时进入下一项任务

如果子 Agent 提出问题:

  • 清楚、完整地回答
  • 根据需要补充背景信息
  • 不要催促他们开始实现

如果审查员发现问题:

  • 由实现者(同一子 Agent)修复
  • 审查员再次审查
  • 重复此流程,直到通过
  • 不要跳过重新审查

如果子 Agent 未能完成任务:

  • 派遣修复子 Agent,并提供具体指示
  • 如果问题更明确,或无法使用子 Agent,控制器可以直接修复;但必须保留审查和验证要求。

集成

必需的工作流技能:

  • superpowers:writing-plans - 制定此技能将执行的计划
  • superpowers:requesting-code-review - 为审查子 Agent 提供代码审查模板
  • superpowers:finishing-a-development-branch - 所有任务完成后结束开发

子 Agent 应使用:

  • superpowers:test-driven-development - 子 Agent 为每项任务遵循 TDD

替代工作流:

  • superpowers:executing-plans - 用于并行会话,而非同一会话中的执行

限制

  • 仅当任务明确符合上述范围时,才使用此技能。
  • 不要将输出视为针对特定环境的验证、测试或专家审查的替代品。
  • 如果缺少必需的输入、权限、安全边界或成功标准,请暂停并请求澄清。

评论

支持 Markdown