---
source: ../../../core/agent-dispatch.md
source_version: 1.0.0
translation_version: 1.0.0
last_synced: 2026-03-24
status: current
---

# 代理派遣與並行協調

> **語言**: [English](../../../core/agent-dispatch.md) | 繁體中文

**版本**: 1.0.0
**最後更新**: 2026-03-20
**適用性**: 使用多代理編排的 AI 輔助開發
**範圍**: 通用 (Universal)
**靈感來源**: [Superpowers](https://github.com/obra/superpowers) — dispatching-parallel-agents、subagent-driven-development (MIT)

---

## 目的

定義 AI 子代理的並行派遣、工作協調與狀態回報標準。確保高效並行化的同時，防止檔案衝突與整合失敗。

---

## 術語表

| 術語 | 定義 |
|------|------|
| 子代理 (Sub-agent) | 由編排器產生的 AI 代理，負責處理特定任務 |
| 獨立域 (Independent Domain) | 與其他任務無共享可變狀態的任務範圍 |
| 狀態協定 (Status Protocol) | 子代理必須回報的標準化回傳狀態 |
| 檔案衝突 (File Conflict) | 多個代理同時修改同一檔案的情況 |

---

## 核心原則 — 先獨立再並行

> **派遣代理並行之前，必須驗證其任務域是獨立的（無共享可變狀態）。**

---

## Prompt 設計原則

每個子代理的 prompt 必須包含：

| 元素 | 說明 |
|------|------|
| **任務邊界** | 明確定義子代理可以操作的檔案與範圍 |
| **禁止清單** | 不可修改的檔案路徑 |
| **回傳格式** | 要求使用標準狀態協定回報結果 |
| **超時機制** | 每個任務的最大執行時間 |

## 狀態協定

子代理必須使用以下狀態之一回報：

| 狀態 | 說明 | 後續動作 |
|------|------|----------|
| `DONE` | 任務成功完成 | 編排器繼續下一步 |
| `BLOCKED` | 遇到無法自行解決的阻礙 | 編排器介入或重新分配 |
| `FAILED` | 任務失敗 | 編排器決定重試或跳過 |
| `NEEDS_REVIEW` | 完成但需要人工審查 | 暫停等待人工確認 |

## 並行派遣條件

在派遣前必須驗證：

| 檢查項目 | 驗證方式 |
|----------|----------|
| 無共享可變檔案 | 比較各任務的檔案路徑清單 |
| 無執行順序依賴 | 驗證任務之間無因果關係 |
| 獨立測試範圍 | 各任務的測試套件不重疊 |

## 衝突解決

當無法完全避免共享狀態時：

1. **序列化** — 將衝突的任務改為依序執行
2. **分區** — 將共享檔案拆分為獨立區段
3. **鎖定** — 對共享資源實施寫入鎖

## 相關標準

- [Git Worktree 隔離](git-worktree.md)
- [分支完成工作流程](branch-completion.md)
- [AI 模型選擇策略](model-selection.md)
- [驗證證據](verification-evidence.md)
