語言:English · 简体中文 · 繁體中文 · 日本語 · 한국어 · Español · Português · 更多語言
Maestro 是一個把專案系統、Git 倉庫和 Coding Agent 連接起來的工程任務執行平台。
你不需要一個一個盯著 Agent 聊天視窗。Maestro 可以從 Linear、TAPD 等專案管理平台讀取新增或待處理的任務,為每個任務建立獨立工作區,準備目標 Git 倉庫,啟動合適的 AI Agent,記錄執行過程,並把結果寫回專案系統。
它不是另一個 Coding Agent。
它解決的是團隊真正使用 Codex、Claude Code、OpenCode 等 Agent 時會遇到的問題:任務從哪裡來、程式碼從哪裡來、Agent 在哪裡執行、多個任務如何並行、結果是否可信、失敗後如何恢復、整個過程如何回顧。
Symphony 證明了專案任務可以驅動 Agent。Maestro 要做的是把這個模式變成一套真正可營運的工程平台。
假設 TAPD 或 Linear 裡新增了一個任務:
使用者同時使用兩張優惠券時,結帳頁會出錯。
使用 Maestro 後,這個任務可以變成一次可追蹤的 Agent 執行:
- Maestro 從 TAPD、Linear 或其他專案系統同步到這個待處理任務。
- Maestro 在自己的執行環境中為這個任務建立一個獨立工作區。
- Maestro 依照設定把目標 Git 倉庫 clone / checkout 到這個工作區。
- Maestro 啟動 Codex、Claude Code、OpenCode 或其他支援的 Agent,並提供任務內容、倉庫副本和可用工具。
- Agent 在這個獨立倉庫副本中分析程式碼,準備程式碼變更、分析結論或評審建議。
- Maestro 記錄 diff、日誌、工具呼叫、執行摘要和相關連結。
- Maestro 把結果寫回專案系統,團隊可以繼續評審、修改或接手。
這裡的重點不是「讓 Agent 自己隨便跑」,而是:
一個專案任務變成了一次有隔離環境、有執行紀錄、可回顧、可接手的 Agent 工程執行。
獨立工作區的意義在於:每個任務都有自己的目錄、倉庫副本、日誌和暫存檔。這樣多個專案、多個任務可以並行處理,彼此不會互相污染;失敗後也更容易清理、回顧和重新執行。
Coding Agent 越來越會寫程式碼,但團隊真正需要的不只是「讓 Agent 寫一段程式」。
團隊還需要回答這些問題:
- 任務從哪個專案系統來?
- 對應哪個 Git 倉庫和分支?
- 應該交給哪個 Agent?
- Agent 在哪裡執行?
- 多個任務如何並行且互不影響?
- 它到底改了什麼?
- 人能不能 review?
- 失敗後怎麼恢復?
- 怎麼知道整個過程發生了什麼?
Maestro 就是圍繞這些問題設計的。
TAPD 或 Linear 裡出現一個 Bug。Maestro 讀取任務,建立獨立工作區,準備目標 Git 倉庫,啟動 Agent,讓 Agent 分析並修改程式碼,然後把 PR 連結、執行摘要和待確認事項寫回任務。
如果一個需求還不清楚,Maestro 可以讓 Agent 先輸出影響範圍、風險、驗收標準和待確認問題,協助團隊判斷是否可以進入開發。
如果任務缺少關鍵上下文,Maestro 可以協助列出假設、阻塞點和需要人工確認的問題,而不是讓 Agent 盲目開始寫程式。
新任務進入專案系統後,Maestro 可以協助判斷它是 Bug、需求、技術債還是評審任務,並給出優先級、風險和下一步建議。
同類任務可以分別交給 Codex、Claude Code 或 OpenCode,團隊可以比較結果、失敗原因、日誌和交付紀錄。
使用本地 memory/mock 流程,不需要連接 Linear、TAPD、GitHub、CNB 或真實 Agent,就可以先理解 Maestro 如何調度任務。
下面說的是 Maestro 目前程式碼中已有的適配能力和模板,不是說這些外部系統被「內建在 Maestro 裡」。Linear、TAPD、GitHub、CNB、Codex、Claude Code 和 OpenCode 都是外部系統或外部工具;Maestro 負責連接和編排它們。
專案系統適配:
- Linear
- TAPD
- Memory,用於本地測試和展示
Agent 適配:
- Codex
- Claude Code
- OpenCode
- Mock,用於本地測試和展示
程式碼平台適配:
- GitHub
- CNB
- Memory,用於本地測試和展示
已有流程模板包括:
memory/no_repo/mocklinear/github/codexlinear/github/claude_codelinear/github/opencode.canarytapd/github/codextapd/cnb/opencodetapd/cnb/claude_code
Maestro 也會繼續支援更多專案系統、程式碼平台、Agent 和任務流程。
專案系統裡的任務
↓
Maestro 讀取/同步任務,並判斷是否應該處理
↓
Maestro 在自己的執行環境中為該任務建立獨立工作區
↓
依照設定把目標 Git 倉庫準備到這個工作區
↓
啟動 AI Agent,並提供任務內容、倉庫副本和可用工具
↓
Agent 產出程式碼變更、分析結果或評審建議
↓
Maestro 記錄 diff、日誌、工具呼叫、摘要和相關連結
↓
Maestro 把結果寫回專案系統,供團隊繼續評審或接手
對開發者來說,可以把 Maestro 理解成幾個可擴展部分:
- 專案系統:任務從哪裡來,例如 Linear 或 TAPD。
- Git 倉庫和程式碼平台:程式碼從哪裡 clone,分支、PR、評審和檢查在哪裡發生。
- Agent:誰來執行,例如 Codex、Claude Code 或 OpenCode。
- 任務流程:這次是修 Bug、分析需求、澄清需求、分診任務,還是做評審建議。
- 工作區和執行環境:每次 Agent 執行在哪裡運行,如何隔離,如何並行。
- 執行紀錄:日誌、diff、任務評論、摘要和其他可回顧資訊。
git clone https://github.com/joosure/Maestro.git
cd Maestro
cd elixir
mise trust
mise install
cd ..
make -C elixir deps
make -C elixir test
make -C elixir build
cd elixir
./bin/symphony \
--i-understand-that-this-will-be-running-without-the-usual-guardrails \
--template memory/no_repo/mock \
--port 4000打開可選 dashboard:
http://localhost:4000
這個 demo 使用記憶體資料和 Mock Agent,是理解專案最安全的方式。
對外品牌使用 Maestro。部分執行時名稱仍然保留
symphony相容命名,包括 CLI 入口和部分環境變數。
本地 demo 跑通後,可以再接入真實專案系統、Git 倉庫和 Coding Agent。
export TAPD_API_USER=...
export TAPD_API_PASSWORD=...
export TAPD_WORKSPACE_ID=...
export SOURCE_REPO_URL=https://github.com/owner/repo.git
export SOURCE_REPO_BASE_BRANCH=main
export SOURCE_REPO_PROVIDER_REPOSITORY=owner/repo
./bin/symphony \
--i-understand-that-this-will-be-running-without-the-usual-guardrails \
--template tapd/github/codex \
--port 4000export LINEAR_API_KEY=...
export LINEAR_PROJECT_SLUG=...
export SOURCE_REPO_URL=https://github.com/owner/repo.git
export SOURCE_REPO_BASE_BRANCH=main
export SOURCE_REPO_PROVIDER_REPOSITORY=owner/repo
./bin/symphony \
--i-understand-that-this-will-be-running-without-the-usual-guardrails \
--template linear/github/codex \
--port 4000連接真實倉庫或高權限憑據前,請先閱讀:
Maestro 是:
- 連接專案系統、Git 倉庫和 Coding Agent 的工程任務執行平台;
- 讓 AI Agent 從真實專案任務開始工作的系統;
- 面向編碼、需求分析、需求澄清、任務分診和評審建議的流程層;
- 協助團隊安全試用、比較和管理不同 Coding Agent 的方式。
Maestro 不是:
- 不是新的大模型;
- 不是 Codex、Claude Code 或 OpenCode 的替代品;
- 不是替團隊跳過評審、測試和發布判斷的工具;
- 不是拿到倉庫權限後就可以放任不管的無人值守系統。
Maestro 仍處於早期活躍開發階段。
適合用於:
- 學習任務驅動的 Agent 工作流;
- 執行本地 memory/mock demo;
- 原型驗證新的系統接入;
- 在受控環境中試驗真實系統。
在以下場景需要額外謹慎:
- 允許 Agent 修改真實倉庫或推送分支;
- 允許 Agent 寫回真實專案系統的狀態或評論;
- 使用高權限憑據或個人 token;
- 讓多個團隊共用同一執行環境;
- 跳過人工評審直接進入測試、發布或上線流程。
基本原則是:
大膽自動化,謹慎加關卡,讓過程始終可見。
Maestro 始於 OpenAI Symphony 的 fork。Symphony 證明了專案任務可以驅動 Coding Agent。Maestro 將這個想法擴展為面向真實工程流程的平台。
Maestro 使用 GNU Affero General Public License version 3 (AGPL-3.0-only) 授權。源自 OpenAI Symphony 的部分保留 Apache-2.0 署名和 notice 要求。使用或分發 Maestro 前,請檢查 LICENSE、NOTICE、LICENSES/Apache-2.0.txt、MODIFICATIONS.md、SOURCE.md 和 THIRD_PARTY_LICENSES.md。