乐于分享
好东西不私藏

Claude Code 源码泄露后 我用社区版加了多模型支持

Claude Code 源码泄露后 我用社区版加了多模型支持

起因

Claude Code 确实好用,但有个问题——它只认 Anthropic 自家的 API。在国内想用,得搞海外信用卡,或者折腾各种中转代理,门槛不低,还被封号。

另外我在远端服务器上干活比较多,SSH 上去之后 Claude Code 的桌面助手 CC Switch 就不好用了。之前用 OpenCode 替代凑合,功能上总觉得差一截。

3 月底 Claude Code 的源码通过 npm 包的 source map 泄露出来后,FreeCode 项目很快就开源了一个干净的可编译版本,去掉了遥测和限制。架构清晰,魔改空间很大,于是在社区开源版本上添加功能。

怎么安装

git clone https://gitee.com/wangeek/free-code.git
cd free-code
bun install
bun run build

Bun 没装的话先 

curl -fsSL https://bun.sh/install | bash

构建完会在当前目录生成一个 cli 可执行文件。为了方便调用,可以软链接到系统路径:

# Linux
sudo ln -sf $(pwd)/cli /usr/bin/freecode

# macOS
sudo ln -sf $(pwd)/cli /usr/local/bin/freecode

之后在任意目录直接敲 freecode 就能用了,兼容 Claude Code 各项配置文件。

怎么配

自定义 API Provider

原版只能连 Anthropic,我加了一套多 Provider 配置。只要你的 API 兼容 Anthropic Messages 协议,就能接进来——智谱 GLM、MiniMax、OpenRouter,甚至自己搭的转发服务都行。

配置文件放在 ~/.claude/api_keys.json

{
  "apiProviders": {
    "glm": {
      "baseURL": "https://open.bigmodel.cn/api/anthropic",
      "apiKey": "你的API Key",
      "models": ["glm-5.1", "glm-5-turbo", "glm-4.7"]
    },
    "minimax": {
      "baseURL": "https://api.minimaxi.com/anthropic",
      "apiKey": "你的API Key",
      "models": ["MiniMax-M2.7"]
    },
    "anthropic": {
      "baseURL": "https://api.anthropic.com",
      "apiKey": "sk-ant-xxx",
      "models": ["claude-opus-4-6", "claude-sonnet-4-6"]
    }
  },
  "activeProvider": "glm"
}

models[0] 会作为默认模型,最后一个作为快速模型。改完 activeProvider 重启即可切换。

/provider 命令

也可以在交互界面里直接管理,不用手动改配置文件:

  • /provider — 看当前用的是哪个
  • /provider list — 列出所有配好的
  • /provider use glm — 切换

主要改了什么

自定义 API Provider

这是最核心的改动。现在可以接任意兼容的模型服务。

去掉启动时的无意义网络请求

原版启动时会对 api.anthropic.com 发一个 HEAD 请求做连接预热,还会静默拉一次 OAuth 用户信息。用了第三方 API 的话,这两个请求纯属浪费,还得等超时。

适合谁

  • 经常 SSH 到服务器上写代码,需要在终端里用 CC 的人
  • 想用国产模型(智谱 GLM 等)替代 Anthropic API 的人
  • 同时用好几家模型服务,想快速切换的人

项目在这:

https://gitee.com/wangeek/free-code

有问题可以提 Issue,也欢迎提 PR。