| name | sd-parallel |
| description | 当功能计划中有多个独立任务需要并行开发、用户说"并行执行""同时做""分发任务"时使用。通过子代理分发实现并行执行,并对每个子代理的输出做合规审查和质量审查。 |
子代理协作开发
你正在帮助开发者利用子代理并行执行实现计划中的独立任务,提升大型功能的开发效率。
适用场景
- 已有
sd-dev 生成的任务计划(.claude/tasks/[功能名称].md)
- 计划中的任务大部分相互独立(无共享状态或顺序依赖)
- 功能规模较大,顺序执行效率低
不适用场景
- 任务之间有强依赖(修改同一文件、共享状态)
- 只有 1-2 个小任务,不值得分发开销
- 需要频繁与用户交互确认的探索性工作
决策树
有任务计划?
├─ 否 → 先用 sd-dev 生成计划
└─ 是 → 任务大部分独立?
├─ 否 → 在 sd-dev 中顺序执行
└─ 是 → 使用本 skill 并行分发
阶段一:准备
操作:
- 读取
.claude/tasks/[功能名称].md 完整内容
- 读取
.claude/specs/[功能名称].md 获取规格上下文
- 分析任务依赖关系:
- 标记可并行的任务组
- 标记必须顺序执行的任务(共享文件、数据依赖)
- 确认分支或 worktree 已创建(如未创建,先完成)
- 向用户呈现并行计划:哪些任务并行、哪些顺序、预估批次数
阶段二:逐任务分发
对每个任务执行以下流程:
2.1 分发实现子代理
使用当前工具的子代理能力分发任务,prompt 必须包含:
- 完整任务文本:直接粘贴任务内容,不要让子代理去读文件
- 场景上下文:这个任务在整体功能中的位置、与其他任务的关系
- 代码规范:项目使用的模式、命名规范、架构约束
- 明确指令:"开始前先提问,如果有不清楚的地方"
- 自检要求:实现完成后自行检查完整性、测试通过、代码规范
2.2 处理子代理状态
根据子代理返回的结果判断:
- 完成:进入 2.3 审查
- 有疑虑的完成:阅读疑虑内容,如果涉及正确性或范围问题则处理
- 需要上下文:提供缺失信息,重新分发
- 被阻塞:评估原因 — 是上下文不足、任务太大、还是计划有问题?向用户说明
2.3 合规审查
检查子代理的实现是否符合规格:
- 对照规格文档中的对应 FR/NFR 需求
- 逐条检查实现是否覆盖了需求的每个方面
- 检查是否有多余的实现(超出规格范围)
- 如有问题:让子代理修复,再次审查
2.4 质量审查
检查代码质量:
- 代码是否遵循项目规范和模式
- 是否有逻辑错误、边界问题、安全隐患
- 测试是否充分
- 如有问题:让子代理修复,再次审查
重要:必须先通过合规审查,再进行质量审查。顺序不能颠倒。
2.5 失败处理策略
- 合规审查不通过:将具体不合规项反馈给子代理重做,最多重试 1 次;仍不通过则主代理接管修复
- 质量审查不通过:主代理直接接管修复,不再分发
- 子代理超时或异常退出:主代理接管该任务,降级为串行执行
- 同一任务累计失败 2 次:标记为阻塞,报告给用户决策
阶段三:集成验证
所有任务完成后:
操作:
- 运行完整测试套件,确认无集成冲突
- 检查不同子代理的实现之间是否有风格不一致
- 如果有冲突或不一致,统一修复
- 向用户呈现完成总结
常见陷阱
- 给子代理传文件路径而非完整内容:子代理可能读不到或上下文不足
- 同时让多个子代理修改同一个文件:会产生冲突
- 跳过合规审查直接做质量审查:可能在错误的实现上优化代码质量
- 子代理报告"完成"就直接信任:必须独立验证
- 任务拆分粒度过大:每个子代理任务应该可在合理时间内完成
必须停止
遇到以下情况时,停下来重新评估:
- 多个子代理修改了同一个文件 — 需要手动解决冲突
- 子代理的实现互相矛盾 — 说明任务拆分有问题,回到计划阶段
- 连续 2 个子代理被阻塞 — 计划可能需要调整
- 你想跳过审查"因为子代理说没问题" — 必须独立验证
- 你想并行分发有依赖关系的任务"节省时间" — 会产生更大的返工成本