跳至主要內容
cd /blog

Orkestra:大規模協調 AI 代理人

[架構][開源]

> 一個協調器將工作分派給各具專長技能與記憶的專家 AI 代理人。以下說明 Orkestra 如何在正式環境中協調 46 個代理人與 466 項技能。

本文中的數字反映發布當下(2026 年 1 月)的系統狀態。目前最新數字請參見我們的團隊頁面

當我們開始使用 Claude Code 進行開發時,遇到了每個使用 AI 程式設計助理的團隊終究都會碰上的問題:單一代理人無法把每件事都做好。

你可以提示一個代理人扮演資料庫專家,或是安全稽核員,或是前端工程師。但只要你同時要求它身兼這三種角色,品質就會下滑:情境被稀釋,指令彼此矛盾,代理人變成一個什麼都懂一點、卻什麼都做得平庸的通才。

於是我們打造了 Orkestra。

什麼是 Orkestra?

Orkestra 是專為 Claude Code 及類似 AI 程式設計工具打造的代理人協調系統。它會在單一協調器之下,統籌多個各具專長的專家代理人,並將工作分派給最適合的專家。

可以把它想像成一間專為 AI 代理人服務的人力仲介公司:協調器接下任務,判斷該由哪位專家處理,再附上正確的情境資訊進行委派。工作完成後,結果會回流到協調器手上進行整合。

這些數字說明了一切:

組成 數量
專家代理人 46
可重複使用的技能 466
身份原型 27
思維模式 11
溝通風格 10
知識領域 21

角色系統:代理人的 D&D

Orkestra 背後的核心洞察,是代理人的行為源自三個可組合的基本元素:

身份(Identity) 定義代理人「是什麼」。架構師(architect)設計系統結構;除錯者(debugger)追蹤失敗的根本原因;守護者(guardian)落實合規與安全邊界。我們共有 27 種可自由組合的身份原型。

思維模式(Mindset) 定義代理人「如何思考」。分析型思維會將主張建立在證據之上,並量化不確定性;懷疑型思維會質疑假設、尋找反證;探索型思維則擁抱模糊性,嘗試多種做法。

風格(Style) 定義代理人「如何溝通」。技術型風格會納入精確數值、引用具體檔案;精簡型風格會去除贅詞、先給出答案;圓融型風格則在誠實與得體之間取得平衡。

一個代理人會組合這些基本元素:

# architecture-advisor.yaml
identity:
  - knowledge-architect
  - architect
  - strategist
mindset: analytical
style: concise

這樣的組合,會產生一個能設計系統(architect)、跨領域串連知識(knowledge-architect)、設定策略方向(strategist)、以證據與資料思考(analytical)、且溝通不帶贅詞(concise)的代理人。

真正的威力來自組合爆炸:27 種身份 × 11 種思維模式 × 10 種風格,可產生近 3,000 種可能的代理人人格。但你只需要定義對你的工作真正有意義的那些組合。

技能:可重複使用的能力模組

技能是代理人可以呼叫的知識與工作流程,依範圍分為分層系統:

層級 名稱 範圍 範例
K0 基礎 通用方法論 測試優先原則、以證據為本的完成標準
K1 身份 依角色劃分的工作流程 CLI 介面標準、效能作戰手冊
K2 領域 領域專屬知識 資料庫遷移模式、身份驗證機制驗證
K3 技術堆疊 特定技術專屬 Cloudflare 部署、Supabase 操作
K4 專案 僅限本程式碼庫 專案專屬的工作流程與慣例

技能採懶載入方式:代理人在啟動時只會看到技能名稱與說明,完整內容只有在被觸發時才會載入。這讓情境保持精簡,同時使數百項技能都能被發現與運用。

每項技能都包含:

  • 明確的觸發條件(例如「遷移資料庫結構描述時使用」)
  • 逐步操作指引
  • 該工作流程允許使用的工具
  • 成功標準與失敗復原路徑

我們登錄檔中的 466 項技能,涵蓋範圍從 git 工作樹隔離、網路研究工作流程,到部署健康驗證,無所不包。

為何協調很重要

單一代理人架構很快就會撞牆:

情境稀釋。 20 萬 token 的情境視窗聽起來很大,但一旦載入資料庫結構描述、API 文件、測試固件與領域知識,很快就會吃緊。專家代理人則可以只使用目標明確的情境。

指令衝突。 同時要求代理人「徹底但要快」與「什麼都要驗證但別過度工程」,會產生內在張力。專家代理人則因為範圍明確而能化解這類矛盾。

專業深度。 通才型代理人對每件事都略知一二;而由正確的身份與技能組成的專家代理人,則能對自己的領域有深入理解。

Orkestra 採用扁平化協調:一個協調器統籌多個專家代理人,專家代理人不能再衍生出子專家。這能避免複雜度失控,同時仍支援平行作業。

協調器可運用的有效容量高達 220 萬個 token:自身 20 萬 token 的視窗,加上最多 10 個並行子代理人、各自擁有 20 萬 token。單一代理人會耗盡的工作量,在整支艦隊中卻能從容完成。

渲染管線

代理人定義存放於 YAML 中,而 Claude Code 讀取的是 Markdown。Orkestra 以一套確定性的渲染管線,銜接這道落差:

YAML Registries → Jinja Templates → .claude/agents/*.md

操作者編輯 YAML 原始檔,執行 orkestra sync,渲染後的 Markdown 就會出現在 .claude/agents/ 中,Claude Code 隨即讀取到這些變更。

這樣的區分服務於不同對象:

  • YAML 原始檔 包含生命週期中繼資料、標籤、驗證規則,以及供工具使用的淘汰通知
  • 渲染後的 Markdown 只包含模型真正需要的內容:描述、工具、技能與行為指引

這套管線會將身份、思維模式、風格與技能,組合成單一且連貫一致的提示。即使共享部分底層技能,architect-analytical-concise 型代理人所得到的系統提示,也會與 debugger-skeptical-technical 型代理人截然不同。

領域知識:四檔案模式

每個知識領域都遵循一致的結構:

domain-name/
  decisions.md      # Key choices, rationale, consequences
  patterns.md       # Step-by-step guidance and examples
  anti-patterns.md  # Failure modes and remediation
  evolution.md      # Dated log of changes

這種結構是為了服務代理人的情境載入:處理身份驗證相關工作的代理人,會載入 authentication/patterns.md 取得指引,並載入 authentication/anti-patterns.md 以避開已知陷阱。這些檔案的大小經過調整,以利高效載入 — 夠聚焦、才有用;夠全面,才具權威性。

我們維護 21 個頂層領域,涵蓋分析、身份驗證、資料科學、基礎架構、機器學習、效能、安全等等。每個領域都可以再細分出子領域,以取得更細緻的粒度。

價值觀:作業系統

所有代理人都共用一套定義其運作方式的基礎價值觀:

簡潔優先。 使用有效的最簡方案,只有在有正當理由時才增加複雜度。

修正根本原因。 絕不繞過失敗打補丁。若管線失敗,就除錯管線;若測試失敗,就修正程式碼或測試本身。

以證據為本。 將主張標示為「已驗證」(附上基準測試)或「估計」(附上假設)。偵測到模式,不等於問題已獲確認。

情境經濟學。 MCP 工具僅耗用 0.1% 的情境,每次讀取檔案則耗用 2%。在探索程式碼之前,先運用領域專業知識。

這些價值觀會透過渲染管線傳遞給每一位專家代理人,任何代理人都無法透過組合方式繞過它們。

CLI:控制平面

Orkestra 隨附一套用於管理代理人生態系的 CLI:

# Discovery
orkestra agents search "database"
orkestra agents info database-architect

# Validation
orkestra validate --show-warnings

# Rendering
orkestra sync --dry-run
orkestra sync

# Skills
orkestra skills list
orkestra skills info schema-migration-workflow

# Decisions
orkestra decisions search "authentication"

這套 CLI 是「有哪些代理人存在」「它們擁有哪些技能」「系統是否健康」等資訊的唯一真實來源,並會在同步前執行驗證,及早揪出問題。

開源方面的考量

我們打造 Orkestra,是為了解決自己的問題:在複雜的程式碼庫中大規模協調 AI 代理人。但我們發現的這些模式,並不侷限於我們自己的領域。

角色組合系統(身份 + 思維模式 + 風格)適用於任何需要定義代理人人格的團隊。

技能分層系統(K0 至 K4)提供了一套按範圍組織可重複使用能力的心智模型。

渲染管線模式(YAML 原始檔 + 範本 + 生成產物)將工具面的關注點與模型消費面的關注點區分開來。

扁平化協調模型(一個協調者、多個專家)在支援平行作業的同時避免了複雜度爆炸。

Orkestra 是否會走向開源,取決於這些模式對其他使用 Claude Code 開發的人是否有價值。如果你也正撞上我們所描述的那些牆,這套架構或許能幫上忙。

我們學到的事

打造 Orkestra 讓我們明白,協調的重點不在於讓代理人變得更聰明,而在於讓它們變得更專注。

即使指令再完美,單一代理人終究會耗盡情境;即使擁有所有技能,單一代理人依然會搞不清楚該套用哪一項;一個試圖包辦一切的單一代理人,只會在每件事上都做得平庸。

四十位各自在自己領域表現出色的專家,由一個懂得何時該委派的協調器統籌 — 這正是我們得以持續交付的方式。

數字本身沒有架構重要。你可能需要五個代理人,也可能需要五十個。原則始終如一:組合勝過單一能力,專精勝過通才,協調勝過單打獨鬥的英雄主義。


Orkestra 驅動著 Maguyva(我們的程式碼智慧平台)背後的代理人生態系。想進一步了解嗎?歡迎聯絡我們的團隊。

延伸閱讀

更多來自 Maguyva 開發日誌的內容