[TOOLS] 7 分鐘閱讀OraCore 編輯部

OpenCode CLI 加入 ACP 伺服器

OpenCode CLI 新增 ACP 伺服器,並整合 TUI、無頭網頁、session、plugin 與 GitHub 自動化,讓終端機直接變成 AI 工作流控制台。

分享 LinkedIn
OpenCode CLI 加入 ACP 伺服器

OpenCode CLI 新增 ACP 伺服器,還把 TUI、無頭網頁、session、plugin 和 GitHub 自動化整合到同一套命令列介面。

OpenCode 這次不是只加一個小功能。它直接把 CLI 做成控制台。你可以在終端機開 TUI,也能跑一次性 prompt,還能起 headless server。

更狠的是,它現在還有 ACP server。文件寫得很直白,透過 stdin 和 stdout,搭配 nd-JSON 溝通。這代表它不只給人用,也給其他工具接。

命令用途重點
opencode啟動 TUI沒帶參數時的預設行為
opencode run非互動式執行 prompt支援 --format json--attach--thinking
opencode serve啟動 headless HTTP server適合 API 與遠端 client
opencode acp啟動 ACP server用 stdin/stdout 傳 nd-JSON

這個 CLI 已經不是附屬品

訂閱 AI 趨勢週報

每週精選模型發布、工具應用與深度分析,直送信箱。不定期,不騷擾。

不會寄垃圾信,隨時可取消。

講白了,OpenCode 的 CLI 現在像主控台。沒參數就進 TUI,有參數就能自動化。你還可以接 server,讓別的 client 來呼叫它。這種設計很像把同一個 backend,切成幾種前端入口。

OpenCode CLI 加入 ACP 伺服器

這種做法很實際。很多 AI 工具卡在單一介面。不是只有網頁,就是只有 editor plugin。OpenCode 反而把入口拆開。人用 TUI,腳本用 run,遠端用 serve,協定整合用 ACP。

文件裡的命令分類也很清楚。這不是亂長出來的功能堆。它們對應的是不同工作流。你可以把它看成一套 AI 工具鏈,不是單純聊天介面。

  • tui:適合互動操作
  • run:適合腳本和 CI
  • serveweb:適合遠端與瀏覽器
  • acp:適合 protocol client
  • sessionstatsexport:適合追蹤與管理

我覺得這才是重點。OpenCode 沒把自己鎖死在單一 UI。它想當的是工作流底層。這對開發者很有感,因為你不必每次換工具,就重寫一次操作方式。

ACP 支援才是最值得看的地方

opencode acp 這條命令很有意思。它啟動 ACP server,並透過 stdin/stdout 傳 nd-JSON。這種做法很土炮,也很可靠。對本地工具來說,stdin/stdout 幾乎是最容易嵌進去的介面。

這代表什麼?代表 OpenCode 可以更容易接進編輯器、腳本、agent runner,甚至本機常駐程式。你不用先開一個大網頁,再透過複雜 API 路由繞來繞去。協定邊界直接放在 process 層,簡單很多。

它也和其他 server 模式對得上。serve 是 HTTP server。web 是帶瀏覽器介面的 HTTP server。ACP 則是給懂協定的 client。三條路,三種用途。

“This command starts an ACP server that communicates via stdin/stdout using nd-JSON.”

這句話很關鍵。它直接說明傳輸層怎麼做。對開發者來說,這比一堆行銷詞有用太多。因為你馬上知道,這能不能接到現有工具,能不能包成 daemon,能不能塞進自動化流程。

如果你平常有碰 local agent,這種設計會很熟。很多工具最後都會回到 process protocol。原因很簡單。它穩,跨平台,而且不用先把整套系統網路化。

  • opencode serve:HTTP API 入口
  • opencode web:HTTP + 瀏覽器 UI
  • opencode acp:process protocol 入口
  • opencode run --attach:連到既有 server,少一次冷啟動

OpenCode 在做的是完整工作流

OpenCode 的 CLI 不只會跑 prompt。它還能管 agent、auth、models、GitHub 自動化。像 opencode agentopencode authopencode modelsopencode github install,這些都不是花拳繡腿。

OpenCode CLI 加入 ACP 伺服器

真正有用的是 session 和資料管理。你可以列出 session,也能匯出、匯入,還能看 token 使用量和成本。對團隊來說,這種紀錄很重要。因為 AI 工具一旦進到工作環境,大家就會開始問:誰做了什麼?花了多少?能不能重跑?

文件也列出幾個很實用的指令。這些細節看起來不起眼,實際上很像產品成熟度的分數。

  • opencode models --refresh:更新快取的 provider 清單
  • opencode session list --format json:輸出機器可讀資料
  • opencode export --sanitize:清掉敏感 transcript 和檔案內容
  • opencode uninstall --keep-config:移除程式但保留設定

這些功能說明一件事。OpenCode 想讓你把它放進日常開發流程。不是只拿來試玩。你可以把它接進 shell script、伺服器程序、GitHub Actions,甚至內部工具。

跟其他 CLI AI 工具比,差在哪

很多 AI coding 工具只做一種入口。不是 editor plugin,就是 web app。OpenCode 比較像全家桶。它有 TUI、有 run、有 serve、有 web,現在還多了 ACP。這種多入口策略,對開發者很實際。

原因很簡單。不同任務,本來就該用不同介面。臨時問一句,用 run 就好。長時間 debug,用 TUI 比較順。要給遠端 client 用,就開 serve。要接 process bridge,就用 acp

如果拿這種設計跟一般工具比,差異很明顯。OpenCode 比較像把控制權交給使用者,而不是逼你照它的 UI 走。這點我蠻買單。

  • TUI:適合單機互動
  • run:適合腳本與 CI
  • serve/web:適合遠端與瀏覽器
  • acp:適合協定型整合

另一個差異是 state 管理。它把 session、export、import、stats 都放進 CLI。這代表它不是只管輸出答案。它也管歷史、成本、追蹤和移轉。這對團隊導入很重要。

如果你想看 OpenCode 之前的工作流設計,可以參考我們的延伸內容:OpenCode agent workflows and session tools

這背後反映的是什麼趨勢

AI 工具正在往「可組合」走。單一聊天視窗已經不夠。大家開始要 API、server、session、plugin、protocol。因為真正上線後,工具不會只被一個人點來點去。它會被腳本、編輯器、CI、內部平台一起用。

OpenCode 這次把 ACP 拉進 CLI,就是在往這方向靠。它不只想當一個模型前端。它想當一個可被其他工具接上的工作底座。這很像軟體世界裡,從單機 app 走向可插拔系統的路線。

我覺得下一步值得觀察的,不是它還會多幾個命令,而是第三方 client 會不會開始接 ACP。只要有幾個工具接上去,CLI 的價值就會從「好用」變成「可整合」。

接下來可以怎麼看

如果你已經在用 OpenCode,現在該做的不是只學 opencode 這個入口。你應該把它當成一套系統來看。先試 run,再看 serveacp,最後再碰 session 和 export。

如果你還沒用過,這次更新其實很適合拿來評估。你可以直接問自己一句:我要的是一個聊天工具,還是一個能接進工作流的 AI 底層?OpenCode 明顯是後者。

我的判斷很直接。接下來真正常用的,不會是最會講故事的 AI 工具,而是最容易被其他軟體接上的那一種。OpenCode 這次就是往那條路走。