本文基於 Agent Deck v1.9.57(2026-06-12 發佈),PR 編號已達 #1408,專案更新極為活躍。
一、為什麼你需要一個 AI 代理管理器?
2026 年的 AI 編碼工具生態已經發生了翻天覆地的變化。一年前,開發者可能只需要一個 Claude Code 或 Aider 就夠了;到了今天,一個典型的中高階開發者工作流程可能是這樣的:
- Claude Code 處理核心業務邏輯
- OpenCode 做程式碼審查
- Codex 寫單元測試
- Gemini CLI 做快速原型驗證
- Pi 做文件生成
算下來,5 個 AI 代理 × 3 個專案 = 15 個終端分頁。這還沒算你手動開的除錯終端、資料庫客戶端、日誌檢視器。
終端分頁地獄
你可能經歷過這些場景:
- 忘了哪個分頁對應哪個代理,
git checkout錯分支 - Claude Code 在等你回覆,但你根本找不到那個分頁
- 想在幾個 Claude 會話之間複製對話思路,只能手動複製貼上
- MCP 設定檔越改越亂,每次換專案都要手動改
現有方案的問題
| 方案 | 問題 |
|---|---|
| 手動開多個終端 | 完全不可管理,分頁爆炸 |
| tmux 手動分割 | 需要記一堆快捷鍵,沒有狀態感知 |
| cc-switch | 桌面 GUI 方案,但缺乏終端級會話管理能力 |
| Aider | 單一工具,無法管理多個代理 |
Agent Deck 就是為了解決這個問題而生的。它不是一個 AI 編碼工具——它是所有 AI 編碼工具的控制中枢。
二、Agent Deck 是什麼?
Agent Deck(GitHub: asheshgoplani/agent-deck)是一個開源的終端會話管理器,專為 AI 編碼代理設計。它基於 tmux 建構,在單一終端視窗中提供 TUI(終端使用者介面),讓你:
- 一眼看到所有 AI 代理的狀態(執行中 / 等待輸入 / 閒置 / 出錯)
- 一鍵在代理之間切換
- Fork 會話,從現有對話分支出新思路
- 可視化管理 MCP 服務和 Claude Skills
- 遠端監控和編排多個 AI 代理(Conductor 功能)
核心理念:不是又一個 AI 編碼工具,而是終端 AI 開發工作流程的控制中枢。
核心數據
| 指標 | 數值 |
|---|---|
| 程式語言 | Go 1.24+ |
| 底層技術 | tmux 多會話管理 |
| 支援平台 | macOS / Linux / WSL |
| 最新版本 | v1.9.57(2026-06-12) |
| PR 編號 | #1408+ |
| 開源授權 | MIT |
三、安裝與初始化(5 分鐘上手)
安裝方式
Agent Deck 提供三種安裝方式,推薦 Homebrew 安裝最省事:
# 方式 1:Homebrew(推薦,macOS / Linux 通用)
brew install asheshgoplani/tap/agent-deck
# 方式 2:快速安裝腳本
curl -fsSL https://raw.githubusercontent.com/asheshgoplani/agent-deck/main/install.sh | bash
# 方式 3:Go install
go install github.com/asheshgoplani/agent-deck/cmd/agent-deck@latest
建立第一個會話
安裝完成後,在終端中執行:
# 啟動 Agent Deck TUI,建立一個名為 project-alpha 的會話
agent-deck session start project-alpha
這時候你會看到一個基於 tmux 的 TUI 介面。如果你還沒有設定任何 AI 代理,Agent Deck 會引導你設定。
基本 TUI 操作
進入 TUI 後,常用的導覽快捷鍵如下:
| 快捷鍵 | 功能 |
|---|---|
j / k 或 ↓ / ↑ |
在會話列表中上下移動 |
gg |
跳到列表頂部 |
G |
開啟全域搜尋(所有 Claude 對話) |
/ |
模糊搜尋所有會話 |
1-9 |
跳到第 N 個根群組 |
? |
檢視完整快捷鍵列表 |
按狀態過濾搜尋(非常實用):
| 快捷鍵 | 過濾狀態 |
|---|---|
! |
僅顯示執行中(Running)的會話 |
@ |
僅顯示等待輸入(Waiting)的會話 |
# |
僅顯示閒置(Idle)的會話 |
$ |
僅顯示出錯(Error)的會話 |
群組內導覽(v1.7.60+ 新增 Alt+ 快捷鍵,僅在當前群組內移動):
| 快捷鍵 | 功能 |
|---|---|
Alt+j / Alt+k |
當前群組內上/下一個會話(不跨越群組邊界) |
Alt+1 ~ Alt+9 |
跳到當前群組內第 N 個會話 |
Alt+g / Alt+G |
當前群組的第一個/最後一個會話 |
Alt+/ |
僅在當前群組內模糊搜尋 |
智慧狀態指示
Agent Deck 透過智慧輪詢即時偵測每個代理的狀態:
| 狀態 | 符號 | 含義 |
|---|---|---|
| 執行中 | ● 綠色 | 代理正在積極工作 |
| 等待中 | ◐ 黃色 | 需要你輸入/回覆 |
| 閒置 | ○ 灰色 | 就緒,等待命令 |
| 出錯 | ✕ 紅色 | 出現錯誤 |
等待中的會話會直接出現在 tmux 狀態欄:按 Ctrl+b,放開,然後按 1-6 直接跳到對應的等待會話。狀態欄會這樣顯示:
⚡ [1] frontend [2] api [3] backend
四、核心功能實戰
4.1 Fork 會話:一個功能多種實作,互不干擾
Fork 是 Agent Deck 最具差異化的功能之一。想像這個場景:你用 Claude Code 設計了一個 API 介面,現在想嘗試兩種不同的實作方案。傳統做法是開一個新會話,從頭把需求再講一遍。有了 Fork,你只需要:
# 在 TUI 中,游標停在要 fork 的會話上
# 按 f → 快速 fork(自動生成名稱)
# 按 F → 自訂 fork 後的名稱和分組
Fork 的核心價值:
- 新會話繼承父會話的完整對話歷史
- 支援 Claude / OpenCode / Pi / Codex 的原生 fork(工具本身的 fork 能力)
- 可以 fork 之後再 fork,探索任意多的分支思路
- 每個分支互不干擾,隨時可以對比
⚠️ 注意:Codex 的 fork 功能需要 codex CLI 版本 ≥ 0.137.0 才能使用。
4.2 MCP Manager:不用碰設定檔也能管理 MCP 服務
MCP(Model Context Protocol)服務讓 AI 代理能存取外部工具(網頁搜尋、瀏覽器自動化、資料庫查詢等)。傳統管理方式需要手動編輯 JSON 設定檔,Agent Deck 把它做成了 TUI 可視化操作:
在 TUI 中按 m 開啟 MCP Manager:
| 操作 | 快捷鍵 |
|---|---|
| 啟用/停用 MCP 服務 | Space(空格鍵) |
| 切換 LOCAL / GLOBAL 作用域 | Tab |
| 按名稱跳轉 | 直接打字 |
MCP 設定位置:~/.config/agent-deck/config.toml
設定範例:
[[mcp_servers]]
name = "web-search"
command = "npx"
args = ["-y", "@anthropic/mcp-server-brave-search"]
在 TUI 中設定完,Agent Deck 會自動重新啟動對應的代理會話來套用變更,完全不需要手動重新啟動。
4.3 Skills Manager:按專案管理 Claude Skills
對於 Claude Code 使用者,Agent Deck 內建了 Skills Manager,讓你可以按專案池化管理 Claude Skills:
在 TUI 中按 s 開啟 Skills Manager(僅對 Claude 會話有效):
- 池化管理:可用技能列表僅來自池(
~/.config/agent-deck/skills/pool),確保 attach/detach 操作可預期 - 專案級狀態:專案狀態寫入
.agent-deck/skills.toml,技能檔物化到.claude/skills目錄 - 打字跳轉:與 MCP Manager 相同的按名稱跳轉互動
這意味著你可以為不同專案設定不同的 Skill 組合,比如:
project-alpha:attached web-search + code-review skillsproject-beta:attached api-testing + docs-generation skills
4.4 MCP Socket Pool:多會話場景下節省 85% 記憶體
當你同時執行多個會話,每個會話都連接同樣的 MCP 服務時,記憶體消耗會成倍增長。Agent Deck 的 MCP Socket Pool 透過 Unix Socket 讓多個會話共享同一個 MCP 行程:
# 在 config.toml 中啟用
[mcp]
pool_all = true
效果:
- 減少 85-90% 的 MCP 記憶體佔用
- MCP 行程崩潰時,約 3 秒內自動重新連線(reconnecting proxy)
- 對上層代理完全透明,無需修改任何程式碼
4.5 每群組獨立的 Claude 設定
當你在同一台機器上管理多個 Claude 帳號(比如個人帳號和工作帳號),Agent Deck 支援為不同群組設定不同的 Claude 認證:
# config.toml
[groups."conductor".claude]
config_dir = "~/.claude-work"
env_file = "~/git/work/.envrc"
查找優先順序:環境變數 > 群組 > 設定檔(profile) > 全域 > 預設
env_file 會在啟動 tmux pane 之前被載入,其中的 export 會成為會話環境的一部分。這對需要不同 API Key 或不同 Claude 工作目錄的場景非常實用。
五、進階玩法:Conductor 編排
什麼是 Conductor?
如果說 Agent Deck 的會話管理是「自動駕駛」,那 Conductor 就是「艦隊司令」。它是一個更高階的抽象層,讓你透過 Telegram / Slack / Discord 遠端監控和編排所有 AI 代理會話。
五分鐘搭建 Telegram 監控
# 1. 透過 @BotFather 建立 Telegram Bot,獲取 token
# 2. 透過 @userinfobot 獲取你的 user ID
# 3. 一鍵執行精靈(自動設定 conductor、bridge daemon、heartbeat)
agent-deck conductor setup work --description "Work fleet"
# 4. 啟動 conductor 會話
agent-deck session start conductor-work
# 5. 在 Telegram 中給你的 bot 發 /status
從此刻起,你所有的 Agent Deck 會話都被一個統一的 conductor 會話監督著:
- 常規問題自動處理
- 重要事項推送到你的手機
- 等待中的工作不會「爛掉」被遺忘
Watcher 設定:讓外部事件喚醒 AI 代理
除了主動查詢,你還可以設定 Watcher,讓外部事件(GitHub 事件、Gmail、ntfy 推送、會議提醒等)「按門鈴」喚醒 conductor。具體設定參考 官方 Watcher 文件。
六、Agent Deck vs 其他方案對比
| 特性 | Agent Deck | cc-switch | 原生 Terminal |
|---|---|---|---|
| 多代理會話管理 | ✅ 全功能 TUI | ❌ 僅模型切換 | ❌ 手動 |
| Fork 會話 | ✅ 繼承對話歷史 | ❌ | ❌ |
| MCP 管理 | ✅ 可視化 TUI | ✅ CLI | ❌ 手動編輯設定檔 |
| Skills 池化管理 | ✅ | ❌ | ❌ |
| MCP Socket Pool | ✅ 節省 85%+ 記憶體 | ❌ | ❌ |
| 遠端監控 | ✅ Conductor | ❌ | ❌ |
| 跨代理支援 | ✅ 全代理 | ✅ 部分 | ❌ |
| Git Worktree 整合 | ✅ 完整支援 | ❌ | ❌ 手動 |
| 按狀態過濾搜尋 | ✅ 4 種狀態 | ❌ | ❌ |
| 平台支援 | macOS / Linux / WSL | macOS / Linux | 全平台 |
七、總結
Agent Deck 解決的不是「哪個 AI 編碼工具更好」的問題——它解決的是當你在用多個 AI 工具時,如何讓它們協同工作而不把你逼瘋的問題。
核心價值回顧:
- 一站式控制:一個終端視窗管理所有 AI 代理,告別分頁地獄
- Fork 會話:從現有對話分支出新思路,無需重新講述需求
- 可視化 MCP/Skills 管理:不再需要手動編輯設定檔
- MCP Socket Pool:多會話場景下大幅降低記憶體消耗
- Conductor 遠端監控:透過 Telegram / Slack 隨時掌控 AI 代理狀態
- Git Worktree 整合:多代理協同開發同一儲存庫,互不衝突
如果你已經開始面臨「AI 代理過多」的問題,Agent Deck 是目前這個細分領域最成熟的開源方案。而且它更新極快(v1.9.56 → v1.9.57 僅隔 4 小時),社群活躍(PR #1408+),值得持續關注。
相關連結:
相關文章推薦: