mcpField
S
subagent-driven-development

subagent-driven-development

github.com/itallstartedwithaideaAgent 工作流4479 次安装29 周前更新
代码仓库

关于 subagent-driven-development

subagent-driven-development 是一项将开发任务分配给隔离子 Agent 的 Agent Skills 技能。协调 Agent 为任务编写规格,并在接纳结果前分别审查规格符合度和代码质量。

主要功能

  1. 01将工作拆分为独立子任务
  2. 02向全新子 Agent 分派任务
  3. 03使用 git worktree 隔离工作
  4. 04审查规格符合度
  5. 05合并前检查代码质量

适用场景

  1. 01并行开发相互独立的模块
  2. 02处理长对话中的开发任务
  3. 03对代码变更执行一致的质量检查
  4. 04隔离尝试复杂实现方案

安装

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

$npx skills add https://github.com/itallstartedwithaidea/agent-skills --skill subagent-driven-development

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

详细介绍

子 Agent 驱动开发

Agent Skills™ 的一部分,由 googleadsagent.ai™ 提供

描述

子 Agent 驱动开发会将每个独立任务分派给一个全新的子 Agent,并为其提供干净的上下文窗口,然后在合并前对输出进行两阶段审查。负责协调的 Agent 会将工作拆解为原子任务,为每项任务编写精确的规范,并启动彼此隔离的子 Agent,避免它们污染对方的上下文或沿用过时的假设。

上下文窗口污染是悄无声息地扼杀 Agent 代码质量的元凶。随着对话变长,早期指令会逐渐淡出,变量名会变得模糊,Agent 也会开始引用已重构的代码。为每项任务分配一个全新的子 Agent,能确保每次实现都从干净的环境开始,只包含相关规范和引用文件。无论会话时长如何,都能持续产出高质量成果。

两阶段审查流程会从不同抽象层次发现缺陷。第一阶段检查是否符合规范:输出是否实现了要求?第二阶段评估代码质量:代码结构是否良好、是否经过测试且易于维护?只有通过这两道关卡的代码才会被纳入代码库。

适用场景

  • 任务可拆解为 3 项或更多独立子任务
  • 对话上下文已变得很大,可能导致连贯性下降
  • 必须并行修改多个文件或模块
  • 复杂实现需要多次尝试并择优选取
  • 需要在所有输出中持续执行质量门槛
  • 用户要求并行或隔离执行任务

工作原理

graph TD
    A[Orchestrator: Decompose Task] --> B[Write Spec for Subtask 1]
    A --> C[Write Spec for Subtask 2]
    A --> D[Write Spec for Subtask N]
    B --> E[Spawn Subagent 1]
    C --> F[Spawn Subagent 2]
    D --> G[Spawn Subagent N]
    E --> H[Stage 1: Spec Compliance Review]
    F --> H
    G --> H
    H --> I{Passes?}
    I -->|No| J[Return to Subagent with Feedback]
    J --> H
    I -->|Yes| K[Stage 2: Code Quality Review]
    K --> L{Passes?}
    L -->|No| J
    L -->|Yes| M[Merge to Main Branch]

协调 Agent 从不直接编写实现代码。它的职责是拆解、编写规范、分派和审查。每个子 Agent 都在隔离的 git 工作树中运行,以防并行实现之间发生冲突。

实现

orchestrator:
  decompose:
    - analyze_task_for_independent_subtasks
    - ensure_each_subtask_has: [clear_input, clear_output, testable_criteria]
    - max_subtask_size: "completable_in_one_session"

  spec_template: |
    ## Subtask: {name}
    **Input**: {files_to_read}
    **Output**: {files_to_create_or_modify}
    **Acceptance Criteria**:
    - {criterion_1}
    - {criterion_2}
    **Constraints**: {architectural_boundaries}
    **Tests**: {required_test_cases}

  dispatch:
    method: "fresh_subagent_per_task"
    isolation: "git_worktree"
    context: "spec_only"  # No conversation history

  review_stage_1_spec_compliance:
    checks:
      - all_acceptance_criteria_met
      - all_required_tests_present_and_passing
      - output_files_match_specification
      - no_unspecified_side_effects

  review_stage_2_code_quality:
    checks:
      - no_linter_errors
      - no_type_errors
      - naming_conventions_followed
      - no_dead_code_or_debug_artifacts
      - error_handling_present
      - documentation_for_public_apis

  merge:
    strategy: "squash_per_subtask"
    commit_message: "feat({subtask_name}): {one_line_summary}"

最佳实践

  • 让子任务规范自成一体——子 Agent 不应需要规范之外的任何上下文
  • 在每份规范中都包含文件路径和相关类型签名
  • 即使代码乍看之下“正确”,也要执行两个审查阶段
  • 将子 Agent 的重试次数限制为 2 次,之后升级给协调 Agent
  • 使用 git 工作树实现并行子 Agent 之间真正的文件系统隔离
  • 对每个子任务执行压缩合并,以保持提交历史整洁

平台兼容性

平台支持情况备注
Cursor完全支持使用原生 Task 工具分派子 Agent
VS Code部分支持需要手动管理子进程
Windsurf完全支持Cascade 支持启动子 Agent
Claude Code完全支持内置子 Agent 支持
Cline部分支持基于插件的子 Agent 支持
aider支持有限不具备原生子 Agent 能力

相关技能

  • Git Worktrees - 隔离的文件系统工作区,可防止子 Agent 覆盖彼此的更改
  • Writing Plans - 编写计划,产出子 Agent 要执行的子任务规范
  • Code Review - 两阶段审查流程,在合并前验证子 Agent 的输出
  • Sandbox Hardening - 执行隔离机制,用于限制子 Agent 的权限和资源使用

关键词

subagent task-decomposition parallel-development two-stage-review context-isolation orchestrator spec-driven fresh-context


© 2026 googleadsagent.ai™ | Agent Skills™ | MIT License

评论

支持 Markdown