
独立开发者 Alishahryar 维护的 free-claude-code 仓库在 5 月 21 日的 Star 数突破 26k,成为本周开源榜上传播最猛的”逆向”工具。它本质上是一个 FastAPI 写的本地代理:把 Claude Code 客户端发给 Anthropic 的 /v1/messages 请求拦下来,转发给十七家 OpenAI 兼容的第三方推理后端——NVIDIA NIM、Groq、Cerebras、DeepSeek、Mistral、Z.ai、Kimi、Fireworks、Ollama、LM Studio、llama.cpp 等都在内。
一个代理解决一件具体问题
痛点很直接:Claude Code CLI 本身没有官方的 model picker 切换到第三方模型的能力,开发者要用 DeepSeek 或本地 Ollama 跑同样的 agent 工作流,过去要么自己魔改客户端,要么完全放弃 Claude Code 的工具体系。free-claude-code 的设计是把客户端协议保持稳定不动——Claude Code 看到的还是 Anthropic Messages API——但底层把请求转译成各家自己的协议。
仓库 README 列出的 17 家提供商可以分成三类:纯 OpenAI Chat Completions 兼容(NVIDIA NIM、Groq、Cerebras、Mistral、OpenCode Zen 等)、Anthropic Messages 兼容(DeepSeek、Wafer、Kimi、Z.ai、Fireworks)、本地推理(LM Studio、llama.cpp、Ollama)。每种走的转译路径不同,仓库 core 目录里把这三套适配层抽得很清楚,加新提供商主要是继承一个 transport 类。
三个工程细节
第一是分级路由。Claude Code 内部按 Opus/Sonnet/Haiku 三个 tier 调用模型,free-claude-code 让用户为每个 tier 单独指定一个目标——比如 Opus 走 NVIDIA NIM 上的 Kimi-K2.5,Sonnet 走 OpenRouter 的 DeepSeek free 槽,Haiku 走本地 LM Studio。这样既能拿便宜模型扛体量,又能在关键路径上换更强的模型。
第二是 thinking block 的兼容。Claude Code 的 reasoning 流默认走 Anthropic 的 thinking 块协议,OpenAI 兼容后端则用 reasoning_content 字段。仓库在转译层做了双向映射,让 Claude Code 的”思考”显示在 OpenAI 兼容流上不丢内容。这是一个细节,但决定了 reasoning 模型用起来是否顺手。
第三是本地优化。仓库给一些 Claude Code 频繁发的小请求(model 列表、token 计数)做了本地短路应答,不走真实后端,省 quota 也省延迟。这种针对客户端发包模式做的针对性优化,在通用代理里见不到。
它能扛住多大规模真实使用
仓库自带的 admin UI 跑在 127.0.0.1:8082,所有 API key 都填在本地配置——不会上云,对担心 API key 流出的开发者算是基本防线。安装路径选了 uv 管理的 Python 3.14 环境,CI 强制 ruff、ty、pytest 三步检查通过,作者把这条流水线写进 contribution policy。仓库目前还没接 Docker,作者 Alishahryar 在 README 里直接写了”不要开 Docker 集成 PR”,意图是先稳定核心代理协议再考虑分发。
开发者关心的另一件事是 Claude Code 的 prompt 缓存能否在第三方后端复用。free-claude-code 目前不主动声称支持 prompt cache——这一项是 Anthropic 自家的功能,OpenAI 兼容路径上各家实现差距很大。换句话说,省了模型 token 费,但批量任务的缓存命中红利大概率拿不到。这是用第三方后端跑 Claude Code 工作流时绕不开的代价。
这条路是地下工程而不是替代方案
26k Star 在一个月内堆出来,说明开发者对”在 Claude Code 工作流里用便宜模型”的需求是真实的。但要清楚,这种代理路径长期不一定稳定——Anthropic 任何客户端协议升级都可能让转译层断裂;提供商的 free tier 也会随时收缩;prompt 缓存等关键性能优化无法跨家复用。把它当成探索期的工具用合适,比如在本地 Ollama 上跑长尾任务、在 Cerebras 上跑短上下文加速;把它当成 Claude API 的长期替代品就过于乐观。Alishahryar 自己在 README 顶部把工具定位写得很克制:”让你在终端里以你想要的方式选择免费、付费或本地模型”,没有承诺它能做到 Anthropic 全栈体验的等价物——这份克制比工具本身更值得借鉴。
参考链接: