Claude Code 接入中转站配置教程:三件套填法与报错排查
Claude Code 官方支持通过环境变量把请求指向自定义 API 端点,这也是各家 Anthropic 格式中转站通用的接入方式。整个过程核心就三样东西:Base URL、API Key、模型名,填对位置基本一次就通。这篇按官方文档的口径把三件套怎么填、填在哪、报错了怎么排查一次讲清楚。具体变量名以官方文档(code.claude.com/docs 的 LLM Gateway 连接说明)为准。
接入前:先拿到三件套
在中转站后台注册后,一般能拿到这三样:
-
Base URL:中转站的接口地址,形如
https://xxx.example.com。注意 Claude Code 走的是 Anthropic Messages 格式,地址末尾不要加/v1——/v1结尾是 OpenAI 格式客户端的习惯,填了反而会 404。到底带不带路径后缀,以中转站自己的接入文档为准。 -
API Key:以
sk-开头的令牌。复制时注意别带上前后空格或引号。 -
模型名:中转站支持的模型 ID,必须是完整精确的 ID(如
claude-sonnet-4-5这类格式),写缩写或别名会报「模型不存在」。
方式一:写入 settings.json(推荐)
Claude Code 的全局配置文件在 ~/.claude/settings.json(Windows 是 %USERPROFILE%\.claude\settings.json),没有就新建一个,写入:
{
"env": {
"ANTHROPIC_BASE_URL": "https://xxx.example.com",
"ANTHROPIC_AUTH_TOKEN": "sk-你的令牌",
"ANTHROPIC_MODEL": "claude-sonnet-4-5",
"ANTHROPIC_SMALL_FAST_MODEL": "claude-sonnet-4-5"
}
}几个关键点:
-
认证用
ANTHROPIC_AUTH_TOKEN(Bearer 方式),不是ANTHROPIC_API_KEY,别填错变量名。 -
ANTHROPIC_MODEL是主模型,日常对话、编码、工具调用都走它。 -
ANTHROPIC_SMALL_FAST_MODEL是后台小模型,负责会话标题生成、/compact压缩摘要这类轻量任务。建议和中转站确认支持哪些模型后把两个都显式指定——如果只设了主模型,后台任务可能回落到默认的claude-haiku-*,中转站没有这个模型就会报错。部分中转站文档里也会用ANTHROPIC_DEFAULT_SONNET_MODEL/ANTHROPIC_DEFAULT_OPUS_MODEL/ANTHROPIC_DEFAULT_HAIKU_MODEL这组变量做映射,按站方文档填即可。 -
如果文件里原本有根级的
"model": "..."字段,删掉它,让 env 里的ANTHROPIC_MODEL接管路由,避免两边打架。
改完保存,重启 Claude Code 生效——配置文件只在启动时读取一次。
方式二:环境变量(临时用)
不改文件的话,直接在 shell 里导出:
export ANTHROPIC_BASE_URL="https://xxx.example.com"
export ANTHROPIC_AUTH_TOKEN="sk-你的令牌"
export ANTHROPIC_MODEL="claude-sonnet-4-5"Windows PowerShell 用 $env:ANTHROPIC_AUTH_TOKEN="sk-你的令牌"。缺点是每次开新终端都要重设,长期用还是写进 settings.json 省心。注意:如果两种方式都配了,shell 导出的环境变量可能覆盖 settings.json 的值,排查问题时先 echo $ANTHROPIC_BASE_URL 确认当前实际生效的是哪个。
VS Code 扩展的情况特殊:它推荐在 VS Code 自己的用户设置里用 claudeCode.environmentVariables 配置网关变量,因为扩展启动前的登录检查读的是这里,~/.claude/settings.json 的值传得到进程但过不了扩展自己的校验。
验证是否生效
不要一上来就跑大项目,先做最小验证:
- 在 Claude Code 里输入
/status,它会直接打印当前生效的 Base URL 和模型——比/model可靠(自定义端点下/model只显示你配置的值,不查询中转站的模型列表)。 - 或者用一次性命令探活:
claude -p "回复OK",能正常回话说明链路通了。
常见报错排查
| 报错 | 常见原因 | 处理 |
|---|---|---|
| 401 Unauthorized | Key 复制时带了空格/引号;多了 Bearer 前缀;令牌过期;之前用官方账号登录过产生干扰 | 重新复制 Key;确认变量是 ANTHROPIC_AUTH_TOKEN;曾订阅登录过的先在 Claude Code 里 /logout 再试 |
| 404 Not Found / ERR_BAD_REQUEST | Base URL 末尾多了 /v1 或多余斜杠;路径写错 | 按中转站文档核对地址,Claude Code 通常填根地址不带 /v1 |
| 429 Too Many Requests | 中转站限速(常见每分钟几十次),Claude Code 的 Agent 流程请求很密;或当日额度用完 | 等一会儿重试;查看站方的限速与额度说明;长任务降低并发 |
| 模型不存在 / model_not_found | 模型 ID 写错、用了别名、或该 Key 没开通此模型 | 到中转站模型列表页复制完整精确的 ID;确认 Key 的可用模型范围 |
| 配置改了没生效 | 没重启;shell 里另有 export 覆盖;项目目录里还有一份项目级配置 | 重开终端和会话;echo 确认环境变量;检查项目下的 .claude/settings.json 是否覆盖了全局配置 |
| 回复为空 / 工具调用不稳 | 部分模型需要保持思考模式开启,被额外参数关掉了 | 按站方说明检查请求参数设置 |
防坑提示
- 第三方中转意味着你的全部请求内容(代码、对话)都经过对方服务器。公司项目、含密钥或敏感数据的代码库,先想清楚再接,生产环境尽量走官方或自建网关。
-
换中转站时记得清掉旧配置:删除 settings.json 里对应的 env 键,或
unset ANTHROPIC_BASE_URL ANTHROPIC_AUTH_TOKEN ANTHROPIC_MODEL,否则会一直在向旧地址发请求。 - 中转站定价、额度、支持的模型随时会变,接入前以站点当前页面为准,别按几个月前的攻略照抄。
- 低价大额度的新站多留个心眼,充值金额控制在自己能承受损失的范围内。
FAQ
Q:ANTHROPIC_AUTH_TOKEN 和 ANTHROPIC_API_KEY 有什么区别?
A:前者走 Authorization: Bearer 头,后者走 x-api-key 头。中转站两种都支持的情况居多,但要看站方文档指定用哪个;官方网关文档里 Bearer 方式(AUTH_TOKEN)更常见。填错了就是 401。
Q:填了配置后 /status 还显示官方地址怎么办?
A:说明变量没传进进程。重开终端;确认配置写的是 ~/.claude/settings.json 而不是别的路径;检查 shell 配置文件(~/.zshrc 等)里有没有残留的 export;项目目录下是否有项目级配置覆盖了全局值。
Q:Base URL 到底要不要加 /v1?
A:Claude Code 走 Anthropic 格式,通常填根地址、不加 /v1;/v1 是 OpenAI 格式客户端的习惯。个别中转站路径特殊(如带 /api 后缀),一律以站方接入文档为准。
Q:接入后还能切回官方吗?
A:能。删掉 settings.json 里的相关 env 键并重启,或临时 unset 那几个环境变量即可恢复默认行为。
Q:用中转站跑 Claude Code 稳定吗?
A:取决于站方上游质量与限速策略。Agent 式任务一轮可能消耗几万到十几万 token,对稳定性和速率要求比聊天高,建议先拿小任务试跑,观察一段时间再决定是否长期使用。
本文由中转站导航整理,2026-10-31 更新。发现失效信息欢迎反馈。