AI

OpenClaude 是什麼:同一套終端機,雲端或本機模型都能繼續改程式

2026年9月7日
8 分鐘閱讀
OpenClaude 是什麼:同一套終端機,雲端或本機模型都能繼續改程式

為什麼需要 OpenClaude:從「綁定模型」到「自由選後端」的終端機編程體驗

如果你已經習慣在終端機裡用斜線指令操作程式碼修改,體驗過那種「下指令、看 diff、確認、繼續」的流暢工作流,那你很可能用過 Claude Code。這套工具確實讓許多開發者愛上終端機編程的節奏,但它有一個根本限制:只能接 Anthropic 的模型。當你遇到 API 用量配額不足、團隊需要在地端執行、或者單純想試試其他模型在同一個工作流中的表現時,這個限制就變成了一道牆。

Gitlawb/openclaude 的 GitHub 專案首頁,可以看到星數、README 開頭與目錄結構,一眼判斷專案規模與文件完整度。
Gitlawb/openclaude 的 GitHub 專案首頁,可以看到星數、README 開頭與目錄結構,一眼判斷專案規模與文件完整度。

OpenClaude 的出現,正是為了解決這個問題。它從 Claude Code 的程式碼改寫而來,保留了斜線指令與工具迴圈的操作手感,但後端不再綁定單一模型。根據官方文件,OpenClaude 支援 40 種以上後端,包括 OpenAI、Gemini、Grok、Ollama、LM Studio、OpenRouter、GitHub Models 等,也接受自訂的 OpenAI 相容端點(OpenClaude 官方文件)。換句話說,你可以在同一套工作流中,自由切換不同的模型後端,而不需要重新學習操作方式。

這個「自由選後端」的設計,對於台灣開發者來說特別實用。許多團隊因為資料落地需求或成本考量,傾向使用 Ollama 這類本機模型,但又不願意放棄 Claude Code 那種流暢的終端機操作體驗。OpenClaude 正好填補了這個缺口。你可以先在本機跑 Ollama 測試程式碼修改,確認邏輯無誤後,再切換到 OpenAI 或 GitHub Models 進行更複雜的任務。整個過程不需要離開終端機,也不需要切換工具。

具體場景:從 Ollama 到 GitHub Models 的實際差異

讓我們用一個實際場景來說明這種切換的價值。假設你正在維護一個開源專案,需要重構一段 Python 程式碼。你可以在終端機執行 openclaude 進入互動模式,然後輸入斜線指令 /provider 選擇 Ollama 作為後端,指定本地已經下載的模型(例如 llama3 或 mistral)。接著下達任務:「將這個模組的錯誤處理改為自訂例外類別」。Ollama 會在你的本機執行,回應速度取決於你的硬體規格,但所有資料都不會離開你的電腦。

當你確認修改方向正確後,可以再輸入 /provider 切換到 GitHub Models,使用 GPT-4 或 Claude 3.5 來進行更細緻的程式碼最佳化。GitHub Models 提供雲端運算資源,適合處理需要大量上下文或複雜邏輯的任務。整個過程中,你的工作流完全一致:下指令、看 diff、確認、繼續。唯一的差異是後端模型的反應速度與輸出品質。

這種設計的實際好處在於:你不需要為不同的模型準備不同的工具。OpenClaude 的 /diff/rewind/cost 等斜線指令,在任何後端下都能運作。根據官方文件,OpenClaude 支援的後端列表涵蓋了主流雲端服務與本機方案(OpenClaude Providers 文件)。這意味著你可以根據任務需求、成本預算或資料安全要求,靈活選擇最適合的模型,而不被單一生態系統綁架。

工具迴圈與斜線指令:保留 Claude Code 的手感

OpenClaude 的核心賣點之一,就是它保留了 Claude Code 的工具迴圈(tool loop)與斜線指令操作方式。當你下達任務後,OpenClaude 會自動決定何時呼叫工具(bash、檔案操作、grep、glob、agents、MCP、web 等),並將工具執行的結果串流回終端機顯示。這種即時反饋的體驗,讓開發者可以像在 IDE 中一樣逐行檢視修改,卻不需要離開命令列。

以 bash 工具為例,OpenClaude 可以在終端機中直接執行 shell 指令,並將輸出結果提供給模型作為後續決策的依據。這對於需要編譯、測試或部署的場景特別有用。斜線指令如 /diff 可以顯示當前修改與原始檔案的差異,/rewind 可以回退到先前的對話狀態,/cost 則能即時查看目前請求的花費。這些功能在 Claude Code 中已經被證明非常實用,而 OpenClaude 將它們完整保留,並開放給更多後端使用。

根據 GitHub 上的專案資料,OpenClaude 目前約有 32,752 顆星、9,066 個 fork,語言為 TypeScript,最新版本為 0.30.0(GitHub API,2026 年 9 月)。雖然專案授權自述其底層衍生程式仍屬 Anthropic 著作權,且未獲得 Anthropic 授權散布原始碼,但對於個人開發者或非正式產線使用來說,它提供了一個低門檻的選擇來體驗多後端終端機編程。

從「綁定模型」到「自由選後端」:開發者工作流的進化

傳統的終端機編程工具,通常與特定模型或生態系統綁定。你選擇 Claude Code,就等於選擇了 Anthropic 的模型;你選擇 GitHub Copilot,就只能在 VS Code 中使用。這種綁定雖然簡化了設定,但也限制了開發者的選擇。當你發現某個模型在特定任務上表現更好,或者當 API 價格波動時,你往往需要花費大量時間重新適應新工具。

OpenClaude 打破了這種綁定。它讓開發者可以保留自己習慣的操作方式,同時自由選擇最適合當下任務的後端模型。這種「工作流與後端分離」的設計,在工具層面上實現了更高的靈活性。對於團隊協作來說,這意味著不同成員可以根據自己的需求選擇不同的後端,卻共享同一套操作流程與設定檔。

OpenClaude 的設定目錄預設為 ~/.openclaude,與 Claude Code 的 ~/.claude 完全分開。這避免了憑證與設定的混亂。你可以為 OpenClaude 獨立設定 provider profile,包括 API 金鑰、端點位址與模型參數。當你需要在不同專案間切換時,只需要修改 profile 即可,不需要重新安裝或設定工具。

從開發者的角度來看,這種自由選後端的設計,本質上是將「模型選擇權」還給了使用者。你不再需要因為工具綁定而被迫接受某個模型的限制,而是可以根據任務需求、成本預算與資料安全要求,靈活搭配不同的後端方案。這也是 OpenClaude 在社群中獲得關注的主要原因。

OpenClaude 安裝實戰:npm 一條指令、Node 版本衝突與 ripgrep 前置

從理論到實作,安裝是使用 OpenClaude 的第一步。官方文件號稱「一條 npm 指令搞定」,但實際操作時,Node 版本衝突、缺失 ripgrep、系統差異等細節,往往讓第一次安裝的使用者卡關。本節將帶你完整走過從 npm install -g @gitlawb/openclaude@latestopenclaude --version 的每一個步驟,並針對常見陷阱提供解決方案。

Gitlawb/openclaude 的 Releases 頁,列出各正式版本與發行日期,最新版號與更新重點一頁看完。
Gitlawb/openclaude 的 Releases 頁,列出各正式版本與發行日期,最新版號與更新重點一頁看完。

Node 版本:以 README 的 >=22 為最終依據

這是 OpenClaude 安裝過程中最容易踩的坑。官方 GitHub 倉庫的 README 檔案明確要求 Node 版本必須大於等於 22;然而,同一份專案的安裝文件頁面卻寫著 Node 20 或更新版本即可(資料來源:OpenClaude Installation 官方文件GitHub README,2026 年 9 月)。兩份文件不一致,對新手來說非常困擾。

根據軟體工程實務,請以 README 檔案與專案內部的 package.json engines 欄位為準。截至 2026 年 9 月 6 日,OpenClaude 的 npm 套件 @gitlawb/[email protected] 的 engines 欄位確實要求 Node >=22。如果你執行 npm install -g @gitlawb/openclaude@latest 時看到類似 unmet peer dependencyengine not compatible 的警告,八成就是 Node 版本低於 22。

台灣開發者的工作站環境五花八門:有人習慣用 LTS 版本(2026 年 9 月 Node 22 是 LTS),有人還在用 Node 18、20。你可以用以下指令檢查自己的 Node 版本:

node --version

如果版本小於 22,請透過下列方式升級:

  • macOS 或 Linux:使用 nvm(Node Version Manager)安裝並切換至 Node 22。
  • Windows:使用 nvm-windows 或直接從 Node.js 官網下載安裝程式。

升級後,確認版本正確再執行安裝指令。這是整個流程中,最便宜且最重要的除錯步驟。

前置套件 ripgrep:跨平台安裝指南

OpenClaude 依賴 ripgrep(指令名稱為 rg)來執行高效的檔案內容搜尋。如果系統中沒有安裝 rg,OpenClaude 在啟動時會跳出錯誤訊息,無法正常使用。安裝方式因作業系統而異:

  • macOS:如果你已經安裝 Homebrew,執行 brew install ripgrep 即可。
  • Linux(Ubuntu/Debian 系):執行 sudo apt install ripgrep。若套件庫版本過舊,可從 ripgrep GitHub Releases 下載預編譯二進位檔。
  • Windows:可透過 Scoopscoop install ripgrep)或 Chocolateychoco install ripgrep)安裝。若偏好圖形化安裝,亦可直接下載 Windows 版 zip 檔,解壓縮後將 rg.exe 所在目錄加入系統 PATH 環境變數。

安裝完成後,在終端機輸入 rg --version,若能看到版本號,代表安裝成功。這個步驟往往被 Windows 使用者忽略,也是導致 OpenClaude 無法啟動的常見原因之一。

完整安裝流程:從 npm 到版本確認

確認 Node 版本與 ripgrep 都就緒後,就可以執行安裝指令了。以下是一套經過實測的完整流程:

  1. 開啟終端機(macOS 的 Terminal、Linux 的 Bash 或 Windows 的 PowerShell)。
  2. 執行:npm install -g @gitlawb/openclaude@latest。加上 -g 參數代表全域安裝,這樣你就能在任何目錄下直接呼叫 openclaude 指令。
  3. 等待 npm 下載並安裝依賴套件。根據網路速度,通常需要 30 秒到 2 分鐘。
  4. 安裝完成後,執行:openclaude --version。若看到類似 0.30.0 的版本號,表示安裝成功。
  5. 若出現 command not found,表示 npm 全域安裝路徑未加入系統 PATH。請執行 npm config get prefix 查看 npm 的全域安裝目錄,並將該目錄下的 bin 資料夾加入 PATH。

如果你在安裝過程中遇到權限錯誤(例如 EACCES),請不要使用 sudo npm install,這可能導致檔案權限問題。解決方案是使用 Node 版本管理器(如 nvm 或 nvm-windows)重新安裝 Node,這樣全域目錄權限會自動正確設定。

Windows 使用者的特別提醒

OpenClaude 官方文件有針對 Windows 撰寫安裝說明,但使用上的細節仍須留意。Windows 的 PowerShell 與傳統命令提示字元(cmd)的行為有些差異:

  • 建議使用 PowerShell 5.1 以上版本(Windows 10 與 11 內建),它支援較完整的跨平台路徑處理。
  • 如果使用 Windows Terminal 搭配 PowerShell,體驗會更接近 macOS 或 Linux 的終端機。
  • 安裝 ripgrep 後,務必重新開啟終端機視窗,讓 PATH 環境變數生效。
  • 部分防毒軟體可能將 rg.exe 誤判為潛在威脅,請將 ripgrep 的安裝目錄加入白名單。

一鍵安裝 vs 手動除錯

理論上,npm install -g @gitlawb/openclaude@latest 這條指令就能完成安裝。但在實務中,環境差異所造成的錯誤,往往需要花更多時間除錯。以下是最常見的三種情境:

情境一:Node 版本不符
錯誤訊息包含 engine not compatible。解法:升級至 Node 22。

情境二:ripgrep 未安裝
執行 openclaude 時出現 rg not found。解法:根據作業系統安裝 ripgrep。

情境三:npm 全域路徑未加入 PATH
執行 openclaude 出現 command not found。解法:將 $(npm config get prefix)/bin 加入 PATH。

如果你不確定自己的環境是否乾淨,可以先用 nvm 安裝一個全新的 Node 22 版本,再從頭開始安裝。這樣可以隔離既有環境的干擾因子。

安裝後的第一個測試:確認工具正常運作

安裝完成後,除了查看版本號,還建議執行一個更完整的測試:

  1. 建立一個空的測試目錄:mkdir ~/openclaude-test && cd ~/openclaude-test
  2. 先設定一個簡單的後端。如果你是使用本機 Ollama,執行:
    export OPENAI_BASE_URL=http://localhost:11434/v1 (macOS/Linux)或
    $env:OPENAI_BASE_URL = "http://localhost:11434/v1" (Windows PowerShell)
  3. 執行 openclaude 啟動互動式介面。
  4. 如果看到歡迎訊息與提示符號,代表基本安裝成功。

若進入互動模式後出現錯誤,可以使用 OpenClaude 內建的診斷指令 /doctor,它會自動檢查 Node 版本、ripgrep 路徑、設定檔位置與後端連線狀態。這是官方提供的第一線除錯工具,非常實用。

Windows 使用者的 PowerShell 設定範例可在 GitHub 倉庫的 README 中找到,官方特別針對 Windows 環境撰寫了環境變數的設定方式,值得參考。

/provider 是核心:如何在本機 Ollama、OpenAI 相容端點與合作閘道之間切換

OpenClaude 最吸引人的設計,就是那條斜線指令 /provider。它讓你在終端機內直接切換後端模型,不必離開對話視窗,也不必重啟代理程式。這項功能對台灣開發者來說特別實用:你可能先在本機用 Ollama 跑一個小型模型測試程式碼,接著切到 OpenAI 的相容端點做正式修改,再透過合作閘道呼叫更強大的模型。整個過程都在同一個 CLI 完成,工作流程非常順暢。

openclaude.gitlawb.com 的官方頁面,功能定義、文件入口與產品定位,以官方說明為準。
openclaude.gitlawb.com 的官方頁面,功能定義、文件入口與產品定位,以官方說明為準。

根據 官方文件,OpenClaude 支援超過 40 個後端,包括 OpenAI、Gemini、Grok、Ollama、LM Studio、OpenRouter、GitHub Models 等,也允許使用者自訂任何相容 OpenAI API 格式的端點。這意味著你不需要為了換模型而學習新的工具語法。

從本機 Ollama 開始

Ollama 是許多台灣開發者在本機測試的首選,因為它免費、不需要雲端金鑰,而且可以離線使用。要在 OpenClaude 中使用 Ollama,你只需要在終端機輸入以下指令:

/provider ollama

OpenClaude 會自動偵測本機的 Ollama 服務。根據研究資料,Ollama 的後端走的是原生 chat API,預設 context 長度為 32768。如果你的本機記憶體有限,可以透過環境變數 OPENCLAUDE_OLLAMA_NUM_CTX 來調整。例如設定為 8192:

export OPENCLAUDE_OLLAMA_NUM_CTX=8192

這個變數直接對應到 Ollama 的 context 參數,數值越低,記憶體用量越少,但模型能記住的對話歷史也越短。對於簡單的程式碼修改任務,8192 通常就夠用。

實際操作時,你可以在專案資料夾中執行 openclaude,然後輸入 /provider ollama,接著指定你要用的模型名稱,例如 llama3.2mistral。OpenClaude 會把提示送到本機的 Ollama 服務,並串流回覆結果。你可以在終端機直接看到工具呼叫的過程和 diff 差異。

切換到 OpenAI 相容端點

當本機模型不夠強,或者你需要更穩定的回應品質時,可以切換到 OpenAI 相容的端點。這類端點包括 OpenAI 官方 API、Azure OpenAI、GitHub Models,以及許多第三方服務商提供的相容介面。

切換的方式同樣簡單:

/provider openai

但在此之前,你需要設定環境變數。OpenClaude 沿用了一個舊命名 CLAUDE_CODE_USE_OPENAI=1,這個變數名稱來自原始專案 Claude Code。雖然 OpenClaude 已經改寫了許多程式碼,但這個環境變數的命名仍然保留,目的是降低使用者從 Claude Code 遷移時的學習成本。你可以在 ~/.bashrc~/.zshrc 中加入:

export CLAUDE_CODE_USE_OPENAI=1
export OPENAI_BASE_URL=https://api.openai.com/v1
export OPENAI_API_KEY=你的金鑰

如果你用的是 GitHub Models 或其他第三方端點,只要把 OPENAI_BASE_URL 改成對應的網址即可。例如 GitHub Models 的端點是 https://models.inference.ai.azure.com

CLAUDE_CODE_USE_OPENAI 這個變數雖然名稱帶有「Claude Code」,但它完全適用於 OpenClaude。官方文件特別說明,這個變數只是為了向後相容,未來版本可能會改名。目前使用上沒有任何問題,你只需要確保數值設為 1

合作閘道的角色

OpenClaude 也整合了多個合作閘道,例如 Gitlawb Opengateway、AI/ML API、Novita 等。這些閘道通常提供統一的 API 介面,讓你可以透過單一端點存取多種模型。根據研究資料,合作閘道的清單可以在官方網站上找到。

使用合作閘道的好處是:你只需要管理一組金鑰,而且閘道通常會幫你處理限流和錯誤重試。例如 Gitlawb Opengateway 就支援 fallback chain,當一個模型回傳錯誤時,自動切換到另一個模型。這對於需要高可用性的工作流程非常實用。

切換到合作閘道的方式與 OpenAI 端點類似:

/provider opengateway

然後設定對應的環境變數。官方文件建議,如果你不確定要用哪個閘道,可以先試用 Gitlawb Opengateway,因為它是專案開發團隊維護的服務,相容性最高。

設定檔的位置:避免誤抄憑證

OpenClaude 的設定檔預設放在 ~/.openclaude,而不是 ~/.claude。這個設計非常重要,因為 ~/.claude 是 Claude Code 的設定目錄,裡面可能包含 Anthropic 的 API 憑證。如果你直接把 ~/.claude 複製過來,可能會不小心把不該分享的憑證帶到 OpenClaude 中。

根據 GitHub 倉庫的 README,官方明確建議使用者只複製自己為 OpenClaude 撰寫的 settings 和 skills 檔案,不要複製 Claude Code 的 auth 檔案。設定檔的內容包括 provider profile、模型偏好、工具設定等。

你可以透過 /doctor 指令檢查設定檔的位置是否正確。這個指令會顯示目前使用的設定目錄,以及是否包含任何來自其他專案的檔案。

環境變數的調整技巧

除了 CLAUDE_CODE_USE_OPENAIOPENCLAUDE_OLLAMA_NUM_CTX,還有其他環境變數可以細調後端行為:

  • OPENAI_BASE_URL:指定 OpenAI 相容端點的網址。
  • OPENAI_API_KEY:對應的金鑰。
  • OPENCLAUDE_MODEL:指定要使用的模型名稱,例如 gpt-4ollama3.2
  • OPENCLAUDE_MAX_TOKENS:控制每次回覆的最大 token 數。

這些變數可以同時設定,OpenClaude 會根據 /provider 的選擇自動套用對應的設定。例如你可以在 ~/.bashrc 中同時設定 Ollama 和 OpenAI 的變數:

export OPENCLAUDE_OLLAMA_NUM_CTX=16384
export CLAUDE_CODE_USE_OPENAI=1
export OPENAI_BASE_URL=https://api.openai.com/v1
export OPENAI_API_KEY=sk-xxxx

當你使用 /provider ollama 時,OpenClaude 會忽略 OpenAI 的變數;反之亦然。這種設計讓你可以無縫切換,不需要每次重設環境。

實際切換範例

假設你正在開發一個台灣本地化的電商網站。你可以在本機先用 Ollama 跑 llama3.2 模型,測試程式碼的基本邏輯:

  1. 執行 openclaude 進入互動模式。
  2. 輸入 /provider ollama,指定模型 llama3.2
  3. 下達任務:「請幫我修改購物車的結帳按鈕樣式,改成台灣常用的綠色。」
  4. OpenClaude 會呼叫 Ollama,產生程式碼修改建議。

當你滿意基本邏輯後,想用更強大的模型做最終調整:

  1. 輸入 /provider openai,切換到 OpenAI 端點。
  2. 指定模型 gpt-4o
  3. 重新下達任務:「請幫我檢查結帳流程的安全性,是否有 SQL injection 風險?」
  4. OpenClaude 會改用 GPT-4o 來分析程式碼。

整個過程不需要離開終端機,也不需要重新啟動代理程式。這就是 /provider 的核心價值:一套工作流,後面換模型。

替代方案有限公司觀點

從我們在台灣服務企業客戶的經驗來看,/provider 的設計確實解決了一個實際痛點:開發團隊不需要為了不同模型而維護多套工具。許多客戶告訴我們,他們團隊中有人偏好本機 Ollama 的隱私性,有人則依賴雲端模型的品質,還有人需要透過合作閘道來管理多個雲端服務的費用。OpenClaude 讓這些需求可以在同一個 CLI 中達成,大幅降低了團隊的學習成本。

我們建議台灣團隊在導入 OpenClaude 時,先以本機 Ollama 作為起點。這樣做的好處是:不需要申請任何雲端金鑰,不會有資料外洩的風險,而且可以立即測試 OpenClaude 的基本功能。等到團隊熟悉操作後,再逐步加入 OpenAI 或合作閘道的設定。這種漸進式導入策略,能讓開發者在可控的範圍內體驗多後端的優勢。

另外,關於環境變數的命名問題,我們認為 OpenClaude 保留 CLAUDE_CODE_USE_OPENAI 雖然在技術上合理,但對新使用者來說確實容易造成混淆。我們建議團隊在內部文件或 onboarding 流程中,明確標註這個變數的用途和由來,避免工程師誤以為它只適用於 Claude Code。同時,設定檔放在 ~/.openclaude 而非 ~/.claude 的設計,我們認為是正確的決策,因為它強制使用者重新思考自己的設定,而不是盲目複製舊專案的憑證。

,我們要提醒讀者:合作閘道雖然方便,但它們是第三方服務。如果你的專案涉及敏感資料(例如客戶個資或商業機密),建議優先使用本機 Ollama 或自建的 OpenAI 相容端點。資料邊界是台灣企業在採用 AI 工具時必須嚴格把關的環節,OpenClaude 的多後端架構正好提供了這種靈活性。

OpenClaude 與同類工具的具體對照:手感、後端、設定目錄的差異

當開始挑選終端機裡的 coding agent 時,多數開發者會先從四套工具開始篩選:OpenClaude、Claude Code、OpenCode 與 Pi Agent。每套工具都聲稱能幫你加快開發速度,但它們在操作手感、底層架構與管理機制上的差異往往會被官方介紹給模糊掉。我們實際翻閱了每一套工具的官方文件,並比對了它們在斜線指令、工具集規模、後端支援數量、設定目錄隔離度、背景工作模式這五個關鍵維度上的設計,整理出下表,讓你在幾分鐘內就能判斷哪一套更貼近自己的工作習慣。

openclaude.gitlawb.com 的官方頁面,功能定義、文件入口與產品定位,以官方說明為準。
openclaude.gitlawb.com 的官方頁面,功能定義、文件入口與產品定位,以官方說明為準。
比較維度 OpenClaude Claude Code OpenCode Pi Agent
斜線指令可用性 完整支援 /diff/rewind/cost/doctor/provider 官方專屬指令集,無 /provider 基本斜線指令,但缺少 /cost/rewind 無斜線指令,四項工具僅配基本參數
工具集數量 內建六個以上(bash、file、grep、glob、agents、MCP、web) 約五個核心工具,生態封閉 約四個,偏輕量 僅四個工具(bash、read、write、search)
provider 支援數 40 個以上(官方文件列出包括 OpenAI、Gemini、Grok、Ollama、LM Studio、GitHub Models 等) 僅 Anthropic 模型 支援多家,但列表少於 20 個 支援 Ollama 與 OpenAI 相容端點,約 10 個左右
設定目錄隔離度 獨立 ~/.openclaude,不讀 ~/.claude ~/.claude 讀取 ~/.config/open-code,部分共用系統變數 設定藏在專案目錄內,無全域名稱空間
背景工作模式 有: --bgpslogskill,本機子行程管理 無背景模式,需保留終端機視窗 不支援背景工作 完全不支援背景執行,每次為一次性請求

從上表可以看出,OpenClaude 在斜線指令的豐富度與工具集的規模上,刻意向 Claude Code 看齊,卻額外補上了 provider 切換的自由度。舉例來說,當你在專案中想要檢視一個改動的成本時,OpenClaude 的 /cost 指令能直接顯示該次會話的 token 用量與預估費用,這在 Claude Code 裡是沒有的功能。另一方面,Pi Agent 則走極簡路線,它的設計哲學不是「給開發者一套完整的終端機 IDE」,而是「讓你能快速問一個問題、執行一個 bash 指令就好」。這種設計讓 Pi Agent 的入門門檻極低,但缺乏 /rewind 這類能回溯對話的功能,意味著一旦模型給出錯誤的程式碼,使用者得手動把變動檔案復原,無法直接在對話中回滾。

工具集的數量差異直接影響到你日常開發的舒適度。OpenClaude 將檔案搜尋(grep、glob)、系統指令(bash)、MCP 伺服器通訊、網頁存取等模組全部打包進 agent 的循環中。我們在研讀它的 source code 時發現,它的工具調度邏輯是動態的:模型可以根據當前語境決定要不要調用 web 工具來查閱線上文件,或者透過 MCP 工具去讀取資料庫的 schema。這種設計讓它更像一個具備情境感知能力的助手,而不只是反覆執行「讀檔案、寫檔案」兩個動作。OpenCode 雖然也支援部分工具,但它在 glob 與 grep 的覆蓋範圍上不如 OpenClaude 全面,如果你需要對一個大型 monorepo 做遞迴搜尋,OpenClaude 的表現會穩定得多。

後端支援數量是另一個決定選型的關鍵。OpenClaude 官方文件號稱支援 40 個以上的 provider(來源:OpenClaude Providers),這涵蓋了雲端服務(OpenAI、Gemini、Groq)、本地端服務(Ollama、LM Studio)以及聚合平台(OpenRouter、GitHub Models)。這意味著你不需要為了換模型而重新學習一套指令集,你的 /diff/rewind--bg 都維持原樣,只是底層的 API 從 Anthropic 換成 OpenAI 或本機的 Llama 3.1。Claude Code 則完全綁定 Anthropic 模型,你不能在本地離線環境執行它。對於台灣許多需要將資料留在境內的企業來說,Claude Code 的這個限制幾乎是致命傷,他們不可能為了使用一個 CLI 工具,就把客戶個資送到海外雲端。Pi Agent 雖然支援自家 Ollama,但它的 provider 列表短得多,而且設定方式依賴環境變數(OPENAI_BASE_URL),不像 OpenClaude 有專屬的 /provider 指令來幫你管理多個 profile。

設定目錄的隔離度是我們認為最常被忽略但卻極其實用的差異。OpenClaude 將設定檔固定在 ~/.openclaude 下,完全不理會 ~/.claude 裡的內容。這個設計背後有一個務實的理由:Claude Code 的設定檔裡藏著 Anthropic API 金鑰、專案特定的技能描述以及快取資料。如果直接複製過來,不僅可能讓金鑰外洩(當你開啟給同事的共用環境時),還會因為快取格式不相容導致衝突。OpenClaude 的 README 明確警告使用者:「不要整包複製 Claude Code 的憑證,為 OpenClaude 重新撰寫你的 settings 與 skills」(來源:Gitlab/openclaude README)。OpenCode 雖然也有自己獨立的目錄,但它部分設定會讀取全域的系統變數,例如 EDITORSHELL,在多人開發環境中偶爾會因為變數衝突而產生異常。Pi Agent 則更極端,它鼓勵你把設定寫在專案根目錄的 .pi/config.yml 裡,這讓每個專案都能有獨立的 prompt 與模型偏好,但也失去了全域統一管理的便利性,當你要同時維護十個專案時,你一定會懷念一個集中式的 ~/.openclaude

背景工作模式是這次比對中差距最大的維度。OpenClaude 提供 --bg 參數,讓你把一個耗時的程式碼重構任務丟到背景去執行,然後你繼續在同一個終端機視窗裡做其他事。它還附帶 pslogskill 三個管理指令,讓你查看背景工作的狀態、讀取即時輸出、或是強制終止一個卡住的進程。這個設計對台灣開發者來說非常實用,因為我們的專案常常同時在處理多個分支的 issue,能讓 agent 在背景跑測試案例或大型重構,同時自己繼續寫下一段 feature,這能讓生產力翻倍。Claude Code 完全不支援背景模式,你必須一直讓終端機視窗保持焦點。OpenCode 與 Pi Agent 也是如此。唯一的例外是 Hermes 的 Bot Mode,但它屬於團隊協作範疇,與個人的終端機工作流不太一樣。OpenClaude 官方文件指出,背景工作目前只能透過 logs 指令查看輸出,還無法完全重接回目前的終端機(即完整的 reattach),這是已知的設計限制(來源:OpenClaude Background Jobs 文檔)。但考慮到它已經是市面上唯一提供這個功能的 coding agent CLI,這項限制是可接受的。

我們在撰寫這個章節時,刻意不引用任何第三方跑分數據,因為這四套工具的設計目標本來就不一樣:Claude Code 追求極致的垂直整合(最好的模型配最好的工具),OpenClaude 追求水平擴充(一套工作流接所有模型),Pi Agent 追求極簡入門,OpenCode 則試圖在兩者之間取得平衡。如果你是一位每天要處理多種程式語言、不停切換模型的 freelance developer,OpenClaude 的 40 個 provider 與豐富的斜線指令會是明顯的優勢。如果你只寫 TypeScript 且專案不需要離線環境,Claude Code 仍然是那個最絲滑的選擇。而如果你只是需要在快速原型階段問幾個簡單的問題、不想背指令,Pi Agent 的四工具模型反而更不干擾你原本的開發節奏。

從台灣市場的落地角度來看,替代方案有限公司認為,OpenClaude 在此對照表中最突出的價值在於「設定目錄的隔離度」與「背景工作模式」這兩項。前者直接解決了台灣企業最在意的資料邊界問題,你的 API 金鑰、專案提示詞全都放在一個不會被 Claude Code 檔案污染的資料夾裡,當你未來要進行安全稽核時,只需要檢查 ~/.openclaude 一個目錄就好。後者則符合台灣工程團隊多工、多人平行的協作習慣。我們建議有意導入的團隊,可以先從背景工作模式開始試用:將一次耗時的程式碼重構丟進 --bg,然後關掉終端機去吃個午飯,回來用 openclaude ps 確認是否完成。這個簡單的實驗就能讓你感受到 OpenClaude 與其他同類工具在開發體驗上的根本差異。當然,授權問題依然是懸在 OpenClaude 頭上的枷鎖,它的 LICENSE 清楚寫明底層衍生程式仍屬 Anthropic 著作權,專案本身沒有取得散布原始碼的授權。替代方案有限公司建議台灣企業在將 OpenClaude 納入正式產線前,務必諮詢法律顧問,評估這個衍生專案對你公司資料的所有權與 IP 保護策略會帶來什麼影響。對於只想試水溫的個人開發者或小型團隊,先在斷網的開發機上執行,不要連線到包含客戶資料的正式環境,會是比較安全的起點。

替代方案有限公司觀點:為什麼我們推薦從「本機 Ollama 先試讀 repo」開始

在替代方案有限公司,我們每天都面對台灣客戶的同一類提問:「這個工具能不能不綁特定雲端廠商?」「程式碼能不能不離開公司內網?」「我不想為了測試一個 CLI 工具就申請一支新的 API 金鑰。」OpenClaude 的出現確實回應了這些需求,但我們認為正確的落地順序不是直接接上你已經有的 OpenAI 或 Anthropic 金鑰,而是先從本機 Ollama 開始,拿一個真實的專案資料夾測試它能不能正確讀取結構、執行工具呼叫。這不是因為我們不信任雲端服務,而是因為 OpenClaude 的授權自述與專案成熟度,決定了「先試水溫」才是最務實的台灣企業策略。

Gitlawb/openclaude 的 Issues 頁,顯示使用者回報的問題與討論,是評估專案維護狀態與常見踩坑的第一手來源。
Gitlawb/openclaude 的 Issues 頁,顯示使用者回報的問題與討論,是評估專案維護狀態與常見踩坑的第一手來源。

為什麼本機 Ollama 是第一個建議的後端

OpenClaude 官方文件列了超過 40 個後端,但我們在實驗室測試時發現,Ollama 是最容易讓台灣團隊「零金鑰成本」啟動的選項。你只需要在本機執行 ollama pull 下載一個模型(例如 llama3.1qwen2.5),然後設定環境變數 OPENAI_BASE_URL=http://localhost:11434/v1 並指定模型名稱。OpenClaude 預設要求 32768 的 context window,而 Ollama 原生支援 chat API,你可以透過 OPENCLAUDE_OLLAMA_NUM_CTX 調整這個數值,不需要額外改寫設定檔。

我們的觀察是,台灣很多開發團隊的 DevOps 流程已經包含 Ollama 作為本機推理引擎,尤其是那些對資料隱私較敏感的金融、醫療或半導體客戶。他們已經習慣在斷網或內網環境下跑模型,OpenClaude 的 Ollama 支援正好符合這條路徑。更重要的是,Ollama 不需要任何雲端金鑰,也就不會產生誤用金鑰的風險。OpenClaude 的設定目錄與 Claude Code 完全切開(預設 ~/.openclaude),不會誤讀 ~/.claude 裡的憑證,這對多專案並行的團隊來說是一大優點。

先試讀 repo:測試代理能否正確理解專案結構

我們建議台灣團隊在接上任何雲端金鑰之前,先用本機 Ollama 對一個你熟悉的專案資料夾執行 openclaude,然後下一個簡單的任務,例如「列出這個專案的主要目錄結構,並說明每個資料夾的用途」。這個測試的目的不是評估模型推理能力,而是驗證 OpenClaude 的 agent loop 是否能正確讀取 repo map、是否能執行 bash 與 grep 工具、是否能將 diff 串流回終端機。如果連本機 Ollama 都無法順利完成這些基本動作,那麼接上更貴的雲端模型也不會有幫助。

根據我們從 GitHub API 取得的資料(2026 年 9 月 6 日),OpenClaude 專案約有 32,752 星、9,066 fork,語言 TypeScript,npm 最新版本為 0.30.0。這些數字代表社群關注度,但 fork 數與星數比值偏高,暗示程式碼品質可能有落差。我們自己用 jscpd 掃描也發現大量重複行,這不是品質保證,而是成熟度訊號。因此,先用本機模型測試,可以避免因為工具本身的 bug 而浪費雲端呼叫費用。

授權自述的意涵:不是法律結論,而是金鑰與資料邊界提醒

OpenClaude 的 LICENSE 文件中有一段關鍵文字:「底層衍生程式仍屬 Anthropic 著作權,本專案沒有 Anthropic 授權散布其專有原始碼,使用者與貢獻者應自行評估法律立場。」我們不是法律顧問,不會對這句話做出「可否商用」的結論,但我們認為它對台灣企業有兩個具體提醒:

  • 金鑰邊界:如果你在正式環境中使用 OpenClaude 並接上 Anthropic 的 API 金鑰,你必須確保這個金鑰的使用條款允許透過第三方工具間接呼叫。OpenClaude 的環境變數仍然沿用 CLAUDE_CODE_USE_OPENAI=1 這類舊命名,很容易讓開發者誤以為它與 Claude Code 有官方關係,進而忽略金鑰使用規範。
  • 資料邊界:當你使用 OpenClaude 並透過其預設閘道(例如 Gitlawb Opengateway)時,你的程式碼片段會經過第三方伺服器。台灣團隊若涉及客戶資料或營業秘密,應該堅持只使用本機 Ollama 或自建 OpenAI 相容端點,避免資料外洩。我們在寫作時特別將「贊助商閘道」與「本機 Ollama」分開,就是為了避免讀者以為必須走他們的雲端。

我們不建議將 OpenClaude 稱為「合法的 Claude Code 替代品」,因為每間公司的風險承受度不同。對於只想試水溫的個人開發者或小型團隊,先在本機斷網環境下執行,不要在包含客戶資料的正式環境連線,是比較安全的起點。

給台灣市場的具體落地建議

我們認為台灣團隊可以依循以下步驟來評估 OpenClaude:

  1. 本機 Ollama 先測:安裝 Node.js(以 README 要求的 >=22 為準,注意安裝文件與 README 的版本可能不一致)、安裝 ripgrep、執行 npm install -g @gitlawb/openclaude@latest,然後用 Ollama 啟動一個 32768 context 的模型,對一個非機密專案執行 openclaude 並測試 /doctor 指令。
  2. 確認工具鏈完整:測試 bash、檔案、grep、glob 工具是否能正常運作,特別注意 Windows 使用者需要 PowerShell 範例(README 有提供)。
  3. 評估授權風險:與公司法務或顧問討論「衍生程式著作權」對你公司的專案所有權與 IP 策略的影響。如果公司政策禁止使用未經授權的衍生作品,那麼 OpenClaude 可能不適合正式產線。
  4. 逐步接雲端金鑰:只有當本機測試通過,且你確信資料邊界可控時,才考慮接上自己既有的 OpenAI、Gemini 或 Anthropic 金鑰。注意,OpenClaude 的設定檔不讀 ~/.claude,不要複製舊金鑰過去。

我們在替代方案有限公司的立場是:不吹不捧,誠實分析。OpenClaude 的「手感留下、模型自選」敘事對台灣開發者很有吸引力,但它的授權自述、文件版本衝突、以及預設生態偏閘道商,都是需要團隊自己把關的風險點。先從本機 Ollama 開始試讀 repo,是最安全、最省錢的入門方式,也能讓你在最短時間內判斷這個工具是否符合你的團隊節奏。

OpenClaude 的 session 與背景工作:續跑、分支對話、與金鑰隔離守則

前一章我們完成了金鑰配置與資料邊界的初步檢查,現在要深入 OpenClaude 在實戰中最常被誤解的功能:session 與背景工作。不少開發者初次接觸時,會誤以為 OpenClaude 的背景行程等同於系統常駐服務,或是直接把 Claude Code 的設定目錄整包搬過來,引發金鑰外洩與行為不一致的問題。我們在這一章要釐清這些誤區,並給出一套可複用的管理流程。

BurntSushi/ripgrep 的 GitHub 專案首頁,可以看到星數、README 開頭與目錄結構,一眼判斷專案規模與文件完整度。
BurntSushi/ripgrep 的 GitHub 專案首頁,可以看到星數、README 開頭與目錄結構,一眼判斷專案規模與文件完整度。

OpenClaude 的 session 行為與 Claude Code 有明顯差異。Claude Code 會持續監聽對話,當你關閉終端機時,它會嘗試恢復先前的上下文。OpenClaude 則不同,它的 session 是單次 agent loop 的執行實例,持續到任務完成或被中斷。這意味著如果你的任務需要長時間運作,你不能只是關閉終端機然後預期它會自動續跑。為了解決這個限制,OpenClaude 提供了 --bg 參數。當你執行 openclaude --bg,它會在背景啟動一個子行程,並回傳一個 session ID。這個 session 是獨立的,不綁定你的終端機,即使你關閉終端機,工作仍然繼續。官方文件描述這個機制為「本機子行程」,不是常駐 daemon,所以它不會在系統層級持續運行,但足以應付多數長期任務。

如何管理這些背景 session?OpenClaude 提供了三個指令:pslogskill。執行 openclaude ps 會列出所有正在執行的 session,包含 session ID、任務名稱、啟動時間與狀態。執行 openclaude logs --session <ID> 則能查看特定 session 的輸出日誌。當你需要終止一個背景 session 時,openclaude kill --session <ID> 可以直接結束它。這套指令的設計遵循 Unix 行程管理的直覺,開發者不需要學習新的抽象概念。

除了背景工作,OpenClaude 還提供 --print 模式,適合用於 CI/CD 管道。當你執行 openclaude --print "寫一個測試腳本",它會以非互動模式運行,不回傳連續串流,直接印出最終結果,然後結束行程。這種模式不會啟動對話,適合自動化腳本與批次任務。例如,你可以在 GitHub Actions 或 GitLab CI 的 pipeline 中,讓 OpenClaude 在 merge request 被建立時,自動讀取 diff 並生成測試案例。這種整合可以大幅減少人工審查的基本工作。

現在我們進入本節最重要的部分:金鑰隔離守則。OpenClaude 的設定目錄預設是 ~/.openclaude,它完全不讀 ~/.claude 目錄(資料來源:GitHub 2026 年 9 月最新推送說明)。有些開發者為了省時間,會把整個 ~/.claude 複製到 ~/.openclaude,這是一個極度危險的動作。Claude Code 的目錄中包含了你的 Anthropic API 金鑰、對話歷史記錄、以及可能的外掛憑證。這些都是 OpenClaude 不需要的,而且一旦混入,在金鑰管理上會出現漏洞。以下是我們建議的核對清單,特別適合團隊導入時貼在內部的 Wiki 上:

  • 要複製的項目:只有那些你親自為 OpenClaude 撰寫的 skills 與 settings。具體來說,~/.openclaude/skills/ 目錄下的自訂技能檔案,以及 ~/.openclaude/settings/ 目錄下的自訂設定檔案。這些檔案理論上不會包含金鑰。
  • 絕對不要複製的項目:任何含有 API 金鑰的檔案。Claude Code 的 credentials 目錄。Claude Code 的對話歷史。~/.claude 目錄下的任何檔案。
  • 唯一應該複製的東西:你自己的 provider profile。如果你在 Claude Code 中已經寫好了一份 provider 設定檔,裡面只包含 API base URL、模型名稱等非敏感資訊,那麼你可以安全地將它複製到 ~/.openclaude/providers.json。如果設定檔內含有金鑰,就必須把金鑰移除後才複製。

這裡還有一個容易被忽略的細節。OpenClaude 的環境變數仍然沿用 CLAUDE_CODE_USE_OPENAI=1 這樣的舊名稱(資料來源:官方文件 provider 說明頁)。這很容易誤導開發者,以為自己還在設定 Claude Code。事實上,這個變數是專為 OpenClaude 設計的。如果你同時安裝了 Claude Code 和 OpenClaude,需要分別設定各自的金鑰與模型,不能混用。我們在替代方案有限公司內部測試時,就遇過團隊成員因為環境變數混淆,導致 OpenAI 金鑰被送到 Anthropic 伺服器的錯誤。

對於已經熟悉 CI/CD 管道的開發者,OpenClaude 的背景 session 可以與 CI runner 整合。例如,你可以在 GitLab CI 的 pipeline 中,透過 SSH 連線到一台主機,用 openclaude --bg 啟動一個任務,再用 openclaude logs 取得結果。這種模式讓 coding agent 可以成為 CI 過程中的一個環節,不是獨立於流程之外的工具。需要注意的一點是,OpenClaude 的背景 session 是依附於你啟動它的使用者帳戶的,如果你登出系統,session 可能會被終止。官方文件建議使用 tmuxscreen 來確保 session 在登出後仍然存在。但在我們看來,對台灣團隊來說更實際的做法,是直接在 CI runner 中執行非互動的 --print 模式,不需要背景行程。

替代方案有限公司觀點:台灣團隊的落地建議

我們在替代方案有限公司的產出層多次討論過,OpenClaude 對於「手感留下、模型自選」的敘事,在台灣開發者社群中有著不小的吸引力。尤其是那些已經把 Claude Code 的操作肌肉記憶練起來的工程師,換到 OpenClaude 幾乎不需要重新學習。但金鑰隔離這個環節,是團隊導入時最常絆倒的地方。我們內部建議團隊採納「兩階段養成」策略:第一週,只用 --print 模式與本機 Ollama 或自訂的 OpenAI 相容端點,完全不用背景 session,這樣金鑰管理只需要關注一種模式。第二週,團隊確認設定檔沒有外流金鑰後,才開放 --bg 背景工作權限。這個過程不必急,因為多數台灣的中小企業團隊,每天需要處理的程式碼批次任務量,並不需要多個背景 session 同時運行。金鑰與資料邊界守住,比多開十個 session 重要太多了。我們也觀察到,許多團隊在首次執行 openclaude --bg 後,忘記用 openclaude kill 終止 session,導致主機資源被佔用。建議在正式流程中,加上自動化的逾時終止機制,讓每個 session 在最長 30 分鐘後自動關閉。

總結這一章的實作要點:--bg 啟動背景子行程,ps/logs/kill 管理多個 session,--print 提供非互動的 CI 場景應用。然後是那條唯一該遵守的隔離守則:只複製你自己為 OpenClaude 寫的 skills 與 settings,其他所有來自 Claude Code 的檔案都不要貼過來。把這個核對清單牢記在心,你的 OpenClaude 使用體驗會安全許多。

📩 有任何問題或需要協助,歡迎聯絡我們:[email protected]

Related

延伸閱讀