SKILL.md
readonlyread-only
name
claude-devfleet
description
Orchestrate multi-agent coding tasks via Claude DevFleet — plan projects, dispatch parallel agents in isolated worktrees, monitor progress, and read structured reports.
Claude DevFleet 多代理程式協調
使用時機
當你需要派遣多個 Claude Code 代理程式平行處理編碼任務時使用此技能。每個代理程式在隔離的 git worktree 中執行,並擁有完整工具集。
設定
DevFleet 伺服器是獨立專案,未與 ECC 綁定。請先從其儲存庫安裝並執行:https://github.com/LEC-AI/claude-devfleet
然後透過 MCP 連線到執行中的實例:
claude mcp add devfleet --transport http http://localhost:18801/mcp
首次使用前,請確認監聽 18801 埠的行程是你安裝的 DevFleet 二進位檔(請參閱 localhost MCP 伺服器的 SECURITY.md)。
運作方式
使用者 → "建立一個含認證與測試的 REST API"
↓
plan_project(prompt) → project_id + 任務 DAG
↓
向使用者顯示計畫 → 取得核准
↓
dispatch_mission(M1) → 代理程式 1 在 worktree 中啟動
↓
M1 完成 → 自動合併 → 自動派遣 M2(depends_on M1)
↓
M2 完成 → 自動合併
↓
get_report(M2) → files_changed, what_done, errors, next_steps
↓
回報給使用者
工具
| 工具 | 用途 |
|---|---|
plan_project(prompt) |
AI 將描述分解為包含連鎖任務的專案 |
create_project(name, path?, description?) |
手動建立專案,回傳 project_id |
create_mission(project_id, title, prompt, depends_on?, auto_dispatch?) |
新增任務。depends_on 是任務 ID 字串的列表(例如 ["abc-123"])。設定 auto_dispatch=true 可在依賴條件滿足時自動啟動。 |
dispatch_mission(mission_id, model?, max_turns?) |
在任務上啟動代理程式 |
cancel_mission(mission_id) |
停止執行中的代理程式 |
wait_for_mission(mission_id, timeout_seconds?) |
阻塞直到任務完成(請參閱下方注意事項) |
get_mission_status(mission_id) |
檢查任務進度而不阻塞 |
get_report(mission_id) |
讀取結構化報告(變更的檔案、測試、錯誤、下一步) |
get_dashboard() |
系統概覽:執行中的代理程式、統計資料、近期活動 |
list_projects() |
瀏覽所有專案 |
list_missions(project_id, status?) |
列出專案中的任務 |
關於
wait_for_mission的注意事項: 此工具會阻塞對話最多timeout_seconds秒(預設 600)。對於長時間執行的任務,建議每隔 30–60 秒輪詢get_mission_status,以便使用者看到進度更新。
工作流程:規劃 → 派遣 → 監控 → 報告
- 規劃:呼叫
plan_project(prompt="...")→ 回傳project_id以及包含depends_on鏈和auto_dispatch=true的任務列表。 - 顯示計畫:向使用者呈現任務標題、類型和依賴鏈。
- 派遣:對根任務(空的
depends_on)呼叫dispatch_mission(mission_id=<first_mission_id>)。其餘任務會在依賴完成時自動派遣(因為plan_project為它們設定了auto_dispatch=true)。 - 監控:呼叫
get_mission_status(mission_id=...)或get_dashboard()檢查進度。 - 報告:任務完成時呼叫
get_report(mission_id=...)。與使用者分享重點。
並行性
DevFleet 預設最多執行 3 個並行代理程式(可透過 DEVFLEET_MAX_AGENTS 設定)。當所有插槽滿載時,設有 auto_dispatch=true 的任務會在任務監控器中排隊,並在插槽釋放時自動派遣。檢查 get_dashboard() 以了解目前插槽使用情況。
範例
全自動:規劃並啟動
plan_project(prompt="...")→ 顯示包含任務和依賴的計畫。- 派遣第一個任務(具有空的
depends_on的任務)。 - 其餘任務會在依賴解決時自動派遣(它們設有
auto_dispatch=true)。 - 回報專案 ID 和任務數量,讓使用者知道啟動了什麼。
- 定期輪詢
get_mission_status或get_dashboard(),直到所有任務達到終止狀態(completed、failed或cancelled)。 - 對每個終止任務呼叫
get_report(mission_id=...)— 總結成功項目,並指出失敗項目的錯誤和下一步。
手動:逐步控制
create_project(name="My Project")→ 回傳project_id。- 為第一個(根)任務呼叫
create_mission(project_id=project_id, title="...", prompt="...", auto_dispatch=true)→ 取得root_mission_id。
為每個後續任務呼叫create_mission(project_id=project_id, title="...", prompt="...", auto_dispatch=true, depends_on=["<root_mission_id>"])。 - 對第一個任務呼叫
dispatch_mission(mission_id=...)以啟動鏈。 - 完成時呼叫
get_report(mission_id=...)。
順序執行並審查
create_project(name="...")→ 取得project_id。create_mission(project_id=project_id, title="Implement feature", prompt="...")→ 取得impl_mission_id。dispatch_mission(mission_id=impl_mission_id),然後輪詢get_mission_status直到完成。get_report(mission_id=impl_mission_id)以審查結果。create_mission(project_id=project_id, title="Review", prompt="...", depends_on=[impl_mission_id], auto_dispatch=true)— 由於依賴已滿足,會自動啟動。
指南
- 在派遣前務必與使用者確認計畫,除非他們已同意直接進行。
- 回報狀態時包含任務標題和 ID。
- 如果任務失敗,請在重試前閱讀其報告。
- 在大量派遣前檢查
get_dashboard()以了解代理程式插槽可用性。 - 任務依賴形成 DAG — 請勿建立循環依賴。
- 每個代理程式在隔離的 git worktree 中執行,並在完成時自動合併。如果發生合併衝突,變更會保留在代理程式的 worktree 分支上,供手動解決。
- 手動建立任務時,如果希望它們在依賴完成時自動觸發,請務必設定
auto_dispatch=true。若無此旗標,任務將保持draft狀態。






