SKILL.md
readonlyread-only
name
team-builder
description
互動式代理挑選器,用於組合與派遣平行團隊
Team Builder
互動式選單,可隨需瀏覽與組合代理團隊。支援平面或領域子目錄的代理集合。
使用時機
- 你有多個代理角色(Markdown 檔案),想挑選哪些要用於某項任務
- 你想從不同領域(例如安全 + SEO + 架構)組成臨時團隊
- 你想在決定前先瀏覽有哪些可用的代理
前置需求
代理檔案必須是包含角色提示(身份、規則、工作流程、交付物)的 Markdown 檔案。第一個 # Heading 作為代理名稱,第一個段落作為描述。
支援平面與子目錄兩種佈局:
子目錄佈局 — 領域從資料夾名稱推斷:
agents/
├── engineering/
│ ├── security-engineer.md
│ └── software-architect.md
├── marketing/
│ └── seo-specialist.md
└── sales/
└── discovery-coach.md
平面佈局 — 領域從共用的檔案名稱前綴推斷。當 2 個以上檔案共用相同前綴時,該前綴視為一個領域。具有唯一前綴的檔案歸入「一般」。注意:演算法在第一個 - 處分割,因此多字領域(例如 product-management)應改用子目錄佈局:
agents/
├── engineering-security-engineer.md
├── engineering-software-architect.md
├── marketing-seo-specialist.md
├── marketing-content-strategist.md
├── sales-discovery-coach.md
└── sales-outbound-strategist.md
設定
代理透過兩種方式發現,並依代理名稱合併與去重:
claude agents指令(主要)— 執行claude agents取得 CLI 已知的所有代理,包括使用者代理、外掛代理(例如ecc:architect)與內建代理。這會自動涵蓋 ECC 市集安裝,無需任何路徑設定。- 檔案 Glob(備用,用於讀取代理內容)— 從以下位置讀取代理 Markdown 檔案:
./agents/**/*.md+./agents/*.md— 專案本地代理~/.claude/agents/**/*.md+~/.claude/agents/*.md— 全域使用者代理
名稱衝突時,較早的來源優先:使用者代理 > 外掛代理 > 內建代理。如果使用者指定自訂路徑,則可改用該路徑。
運作方式
步驟 1:發現可用代理
執行 claude agents 取得完整代理清單。解析每一行:
- 外掛代理 以
plugin-name:為前綴(例如ecc:security-reviewer)。使用:後的部分作為代理名稱,外掛名稱作為領域。 - 使用者代理 沒有前綴。從
~/.claude/agents/或./agents/讀取對應的 Markdown 檔案,擷取名稱與描述。 - 內建代理(例如
Explore、Plan)除非使用者明確要求包含,否則跳過。
對於從 Markdown 檔案載入的使用者代理:
- 子目錄佈局: 從父資料夾名稱擷取領域
- 平面佈局: 收集所有檔案名稱前綴(第一個
-之前的文字)。前綴只有在 2 個以上檔案中出現時才視為領域(例如engineering-security-engineer.md和engineering-software-architect.md都以engineering開頭 → Engineering 領域)。具有唯一前綴的檔案(例如code-reviewer.md、tdd-guide.md)歸入「一般」 - 從第一個
# Heading擷取代理名稱。如果沒有標題,則從檔案名稱推導名稱(移除.md,將連字號取代為空格,轉為標題大小寫) - 從標題後的第一個段落擷取一行摘要
如果在執行 claude agents 並探查檔案位置後仍未找到任何代理,通知使用者:「找不到代理。請執行 claude agents 確認你的設定。」然後停止。
步驟 2:顯示領域選單
可用代理領域:
1. Engineering — Software Architect, Security Engineer
2. Marketing — SEO Specialist
3. Sales — Discovery Coach, Outbound Strategist
請選擇領域或指定代理名稱(例如「1,3」或「security + seo」):
- 跳過代理數為零的領域(空目錄)
- 顯示每個領域的代理數量
步驟 3:處理選擇
接受彈性輸入:
- 數字:「1,3」選取 Engineering 和 Sales 的所有代理
- 名稱:「security + seo」對已發現的代理進行模糊比對
- 「all from engineering」選取該領域的每個代理
如果選取了超過 5 個代理,按字母順序列出並要求使用者縮小範圍:「你選了 N 個代理(最多 5 個)。請選擇要保留哪些,或說 'first 5' 使用前五個(按字母順序)。」
確認選擇:
已選取:Security Engineer + SEO Specialist
他們應該處理什麼任務?(請描述任務):
步驟 4:平行啟動代理
- 讀取每個選取代理的 Markdown 檔案
- 如果尚未提供任務描述,則提示輸入
- 使用 Agent 工具平行啟動所有代理:
subagent_type: "general-purpose"prompt: "{agent file content}\n\nTask: {task description}"- 每個代理獨立執行 — 無需代理間通訊
- 如果某個代理失敗(錯誤、超時或空輸出),在結果中內聯記錄失敗(例如「Security Engineer:失敗 — [原因]」),並繼續處理成功代理的結果
步驟 5:綜合結果
收集所有輸出並呈現統一報告:
- 按代理分組的結果
- 綜合部分,重點標示:
- 各代理之間的一致意見
- 建議之間的衝突或矛盾
- 建議的下一步行動
如果只選取了 1 個代理,跳過綜合部分,直接呈現輸出。
規則
- 僅動態發現。 絕不硬編碼代理清單。目錄中的新檔案會自動出現在選單中。
- 每團隊最多 5 個代理。 超過 5 個會產生邊際效益遞減與過多的 token 使用。在選擇時強制執行。
- 平行派遣。 所有代理同時執行 — 使用 Agent 工具的平行呼叫模式。
- 平行 Agent 呼叫,而非 TeamCreate。 此技能使用平行 Agent 工具呼叫進行獨立工作。TeamCreate(Claude Code 中用於多代理對話的工具)僅在代理需要辯論或互相回應時才需要。
範例
使用者:team builder
Claude:
可用代理領域:
1. Engineering (2) — Software Architect, Security Engineer
2. Marketing (1) — SEO Specialist
3. Sales (4) — Discovery Coach, Outbound Strategist, Proposal Strategist, Sales Engineer
4. Support (1) — Executive Summary
請選擇領域或指定代理名稱:
使用者:security + seo
Claude:
已選取:Security Engineer + SEO Specialist
他們應該處理什麼任務?
使用者:Review my Next.js e-commerce site before launch
[兩個代理平行啟動,各自對程式碼庫應用其專業]
Claude:
## Security Engineer 發現
- [發現...]
## SEO Specialist 發現
- [發現...]
## 綜合
兩個代理都同意:[...]
衝突:Security 建議 CSP 封鎖內聯樣式,SEO 需要內聯結構化標記。解決方案:[...]
下一步:[...]






