free-claude-code 是一個給 Claude Code 使用的 Anthropic-compatible proxy。
它的思路不是破解 Claude Code,也不是提供官方免費的 Claude 服務,而是在本地啟動一個相容 Anthropic API 形狀的代理服務,把 Claude Code 發出的請求轉發到其他模型後端。README 中提到的後端包括 NVIDIA NIM、OpenRouter、DeepSeek、LM Studio、llama.cpp 和 Ollama。
簡單說,它想解決的是:你喜歡 Claude Code 的終端體驗,但希望把模型請求接到別的 provider 或本地模型上。
它解決什麼問題
Claude Code 的互動體驗很適合開發任務。
它可以在終端裡閱讀程式碼、修改檔案、執行命令、根據專案上下文推進任務。問題是,很多使用者並不一定想始終使用同一個模型後端:
- 想試試 OpenRouter 上的不同模型
- 想用 DeepSeek 這類模型降低成本
- 想把請求接到本地 Ollama
- 想用 LM Studio 或 llama.cpp 跑本地模型
- 想在開發環境裡統一走一個代理入口
- 想比較不同模型在 Claude Code 工作流裡的表現
free-claude-code 的定位,就是在 Claude Code 和這些模型服務之間加一層相容代理。
這樣 Claude Code 仍然按 Anthropic 風格發請求,代理負責把請求適配到不同後端。
工作方式
可以把它理解成三層:
- 前端是 Claude Code
- 中間是
free-claude-code代理 - 後端是 OpenRouter、DeepSeek、本地模型或其他模型服務
Claude Code 以為自己在存取一個 Anthropic-compatible API。
代理收到請求後,根據配置選擇目標 provider,轉換必要欄位,再把回應返回給 Claude Code。
這類結構的好處是,你不用改 Claude Code 本身,也不用讓每個模型服務都原生支援 Claude Code。只要代理能把介面對齊,就能把更多模型接進同一個工作流。
支援哪些後端
README 中列出的方向包括:
- NVIDIA NIM
- OpenRouter
- DeepSeek
- LM Studio
- llama.cpp
- Ollama
這些後端代表了幾類不同使用方式。
OpenRouter 更像模型聚合入口,可以測試不同商業和開源模型。
DeepSeek 適合關注中文能力、程式碼能力和成本的人。
LM Studio、llama.cpp、Ollama 則偏本地模型路線。它們適合在自己的機器或內網環境裡執行模型,減少外部 API 依賴,也方便做離線實驗。
NVIDIA NIM 則更偏企業和 GPU 推理部署場景。
為什麼是 Anthropic-compatible proxy
Claude Code 本來圍繞 Anthropic 的介面和模型習慣設計。
如果你想讓它接入其他模型,最直接的問題就是介面不一致:
- 請求欄位不同
- 模型名稱不同
- streaming 格式不同
- tool use 表達不同
- 錯誤返回格式不同
- token 和上下文限制不同
代理層的價值就在這裡。
它把 Claude Code 這邊看到的介面維持在接近 Anthropic 的形狀,再在後端做適配。對使用者來說,配置一次代理後,就可以在相同 Claude Code 工作流裡測試不同模型。
適合什麼場景
free-claude-code 適合這些場景:
- 想用 Claude Code 的終端工作流
- 想測試非 Anthropic 模型在 Claude Code 裡的表現
- 想降低模型呼叫成本
- 想把 Claude Code 接到 OpenRouter
- 想接入 DeepSeek 等相容模型服務
- 想用 Ollama、LM Studio、llama.cpp 跑本地模型
- 想為團隊統一配置一個模型代理入口
如果你只是正常使用官方 Claude Code,並且對模型提供方、成本和本地部署沒有特殊需求,那不一定需要這類代理。
但如果你經常比較模型,或者希望讓 Claude Code 接入本地和第三方模型,這類工具會很有用。
和直接用 OpenRouter 或 Ollama 有什麼區別
直接用 OpenRouter、Ollama 或 LM Studio,通常只是和模型聊天,或者透過 API 呼叫模型。
free-claude-code 的重點不是替代這些服務,而是把它們接到 Claude Code 這個開發工作流裡。
區別在於:
- 你仍然使用 Claude Code 的終端體驗
- AI 可以圍繞程式碼倉庫執行任務
- 模型後端可以換成其他 provider
- 本地模型也有機會進入 Claude Code 工作流
- 配置集中在代理層,而不是每個工具單獨改
所以它更像橋接器,而不是新的聊天客戶端。
本地模型要注意什麼
把 Claude Code 接到本地模型很有吸引力,但也要注意現實限制。
第一,模型能力差距。
Claude Code 的任務通常不只是聊天,還包括理解程式碼、規劃修改、編輯檔案、處理命令輸出。本地小模型不一定能穩定完成這些任務。
第二,上下文視窗。
程式碼任務很吃上下文。模型上下文太小,會導致它讀不全檔案、漏掉約束,或者在多輪任務裡丟失背景。
第三,tool use 相容性。
Claude Code 工作流依賴工具呼叫和結構化行為。後端模型即使能聊天,也未必擅長遵循工具呼叫協議。
第四,速度和硬體。
本地模型的速度取決於機器配置、量化方式和模型大小。程式碼任務如果回應太慢,體驗會明顯下降。
所以,本地模型更適合實驗、低風險任務和特定場景。真正複雜的程式碼任務,仍然要根據模型能力謹慎選擇。
使用邊界
這類專案很容易被標題誤解,所以邊界要說清楚。
第一,它不是官方 Claude Code 免費額度。
它只是把 Claude Code 的請求轉發到其他模型後端。你使用 OpenRouter、DeepSeek、NVIDIA NIM 或其他 API 時,仍然需要遵守對應服務的價格、額度和使用條款。
第二,它不是繞過授權的工具。
使用任何代理工具時,都應該遵守 Claude Code、模型服務商和專案本身的授權協議。不要把它理解成規避官方限制的方式。
第三,代理會處理你的請求內容。
程式碼、命令輸出、專案上下文可能會經過代理和後端服務。部署時要考慮日誌、金鑰、網路和隱私邊界。涉及公司程式碼或敏感專案時,最好使用受控環境。
第四,不同模型表現差異會很大。
同樣的 Claude Code 操作,換一個模型後可能出現完全不同的行為。不要預設所有模型都能替代 Claude。
和 LiteLLM 這類代理有什麼關係
從思路上看,free-claude-code 屬於「相容介面代理」這一類工具。
這類工具的共同目標是減少上層應用和底層模型服務之間的耦合。上層應用只需要面對一個相對統一的介面,底層 provider 可以按配置切換。
不同專案的側重點不同。有的更偏通用模型閘道,有的更偏 OpenAI-compatible API,有的專門為 Claude Code 這類工具做適配。
free-claude-code 值得關注的地方,是它把目標場景直接放在 Claude Code 上,而不是做一個泛泛的聊天代理。
適合怎樣的使用者
它更適合有一定折騰能力的使用者:
- 熟悉 Claude Code
- 知道 API key 和模型 provider 怎麼配置
- 能理解代理服務的啟動和環境變數
- 能排查網路、連接埠、模型名稱和 streaming 問題
- 願意比較不同模型在程式碼任務裡的表現
如果你只想開箱即用,官方配置通常更省心。
如果你願意搭代理、換模型、調參數,並且想讓 Claude Code 進入更多模型環境,這個專案就值得研究。
參考
最後一句
free-claude-code 的價值,不在於「免費」這個詞,而在於它把 Claude Code 和更多模型後端之間接了一座橋。
當你想保留 Claude Code 的開發體驗,同時測試 OpenRouter、DeepSeek、本地模型或企業推理服務時,這類 Anthropic-compatible proxy 就有了用武之地。