Free Claude Code:把 Claude Code 接到免费模型上

11 阅读3分钟

Free Claude Code:把 Claude Code 接到免费模型上

它干了什么

Free Claude Code 是一个本地代理服务器,拦截 Claude Code 发出的 Anthropic API 请求,转发到你选的模型后端。NVIDIA NIM 的免费额度、OpenRouter 的免费模型、DeepSeek,或者本地跑的 Ollama、LM Studio、llama.cpp 都行。

Claude Code 的界面和工具链不变,背后的模型随你换。

谁会用这个

Claude Code 的 API 费用不低,这个项目给了几种人一条路:

  • 想体验 Claude Code 的 agentic 工作流,但不想付 Anthropic 的钱
  • 隐私敏感或离线环境,必须用本地模型
  • 想按任务分级,比如 Opus 级走 Kimi K2.5,Sonnet 级走 DeepSeek,Haiku 级走本地小模型

怎么工作的

Claude Code CLI / IDE
        |
        | Anthropic Messages API
        v
Free Claude Code proxy (:8082)
        |
        | 协议转换 + 流式处理
        v
NVIDIA NIM / OpenRouter / DeepSeek / LM Studio / llama.cpp / Ollama

代理做了这几件事:

协议翻译,NVIDIA NIM 用 OpenAI Chat 格式,代理把 Anthropic Messages 请求翻译过去再翻译回来。OpenRouter、DeepSeek 直接走 Anthropic Messages 兼容接口。流式转发,保持 SSE 流式输出,Claude Code 的实时显示不受影响。模型路由,Claude Code 内部区分 Opus、Sonnet、Haiku 三个级别的请求,代理把它们分别路由到不同的模型和供应商。本地优化,对 Claude Code 发出的探测性请求(比如 token 计数)直接本地应答,省一次网络往返。thinking block 处理,规范化不同模型返回的推理块格式,让 Claude Code 能正确解析。

支持的后端

后端类型特点
NVIDIA NIM云端免费额度GLM-4.7、Kimi K2.5 等,注册即有免费调用量
OpenRouter云端大量免费模型,比如 DeepSeek R1 免费版
DeepSeek云端Anthropic Messages 兼容端点,价格低
Kimi云端Moonshot 的 OpenAI 兼容 API
LM Studio本地GUI 加载模型,暴露本地 API
llama.cpp本地轻量推理服务器
Ollama本地一行命令拉模型跑起来

快速上手

前置条件:已装 Claude Code,Python 3.14 + uv。

# 1. 克隆并配置
git clone https://github.com/Alishahryar1/free-claude-code.git
cd free-claude-code
cp .env.example .env
# 编辑 .env,填入 provider key 和模型

# 2. 启动代理
uv run uvicorn server:app --host 0.0.0.0 --port 8082

# 3. 启动 Claude Code,指向代理
ANTHROPIC_AUTH_TOKEN="freecc" \
ANTHROPIC_BASE_URL="http://localhost:8082" \
CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1 \
claude

VS Code 用户在 settings.json 里加环境变量,JetBrains 用户改 ACP 配置文件。

混合路由的配置长这样:

MODEL_OPUS="nvidia_nim/moonshotai/kimi-k2.5"
MODEL_SONNET="open_router/deepseek/deepseek-r1-0528:free"
MODEL_HAIKU="lmstudio/unsloth/GLM-4.7-Flash-GGUF"
MODEL="nvidia_nim/z-ai/glm4.7"

重活给强模型,轻活给本地小模型,费用和延迟都可控。

附加功能

Discord / Telegram 机器人,把 Claude Code 会话包装成聊天机器人,支持远程编码、对话分支、语音转文字。Model Picker 集成,Claude Code 2.1.126+ 的 /model 命令可以直接列出代理提供的所有模型。语音笔记,通过本地 Whisper 或 NVIDIA NIM 做语音转录,在 Discord/Telegram 里发语音就能下达编码指令。

实际体验的局限

Claude Code 的 agentic 能力高度依赖模型质量。换成免费或本地模型后,工具调用的准确率会下降,特别是复杂的多步骤任务;上下文窗口可能更小,长对话容易丢信息;部分模型不支持 thinking/reasoning,需要在配置里关掉;本地模型的速度取决于硬件。

适合的场景是简单的代码生成、文件编辑、问答,这些任务对模型能力的要求没那么极端。

技术实现

项目用 FastAPI 做路由层,每个 provider 有独立的 transport 适配器。扩展新 provider 只需继承 OpenAIChatTransportAnthropicMessagesTransport,注册到 catalog。

工具链:Ruff 格式化 + 检查、ty 类型检查、Pytest 测试,CI 强制执行。Python 3.14 是硬性要求。

值不值得用

Free Claude Code 让你用 Claude Code 的工作流,但不绑定 Anthropic 的模型和定价。想省钱、想用本地模型、想混合多个供应商的开发者可以试试。代价是模型能力的下降,这个 tradeoff 是否值得取决于你的具体任务。

项目地址:github.com/Alishahryar…