部落格

2026 年如何透過 ACP 將 Codex、Claude Agent 和 OpenCode 連接至 Devin Desktop

Markdown

如何透過 ACP 通訊協定,在 Devin Desktop 編輯器中連接 Codex、Claude Agent 和 OpenCode。安裝指令、設定與方案。

閱讀全文

2 分鐘了解 ACP

重點

ACP 是編輯器與 AI 代理程式之間的開放通訊標準。ACP 採用 Apache 2.0 授權並以 JSON-RPC 為基礎,讓你將 OpenAI、Anthropic、Google 和獨立團隊的代理程式連接到同一個編輯器,並透過相同介面與它們互動。

2025 年 8 月,Zed Industries 將 Agent Client Protocol 發布為開放規格。到了 2025 年底,JetBrains 正式加入開發,並於 12 月宣布在 IDE 25.3 RC 中支援 ACP。概念很簡單:市面上有數十種 AI 編輯器和數十種代理程式,而過去每一種編輯器與代理程式的組合都需要自己的整合層。ACP 將兩者之間的層標準化。

Agent Client Protocol 是一項開放標準,讓任何代理程式都能輕鬆整合至任何編輯器。

— Zed,https://zed.dev/acp

常見的比喻是,ACP 對 AI 代理程式就像 LSP 對語言伺服器一樣。Microsoft 發布 LSP 後,就不再需要分別為 Python、Rust 和 Go 撰寫 VS Code 整合。各語言只要依照標準執行 LSP 伺服器,任何支援 LSP 的編輯器都能與之整合。

截至 2026 年 6 月,規格已穩定在第 1 版。TypeScript、Python、Rust、Java 和 Kotlin 的官方 SDK 均已發布。已有 12 項產品宣布在編輯器中支援 ACP:Zed(原生支援,也是此通訊協定的創作者)、從 2025.3 開始的 JetBrains IDE、VS Code、Neovim、Emacs、marimo,以及另外 5 項較小眾的產品。Cognition 推出的編輯器 Devin Desktop 則與眾不同:它於 2026 年 6 月 2 日推出,從一開始就將 ACP 作為介面的核心。

Ailoot 的使用資訊請參閱文件。

開始之前需要安裝什麼?

重點

你需要 Devin Desktop 3.0.21 或更新版本(於 2026 年 6 月 4 日發布)、Pro、Max 或 Teams 方案的使用權,以及已安裝三種代理程式的 CLI 工具:Codex、Claude 和 OpenCode。沒有 CLI,編輯器就無法指示它們啟動。

Devin Desktop 的 ACP 功能受訂閱方案限制。免費方案 Free 不支援透過 ACP 使用第三方代理程式。文件明確說明:

Pro、Max 和 Teams 使用者可以使用 ACP 代理程式。

— Devin Docs,https://docs.devin.ai/desktop/acp

Pro 每月 $20。對想試用三種代理程式組合的個人 vibe coder 來說,這就足夠了。每月 $200 的 Max 只有在你持續於背景執行 Devin Cloud 時才需要。Teams 每個團隊 $80,另加每位成員 $40,適合需要共用 Spaces 的團隊。

目前 Devin Desktop 中 ACP 的主要限制是,編輯器不會自行從登錄檔下載代理程式。

Devin Desktop 目前尚未直接從登錄檔下載代理程式發行套件。

— Devin Docs,https://docs.devin.ai/desktop/acp

也就是說,你必須事先手動安裝三種 CLI:Codex、Claude 和 OpenCode。安裝好二進位檔後,編輯器才會將它們辨識為可連接的代理程式。

在 macOS 和 Linux 上最快的安裝方式:

# Codex CLI from OpenAI
npm install -g @openai/codex

# Claude Code from Anthropic (the ACP adapter is provided by the community adapter claude-agent-acp below)
npm install -g @anthropic-ai/claude-code

# OpenCode (open source)
curl -fsSL https://opencode.ai/install | bash

執行每個指令後,請確認二進位檔可透過 PATH 使用:

codex --version
claude --version
opencode --version

如果指令沒有回應,可能是 npm 將二進位檔放在 PATH 之外,或 curl 因網路逾時而失敗。此時不該繼續,請先修正安裝問題。

Devin Desktop 在哪裡尋找代理程式?

重點

Devin Desktop 中所有 ACP 代理程式都宣告在 ~/.windsurf/acp/registry.json。這是一個一般的 JSON 檔案,內含物件清單,列出各平台代理程式的 id、name、version、description 和二進位檔路徑。自訂代理程式也採用相同格式,編輯器下次啟動時就會自動載入。

Cognition 保留了大家熟悉的 Windsurf 路徑,沒有將 .windsurf 改成 .devin。這很方便:你原有的設定仍可照常使用。

本機代理程式登錄檔設定位於 Devin Desktop 的 ~/.windsurf/acp/registry.json,以及 Devin Desktop Next 的 ~/.windsurf-next/acp/registry.json。

— Devin Docs,https://docs.devin.ai/desktop/acp

登錄檔中的單一代理程式項目如下:

{
  "id": "codex-cli",
  "name": "Codex",
  "version": "0.42.0",
  "description": "OpenAI's coding agent",
  "authors": ["OpenAI"],
  "license": "Apache-2.0",
  "distribution": {
    "binary": {
      "darwin-arm64": {
        "path": "/opt/homebrew/bin/codex",
        "args": ["--acp"]
      },
      "darwin-x64": {
        "path": "/usr/local/bin/codex",
        "args": ["--acp"]
      },
      "linux-x64": {
        "path": "/usr/local/bin/codex",
        "args": ["--acp"]
      },
      "win32-x64": {
        "path": "C:\\Program Files\\codex\\codex.exe",
        "args": ["--acp"]
      }
    }
  }
}

關鍵欄位是 path,用來指定磁碟上可執行 CLI 檔案的位置。如果透過 npm 安裝,路徑通常是 ~/.nvm/.../node/.../bin/codex 或 /usr/local/bin/codex。你可以用 which codex 找出路徑。

args 欄位指定 Devin Desktop 在啟動指令中要加入的參數。啟動 CLI 的 ACP 伺服器模式,並透過 stdin/stdout 使用 JSON-RPC 與編輯器通訊,需要 --acp 旗標。若沒有這個旗標,CLI 就會以一般互動模式啟動,Devin Desktop 也無法辨識它。

編輯前請先備份 registry.json。這裡只要有一個 JSON 檔案格式錯誤,就會阻擋所有 ACP 代理程式:

cp ~/.windsurf/acp/registry.json ~/.windsurf/acp/registry.json.backup

接著在編輯器中開啟檔案,並將代理程式區塊加入 agents 陣列。

連接 OpenAI Codex CLI

重點

Codex CLI 透過 npm 安裝。使用 OpenAI API 金鑰或 ChatGPT 訂閱執行 codex auth login,將區塊加入 registry.json,並在 Devin Settings 中啟用代理程式。三者之中 Codex 速度最快,適合重視速度和建構基本架構勝過推理品質的工作。

步驟一:驗證身分。沒有驗證,CLI 就無法呼叫 API:

codex auth login

指令會開啟瀏覽器。如果你有 ChatGPT Plus 或 Team,會透過你的帳戶完成驗證,不需要另外準備 API 金鑰。如果沒有 ChatGPT 訂閱,就會要求你提供 platform.openai.com 的 API 金鑰。

步驟二:確認它能在一般模式下運作:

codex run "write hello world in python"

如果收到回應,而且 ~/.codex/sessions/ 中出現一筆項目,就表示 CLI 正常運作。現在可以將它連接到編輯器。

步驟三:將區塊加入 ~/.windsurf/acp/registry.json。使用上方章節的結構,並以 which codex 的結果填入 path:

which codex
# /opt/homebrew/bin/codex

步驟四:在編輯器中啟用代理程式。在 Devin Desktop 開啟命令面板:

  • macOS 按 Cmd+Shift+P
  • Windows 和 Linux 按 Ctrl+Shift+P

從命令面板執行 Devin User Settings。在開啟的視窗中切換到 Agents 分頁。編輯登錄檔後,清單中應該會出現 Codex。將旁邊的開關切換為「開啟」。

啟用後,Agent Command Center 會出現新的欄位。你可以將任務指派給 Codex,由它完成。

在此處描述的測試中,Codex 是三者中回答最快的,完成「為這個函式加入記錄」約花 8 秒。Claude 完成相同任務花了 16 秒,OpenCode 則是 22 秒。

適合使用 Codex 的情況:

  • 需要快速產出標準程式碼,不需要長時間推理
  • 撰寫建構基本架構的程式碼,並打算連續進行許多小幅修改
  • 根據既有規格工作,而且解法很明確

不適合使用 Codex 的情況:

  • 需要權衡取捨的複雜架構任務:它常會走捷徑
  • 需要審慎而平衡回應的法律敏感程式碼:Claude 是較好的選擇
  • 如果你習慣微調提示並使用自己的規則:Claude 的工具更有彈性

連接 Anthropic 的 Claude Agent

重點

Devin Desktop 中的 Claude Agent 是原生 Claude Code 二進位檔與開源社群轉接器 claude-agent-acp 的組合。轉接器會以 ACP 伺服器模式執行 Claude Code。可透過 Claude Pro 訂閱或 Anthropic API 金鑰驗證。這種組合的優勢是推理品質良好,也能有效處理大型程式碼庫。

Anthropic 尚未以「Claude Agent」之名發布自家的 ACP 二進位檔。Devin Desktop 使用的仍是一般 Claude Code,但透過一個 shim 轉接:claude-agent-acp 是該通訊協定儲存庫中的轉接器,採用 Apache 2.0 授權。

步驟一:驗證 Claude Code:

claude auth login

如果你有 Claude Pro 或 Max 訂閱,會透過你的帳戶完成驗證;否則會要求你提供 console.anthropic.com 的 API 金鑰。

步驟二:確認它能運作:

claude "rewrite this function so it returns Result<T, E>"

如果 CLI 有回應,就可以安裝轉接器並連接到編輯器。

步驟三:安裝轉接器:

npm install -g @agentclientprotocol/claude-agent-acp

步驟四:將區塊加入 registry.json。path 欄位指向轉接器二進位檔,而不是 claude 本身:

{
  "id": "claude-agent",
  "name": "Claude Agent",
  "version": "0.4.0",
  "description": "Anthropic's coding agent (community ACP adapter)",
  "authors": ["Anthropic", "ACP community"],
  "license": "Apache-2.0",
  "distribution": {
    "binary": {
      "darwin-arm64": {
        "path": "/opt/homebrew/bin/claude-agent-acp",
        "args": []
      }
    }
  }
}

步驟五:在 Devin Settings 的 Agents 分頁中啟用它。

在此處描述的測試中,Claude Agent 最能處理大型任務。對於「將這個 600 行的元件拆成三個檔案,同時保留所有匯入和測試」這項任務,Codex 兩次都忘了這個元件有三個呈現位置;Claude 第一次就全部注意到了。

Claude Agent 有與 Claude Code 相同的缺點:

  • 簡單任務的速度比 Codex 慢
  • 如果使用 API 而非訂閱,每次呼叫的費用較高

想設定一組 AI 代理程式來共同處理任務,而不是讓二進位檔變成動物園嗎?連接它們只是技術層面的工作。更重要的是知道如何分配上下文,讓每個代理程式都清楚其他代理程式已經完成的工作。這屬於 context engineering 的一部分:系統的三個要素之一——你的 AI 分身、專案的 Second Brain,以及每項任務的 context engineering。完成後,代理程式使用哪種通訊協定就不重要了;它們的運作方式都一樣。

連接 OpenCode:免費替代方案

重點

OpenCode 是由獨立社群開發的開源 ACP 代理程式。它可搭配任何相容於 OpenAI 的 API,包括透過 Ollama 使用的本機 API。安裝和本機執行都免費。它的優勢是可完全離線執行,也可使用 Qwen 等低成本模型。

OpenCode 在 2026 年初以 Claude Code 開源替代方案之姿推出。到了 6 月,其儲存庫已累積超過 30,000 顆星星,文件已翻譯成十多種語言,並提供 Ollama 和 vLLM 的現成預設設定。

使用指令碼安裝:

curl -fsSL https://opencode.ai/install | bash

確認:

opencode --version

接著設定 OpenCode 要使用的模型。若要完全在本機執行,請啟動 Ollama,並將 OpenCode 指向它:

opencode config set provider ollama
opencode config set base_url http://localhost:11434
opencode config set model qwen3.5-coder:32b

在 Ailoot 說明文件中尋找工具使用指南

接著將區塊加入 registry.json:

{
  "id": "opencode",
  "name": "OpenCode",
  "version": "0.18.1",
  "description": "Open source coding agent",
  "authors": ["OpenCode community"],
  "license": "MIT",
  "distribution": {
    "binary": {
      "darwin-arm64": {
        "path": "/usr/local/bin/opencode",
        "args": ["acp"]
      }
    }
  }
}

在 Devin Settings 中啟用它即可。

在此處描述的測試中,使用 Qwen 3.5 Coder 的 OpenCode 明顯比 Codex 和 Claude 慢,每項任務平均需要 22–25 秒,競爭對手則是 8–16 秒。另一方面,它完全免費,而且沒有任何團隊能撤銷你的使用權。

適合使用 OpenCode 的情況:

  • 你有本機 GPU,想離線執行程式設計任務

  • 你正在做學習專案,還不想花錢使用 API

  • 你想比較開源模型與封閉模型之間的差距

不適合使用 OpenCode 的情況:

  • 你需要接近 Claude 的品質;開源模型目前還沒有追上
  • 使用 50K+ token 上下文的大型架構任務;本機模型常會失去脈絡
  • 速度至關重要;即使使用 4090,OpenCode 還是比雲端 Codex 慢

Spaces:在代理程式之間共用上下文

重點

Spaces 是 Devin Desktop 中的群組,代理程式可以互相查看對方的上下文。每個專案使用一個 Space。如果 Codex 在其中撰寫測試,Claude 就能確切知道是哪一個測試,不必再聽一次說明。Pro 方案提供此功能。

以前在 Windsurf 中,每個代理程式都有自己的工作階段。你先啟動 Cascade,再啟動 Codex,它們彼此並不了解對方的工作。Cognition 透過 Spaces 解決了這個問題。

我們打造了 Spaces,讓共同工作的代理程式能共用上下文,並有效地協作完成任務。

— Cognition Blog,https://cognition.ai/blog/introducing-devin-desktop

在 Space 中,代理程式可以查看:

  • 其他代理程式所做的檔案變更
  • 最近任務和決策的歷史記錄
  • 共用提示上下文(例如你的 CLAUDE.md 或 AGENTS.md)
  • 進行中的提取要求及其留言

建立 Space 的步驟:

  1. 開啟 Agent Command Center(Devin Desktop 頂端列中的按鈕)
  2. 點擊右上角的「New Space」
  3. 將專案資料夾連結到 Space
  4. 從 Settings 中已啟用的代理程式裡加入所需項目

使用三種代理程式的工作模式:

  1. Codex 在 Space 中撰寫第一版實作草稿
  2. Claude Agent 查看 Codex 的成果、檢閱程式碼,並重構及整理複雜的部分
  3. OpenCode 為最終版本撰寫測試

三者使用相同的 AGENTS.md(共用的專案規則檔)和相同的任務檔案。你不必重複提供上下文。

三個專案的測試顯示兩件事。第一,從開始任務到完成提取要求的時間縮短了約三分之一,因為代理程式不必彼此重複傳遞資訊。第二,手動介入的需求增加了,因為 Codex 和 Claude 有時會將程式碼帶往不同方向。嚴謹撰寫 AGENTS.md 很有幫助。

如果你還沒有自己的 AGENTS.md,請參閱指南如何一起使用 AGENTS.md 和 CLAUDE.md:其中介紹一份讓三種代理程式都能讀取的單一指示檔案。

什麼時候該使用哪個代理程式?

重點

介紹在 Devin Desktop 中切換使用 Codex、Claude Agent 和 OpenCode 的五種實用情境。每種情境都是業務上的決策,而非模型比較。

模式 1:30 分鐘內完成標準功能

新增資料表的 CRUD、包含兩個欄位的表單、簡單的網站頁面。選擇 Codex。它會在 5 分鐘內寫好,你可以檢閱並發布。Claude 在這種工作上會花太多時間思考。OpenCode 則不夠快。

模式 2:需要權衡取捨的架構任務

你需要決定是否將這部分抽取成獨立服務,或保留在單體式架構中。也可能要為現有專案在 Redux 和 Zustand 之間做選擇。選擇 Claude。它能權衡各種論點。Codex 會不加討論地給你一個「解決方案」,而且很可能是錯的。

模式 3:為已完成的程式碼補上測試涵蓋率

其中一個代理程式寫好程式碼後,改用 Claude 或 OpenCode 撰寫測試。Codex 不太擅長判斷哪些邊界案例值得注意。Claude 比其他代理程式更擅長測試複雜的商業邏輯,而 OpenCode 則擅長撰寫 API 整合測試。

模式 4:離線本機開發

在飛機上、火車上,或沒有網路的鄉間小屋。Codex 和 Claude 需要 API,因此無法使用。搭配 Ollama 和本機模型的 OpenCode 是唯一選項。品質較低,但仍然可以寫程式碼。

模式 5:比較三種答案

如果不確定哪種做法正確,就透過 Spaces 將相同任務交給三種代理程式。比較三種答案,選出最佳方案或加以整合。這會耗費更多 token,但用於關鍵任務時值得。

在此處描述的工作節奏中,60% 的任務交給 Codex(速度)、30% 交給 Claude(品質),10% 交給 OpenCode(離線)。在這個例子中,每週會在 Spaces 中啟動三者共同處理一項困難任務,以比較它們提出的方案。

Devin Desktop 方案與代理程式訂閱

重點

ACP 代理程式僅在 Pro(每月 $20)、Max($200)或 Teams(每個團隊 $80,另加每位成員 $40)方案中啟用。代理程式本身的訂閱費用另計。

付費使用 Devin Desktop 後,每個 ACP 代理程式仍需要自己的訂閱:

  • Codex — ChatGPT Plus 或 Team(每月 $20 起),或採隨用隨付方式的 OpenAI API 金鑰
  • Claude Agent — Claude Pro($20)或 Max,或 Anthropic API 金鑰。
  • OpenCode — 透過 Ollama 使用本機模型時免費。

最基本的倫理要求是不要多人共用帳戶;帳戶是以個人名義註冊的。

截至 2026 年 6 月,使用三種代理程式的基本訂閱總計約每月 $60:Devin Pro($20)、ChatGPT Plus($20)和 Claude Pro($20)。若不使用 Claude,只搭配 Codex 和 OpenCode,費用就是 $40。

ACP 和 MCP 有什麼不同?

重點

ACP 將編輯器連接到代理程式。MCP 將代理程式連接到工具(資料庫、檔案、API)。代理程式透過 ACP 與編輯器溝通,並透過 MCP 連接任務所需的工具。這兩種標準彼此互補,並不互相競爭。

人們常把它們搞混,因為兩者都是「代理程式通訊協定」,也都使用 JSON-RPC。差別在於它們連接的對象。

Anthropic 的 MCP—Model Context Protocol 將代理程式連接到資料來源和工具。透過 MCP 伺服器,代理程式可以查看資料庫、讀取檔案、呼叫 GitHub API 和存取 Notion。它會分析輸入資料並決定使用哪個工具。

Zed 和 JetBrains 的 ACP—Agent Client Protocol 將編輯器連接到代理程式。透過 ACP,IDE 會將你選取的程式碼、開啟的檔案,以及從命令面板執行的指令傳給代理程式。代理程式則會回傳檔案編輯、確認要求和任務進度。

代理程式透過 ACP 與編輯器通訊,並透過 MCP 與工具通訊。架構如下:

┌─────────────────┐
│ Devin Desktop   │ ← editor
└────────┬────────┘
         │ ACP (Apache 2.0, JSON-RPC over stdio)
┌────────▼────────┐
│ Claude Agent    │ ← agent
└────────┬────────┘
         │ MCP (Anthropic, JSON-RPC over HTTP or stdio)
┌────────▼────────┐
│ MCP server      │ ← tool (database, files, API)
└─────────────────┘

如需進一步了解 MCP,請參閱另一份指南Claude Code 的 MCP 伺服器,其中提供連接 7 個現成伺服器的範例。

2026 年 6 月有哪些功能無法正常使用?

重點

截至 2026 年 6 月,ACP 已在 Devin Desktop 正式運作,但仍有一些限制。主要限制是登錄檔不會自動下載代理程式,因此你必須手動安裝 CLI。較小的限制包括,部分進階編輯器功能只適用於 Devin Local,並非所有 ACP 代理程式都能使用。

兩週測試期間指出三項顯著限制:

登錄檔不會下載代理程式。如本指南開頭所述,Devin Desktop 預期你會手動安裝 CLI 二進位檔。安裝指令碼可以處理這件事,但指南常會忘記提及。

並非所有編輯器功能都會傳遞給每個代理程式。目前,只有 Devin Local 能完整支援在單一交易中編輯多個檔案。透過 ACP 使用的 Codex 和 Claude 一次只會收到一個檔案的編輯指令。大多數任務不受影響,但若要在單一操作中重構 5+ 個檔案,就需要切回 Devin Local。

平行工作時發生衝突。如果同一個 Space 中的兩個代理程式同時編輯同一個檔案,後寫入的版本會覆蓋另一個版本。Devin Desktop 目前還不會顯示衝突差異。解決方法是在任務中指派不同檔案給各代理程式,或透過提取要求協作,再手動解決合併衝突。

JetBrains 也指出,其 IDE 25.3 RC 中的 ACP 實作有類似的 Beta 限制:

這與 Devin Desktop 的模式相同:手動安裝 CLI,再將它連接到編輯器。

生態系統的發展方向是什麼?

重點

相容 ACP 的代理程式登錄目錄每個月都在擴大。2026 年 3 月,生態系統已有 25+ 個代理程式;到了 6 月,zed.dev/acp 列出的代理程式超過 60 個。預期到 2026 年底將出現整合趨勢:Cursor、Replit Agent、Continue 和 Aider 也可能宣布支援 ACP。Devin Desktop 將是更廣泛清單中的一款編輯器,而非唯一選項。

ACP 目前是領先標準之一,但不是唯一標準。以下三種標準正平行發展:

  • MCP(Anthropic)— 代理程式連接工具。已成為事實上的標準。
  • A2A(Google,2025 年 4 月)— 代理程式彼此連接。獨立代理程式之間無須中央協調者即可通訊。
  • ACP(Zed、JetBrains,2025 年底)— 編輯器連接代理程式。

預期未來幾個月內,Cursor 和 Replit Agent 也會將 ACP 整合到介面中。目前它們使用專有 API。兩家主要業者採用 ACP 後,這項標準就會普及。屆時,「在任何編輯器中使用自己的代理程式」就會成為常態。

對 vibe coder 來說,這代表兩件事。第一,你不必安裝五種不同的應用程式來試用新模型。第二,如果供應商明天改變定價模式或停止服務,你可以將它的代理程式移到任何 ACP 編輯器,繼續工作。

設定三種代理程式是技術層面的工作。理解技術選擇如何影響產品,是另一種能力。主要任務是打造一套系統,讓 AI 重現你的思考風格(AI 分身)、記住專案脈絡(Second Brain),並讀取任務規則(context engineering)。這三個要素構成一套可運作的系統。完成後,你一個晚上就能切換工具。

認識 Ailoot。

更多詳情

常見問題:2026 年如何透過 ACP 將 Codex、Claude Agent 和 OpenCode 連接至 Devin Desktop

修改 registry.json 後,代理為什麼沒有出現?

確認 CLI 已安裝、registry 路徑指向實際執行檔,且在 Devin Settings → Agents 啟用。registry 只描述如何啟動工具,不會替你安裝或驗證登入。

ACP 會取代 MCP 嗎?

不會。ACP 連接編輯器與代理,MCP 連接代理與工具、資料來源。同一流程可透過 ACP 操作編輯器,同時用 MCP 存取資料庫或其他工具。

所有文章