想把 Claude Code 从官方 API 切到 GLM Coding Plan、Kimi 或某个中转站,却发现每次都要改配置文件、重启会话?这篇教程给出两种做法:先讲手动改配置的原生方式(理解原理),再讲用开源工具 Keyway 在菜单栏一键切换、已运行的会话不用重启的省事方式。
为什么需要切换供应商
- 成本:官方 API 按 token 计费,国内 GLM、Kimi、DeepSeek 的 Coding Plan 通常便宜得多;
- 可用性:官方端点限流或不稳定时,快速切到备用供应商,不让编码中断;
- 按需选择:不同任务用不同模型——重构用 Claude,日常补全用 GLM,长文档用 Kimi。
Claude Code 的供应商由两个环境变量决定:ANTHROPIC_BASE_URL(请求发往哪里)和 ANTHROPIC_AUTH_TOKEN(用哪个 Key 认证)。所谓「切换供应商」,本质就是换这两个值。
方式一:手动改配置(原生方式)
编辑 ~/.claude/settings.json,在 env 中写入目标供应商:
{
"env": {
"ANTHROPIC_BASE_URL": "https://open.bigmodel.cn/api/anthropic",
"ANTHROPIC_AUTH_TOKEN": "你的 GLM API Key"
}
}
常见供应商的 Anthropic 兼容端点:
- 智谱 GLM:
https://open.bigmodel.cn/api/anthropic(Coding Plan 同一端点) - Moonshot Kimi:
https://api.moonshot.cn/anthropic - 官方 Anthropic:删除这两个变量即恢复直连
- 中转站:以其文档提供的 Anthropic 兼容地址为准
方式二:用 Keyway 一键切换(推荐)
Keyway(MIT 开源,macOS / Windows / Linux)在本地跑一个代理 127.0.0.1:9527,把 Claude Code 的请求转发给你选定的供应商。配置一次之后,切换就是菜单栏里点一下的事:
- 添加供应商 — 预设直选 GLM、Kimi 等,或填任意自定义 Base URL,也可从现有 Claude Code 配置一键导入;
- 一键接管 — Keyway 自动改写
settings.json指向本地代理(改写前自动备份,随时可还原); - 随时秒切 — 全局快捷键
⌘⇧K呼出切换面板,选中即切;已通过代理的会话无需重启,下一条请求就走新供应商。
切换后在请求日志里核对实际供应商、模型与状态码——中转站到底把请求发给了谁,一目了然,不用猜。还可以配置故障转移链(上游挂了自动切备用)和模型路由(比如 claude-* 走官方、deepseek-* 走中转)。API Key 存在本机 SQLCipher 加密数据库,主密钥由系统钥匙串保管,导出配置不含 Key。
常见问题
切换后,正在运行的会话要重启吗?
手动改 settings.json 需要重启会话。通过 Keyway 代理的会话切换后,新请求立即按新配置转发,无需重启;已发出请求不会迁移。
会和我的官方 Claude 订阅冲突吗?
不会。Keyway 接管前自动备份原配置;想回官方直连,在「接管管理」里点「还原」即可恢复原值。
GLM、Kimi 报 404 / 401 怎么办?
404 多为端点写错(必须用上表中的 Anthropic 兼容端点,而非 OpenAI 兼容端点);401 为 Key 无效或未开通对应服务。在 Keyway 里可对每个供应商一键测连通性与延迟。
退出 Keyway 后 Claude Code 还能用吗?
接管状态下 CLI 依赖本地代理:关闭窗口会驻留托盘,完全退出则代理停止,需要先「还原」配置恢复直连。