! 本篇文章將會介紹五分鐘安裝 opencode:打造你的 AI 指揮台,期望大家都能在五分鐘內把 AI 指揮台裝進終端機,從此寫程式像下指令 :D
昨天我們看完整條「19:00 生成 → 20:00 發文」的自動化管線,也自首了這個系列是 Agent 寫的。但萬丈高樓平地起——整套系統的核心員工其實只有一位:一支終端機指令,opencode。今天我們從零開始把它裝起來、完成登入、聊第一句天,順便搞懂一個關鍵問題:CLI agent 到底跟 Cursor 這種 IDE agent 差在哪?這題的答案,決定了後面 28 天的自動化要怎麼蓋。
讀完這篇你會學到:
opencode 官方提供的安裝方式,最省事的是一行 curl:
# 官方安裝腳本(macOS / Linux 通用,不依賴套件管理器)
curl -fsSL https://opencode.ai/install | bash
# 或者用 Homebrew(官方建議用 opencode 自己的 tap,更新最快)
brew install anomalyco/tap/opencode
# 或者走 Node 生態系
npm install -g opencode-ai
裝完驗證一下:
opencode --version
# 終端機印得出版號,就代表裝好了
我自己是直接用 curl 腳本裝的——現在這台 Mac 上的 opencode 就住在 ~/.opencode/bin,等一下踩坑記錄裡的 PATH 問題,就是它親身示範的。curl 腳本的好處是不依賴任何套件管理器,剛開箱的乾淨機器也能一行搞定;升級也不用煩惱,opencode 內建 opencode upgrade 一行更新到最新版。brew 派則是照慣例 brew upgrade。
opencode 本體開源,但它需要一顆 LLM 當大腦。登入有兩個入口:互動一點的,是輸入 opencode 進入 TUI 後打 /connect;懶得開 TUI 的,直接一行 CLI:
# 直接在終端機完成 provider 登入(選 provider、貼 key)
opencode auth login
# 登入完確認目前接了哪些 provider
opencode auth list
兩條路:
金鑰會存在本機的 credentials 檔(~/.local/share/opencode/auth.json),不會進 git repo——但請還是不要把含 key 的截圖和 log 到處亂貼,這是經營自動化系統的基本 hygiene。
小小小測驗:你知道 opencode 雖然是終端機工具,但其實也有 IDE extension 和桌面 App 嗎?那為什麼我偏偏選 CLI?答案在步驟四。
cd 到任何一個專案資料夾,輸入 opencode,TUI 會把你眼前的專案整包當成工作範圍。官方建議的第一件事是:
cd ~/some-project
opencode
# 進入 TUI 後輸入:
/init
/init 會讓 agent 掃過整個專案,在根目錄生成一份 AGENTS.md——這是 agent 的「專案說明書」,也是第 4 天的主題。之後就能直接開聊:
@ 可以 fuzzy search 專案裡的檔案,塞進對話當 contextTab 切換 Plan / Build mode:Plan 只出計畫不動手,Build 才會真的改檔案/undo 把 agent 的修改整組退貨,/redo 再救回來我個人最愛 /undo——它把「叫 AI 改 code」的心理門檻降到接近零,反正隨時可以反悔。
多數人的第一次 AI coding 體驗都發生在 IDE 裡(Copilot Chat、Cursor),那 CLI agent 的差別到底是什麼?我整理成三點:
opencode run "..." 這種非互動模式——一行指令、進去、做事、退出、回報結果。你昨天看到的 generate.sh,裡面叫的就是這個。GUI 可沒辦法被 launchd 排程叫起床。所以說「AI 指揮台」:IDE agent 像副駕座,你開車它導航;CLI agent 像可以被遙控的無人機——你不只要會跟它聊天,還要會寫排程叫它自己飛。這正是本系列選擇 opencode 的原因。
Q:裝完輸入 opencode,跳 command not found?
A:經典 PATH 坑。curl 安裝腳本會把執行檔放在 ~/.opencode/bin,腳本結束時會印出 export PATH=$HOME/.opencode/bin:$PATH 的提醒,很多人直接滑掉。把這行加進 .zshrc 再重開終端機即可。如果你是走 npm 安裝,opencode 會藏在 nvm 當前版本 node 的 bin 資料夾裡,之後每次切 node 版本路徑還會跟著變——這也是我後來改用 curl 腳本裝的原因。順帶一提,這只是 PATH 地獄的入門款,等 launchd 上場才是完全體(第 11 天見)。
Q:TUI 在 macOS 內建 Terminal.app 跑起來跑版、邊框亂掉?
A:官方文件明講建議搭配現代終端機(WezTerm、Alacritty、Ghostty、Kitty)。TUI 依賴較新的 terminal 能力,內建 Terminal.app 能動但體驗打折。換一套終端機,五分鐘的事,值。
Q:已經在用 Claude Code 或 Cursor 了,還要學 opencode 嗎?
A:核心心法相通——都是 agent,都靠 context 與工具呼叫做事。opencode 的特色是開源、provider 可替換、TUI 與 headless 雙形態。本系列後面的技巧(AGENTS.md、skills、headless)概念上可移植,但指令與設定會以 opencode 為準。
十之八九是 PATH 沒刷新。新開一個終端機視窗再試一次;還是不行,就照安裝程式最後印出的提示,把 ~/.opencode/bin 加進你的 shell 設定檔(.zshrc 或 .bashrc),存檔後 source 重載。用 echo $PATH 確認路徑真的進去了,這一步通了,後面 28 天才不會卡在同一個坑。
~/.opencode/bin 有沒有進 PATHopencode auth login 或 /connect 登入 provider,/init 生成專案的 AGENTS.md,/undo 是反悔藥下一篇我們要介紹「headless 模式:opencode run 讓 AI 無人值守工作」,把今天裝好的指揮台變成可以被排程呼叫的指令,這也是本系列發電機的真正原理,敬請期待!
參考資料:
有任何疑問但沒有 iT 邦幫忙帳號,或是想匿名提問?
歡迎到 https://dev.benben.me/q/Z5442T 提問或加油打氣,沒意外的話會在完賽之後一起回答 :D