Parallel Agents Skill
title: "Parallel Agents" version: "3.0" last_updated: "2026-01-07" tags: [parallel, orchestration, coordination] domains: [engineering] level: intermediate estimated_time: "30min" prerequisites: [] sources:
- "obra/superpowers parallel-agents" enforcement: recommended tad_gates: [Gate3_Implementation_Quality]
来源: obra/superpowers,已适配 TAD 框架
触发条件
当 Claude 面对多个独立的问题(如多个测试失败、多个子系统故障)时,自动应用此 Skill。
TL;DR Quick Checklist
1. [ ] 先分域:按独立问题域/文件/模块分组
2. [ ] 每个并行任务范围可控(输入/输出/不改动清单)
3. [ ] 并行执行前记录冲突风险(文件重叠/共享状态)
4. [ ] 收敛后全量测试;冲突解决策略明确
5. [ ] 产出并行任务定义与合并报告(证据)
Red Flags:
- 模糊任务;未评估冲突;合并后未跑全量测试
核心原则
"并行处理独立问题,而非顺序调查。"
当有多个不相关的失败时,分配给多个 Agent 并发工作,而不是一个一个解决。
使用条件
✅ 适合使用
- 多个不相关的测试失败
- 不同子系统独立故障
- 问题可以在不需要跨上下文理解的情况下解决
❌ 不适合使用
- 失败之间有相互依赖
- 需要全系统理解
- Agent 会干扰共享状态
并行执行流程
Step 1: 按独立域分组
失败列表:
├── auth.test.ts (3 failures) → Agent A
├── payment.test.ts (2 failures) → Agent B
└── user.test.ts (1 failure) → Agent C
Step 2: 创建聚焦任务
每个任务应该是:
- 聚焦 - 一个清晰的问题域
- 独立 - 自包含的上下文
- 具体 - 明确的期望输出
好的任务定义:
## 任务: 修复 auth.test.ts
### 范围
- 文件: tests/auth.test.ts
- 失败数: 3
### 期望输出
- 所有 3 个测试通过
- 不修改其他文件
- 提交修复说明
不好的任务定义:
修复所有失败的测试
Step 3: 并行分发
// 使用 TAD 的 Task tool 并行调度
Promise.all([
dispatchAgent({ task: "Fix auth.test.ts", scope: "auth" }),
dispatchAgent({ task: "Fix payment.test.ts", scope: "payment" }),
dispatchAgent({ task: "Fix user.test.ts", scope: "user" })
]);
Step 4: 收集和整合
收集结果:
├── Agent A: ✅ auth 修复完成
├── Agent B: ✅ payment 修复完成
└── Agent C: ✅ user 修复完成
检查冲突:
- [ ] 是否有文件被多个 Agent 修改?
- [ ] 合并后测试是否全部通过?
Outputs / Evidence / Acceptance
Required Evidence
| Evidence Type | Description | Location |
|---|---|---|
task_defs | 并行任务定义清单(范围/输入/输出) | .tad/evidence/parallel/task-defs.md |
merge_report | 合并与冲突解决报告 | .tad/evidence/parallel/merge-report.md |
test_results | 合并后全量测试结果 | .tad/evidence/tests/ |
Acceptance Criteria
[ ] 并行任务定义完整可追溯(输入/输出/不改动清单)
[ ] 合并冲突被识别与解决;记录决策与影响范围
[ ] 全量测试通过;关键路径验证证据齐备
Artifacts
| Artifact | Path |
|---|---|
| Parallel Task Defs | .tad/evidence/parallel/task-defs.md |
| Merge Report | .tad/evidence/parallel/merge-report.md |
| Test Evidence | .tad/evidence/tests/ |
任务模板
# Parallel Task: [问题域]
## 背景
[简要描述问题]
## 范围限制
- 只处理: [文件/模块列表]
- 不要修改: [其他文件]
## 期望结果
- [ ] [具体验收标准1]
- [ ] [具体验收标准2]
## 上下文
[必要的代码片段或错误信息]
与 TAD 框架的集成
在 TAD 中,并行 Agent 用于:
Blake 执行 → 发现多个独立问题 → 并行 Agents 处理 → 整合结果
↓
[ 此 Skill ]
TAD Subagents 并行使用:
debugging-assistant- 独立 Bug 调查test-runner- 分文件运行测试code-reviewer- 并行审查多个模块
实际案例
场景: 6 个失败分布在 3 个文件
失败分析:
- agent-tool-abort.test.ts: 2 failures
- permission-check.test.ts: 3 failures
- config-loader.test.ts: 1 failure
分组: 3 个独立域
├── Agent 1 → agent-tool-abort.test.ts
├── Agent 2 → permission-check.test.ts
└── Agent 3 → config-loader.test.ts
结果:
- 顺序处理: ~30 分钟
- 并行处理: ~12 分钟
- 冲突: 0
常见错误
| 错误 | 正确做法 |
|---|---|
| 给所有 Agent 相同的模糊任务 | 每个 Agent 有具体范围 |
| 忽略潜在冲突 | 整合时检查文件重叠 |
| 并行处理有依赖的问题 | 只并行处理独立问题 |
| 不验证整合结果 | 合并后运行完整测试 |
关键心态
"并行不是为了更快,而是为了在问题独立时避免不必要的串行等待。"
并行的价值:
- 更快完成独立任务
- 避免上下文切换开销
- 充分利用可用资源
此 Skill 指导 Claude 在面对多个独立问题时采用并行策略。