📚 系列导航:上一篇 [03 · 它是怎么工作的] 讲透了代理循环。这一篇讲一个环境变量——
ANTHROPIC_BASE_URL,它控制 Claude Code 把请求发到哪个模型接口。下一篇 [05 · 第一次使用] 带你跑通第一个真实任务。
ANTHROPIC_BASE_URL 是 Claude Code 中一个关键的环境变量。理解它的作用,能帮你更好地掌握 Claude Code 的请求路由逻辑。
⚠️ 修改
ANTHROPIC_BASE_URL指向非官方地址属于实验性用法。
看完这一篇,你会拿到:
- 搞懂
ANTHROPIC_BASE_URL到底在控制什么 - 知道配这个变量时需要同时留意模型名
- 学会用
/status验证当前配置
01 ANTHROPIC_BASE_URL 的作用
先说结论:ANTHROPIC_BASE_URL 决定 Claude Code 把请求发到哪个地址,但不决定用哪个模型回答。
你装的 Claude Code,本质是一个跑在终端里的客户端——它负责读你的代码、调工具、跑代理循环。每一步都要把请求发给某个模型接口,等结果回来。ANTHROPIC_BASE_URL 就是用来设置这个目标地址的。
ANTHROPIC_BASE_URL改变请求发送的位置,而不是哪个模型回答它们。(官方《模型配置》原文)
也就是说,这个变量只管「往哪寄信」,不负责「谁来回信」。目标地址收到请求后用哪个模型处理,由接口地址 + 模型名两个因素共同决定。所以修改 ANTHROPIC_BASE_URL 后,通常也需要同步指定对应的模型名。两者必须配对。
💡 一句话总结:
ANTHROPIC_BASE_URL管「寄到哪」,模型名管「谁来答」,修改 URL 后记得同步配模型名。
02 配置方式
ANTHROPIC_BASE_URL 通过环境变量设置。Claude Code 启动时会读取这些变量,决定请求发往何处。
Mac / Linux
export ANTHROPIC_BASE_URL=<你的接口地址>
export ANTHROPIC_AUTH_TOKEN=<你的 API 密钥>
export ANTHROPIC_MODEL=<模型名>
Windows(PowerShell)
$env:ANTHROPIC_BASE_URL="<你的接口地址>"
$env:ANTHROPIC_AUTH_TOKEN="<你的 API 密钥>"
$env:ANTHROPIC_MODEL="<模型名>"
让配置持久化
上面的 export / $env: 只在当前终端窗口有效,关闭后失效。
- Mac(zsh):将
export行追加到~/.zshrc,执行source ~/.zshrc - Linux(bash):追加到
~/.bashrc,执行source ~/.bashrc - Windows:在系统环境变量中设置,或写入 PowerShell
$PROFILE
💡 一句话总结:环境变量配三个参数——接口地址、密钥、模型名;临时配置关窗即失效,持久化需写入 shell 配置文件。
03 验证是否生效
配完先用 /status 确认。
启动 Claude Code:
cd /path/to/your-project
claude
在对话框中输入:
/status
关注输出中的 Base URL 和 Model 字段。如果 Base URL 显示的是你配置的地址,说明配置已生效。
常见排查:
| 现象 | 可能原因 | 解决方法 |
|---|---|---|
| Base URL 仍为默认值 | 环境变量未生效 | 确认已写入配置文件并重新加载 |
| 启动报模型不存在 | 模型名不匹配 | 核对目标平台的最新模型列表 |
| 401 鉴权失败 | 密钥错误或过期 | 检查密钥是否正确 |
💡 一句话总结:
/status是最快的验证手段——看一眼 Base URL 就知道配没配上。
04 模型档位与变量
Claude Code 内部按任务复杂度分为三个档位,每个档位可通过独立的环境变量指定模型:
| 变量 | 用途 |
|---|---|
ANTHROPIC_DEFAULT_OPUS_MODEL | 最复杂任务:架构设计、疑难调试 |
ANTHROPIC_DEFAULT_SONNET_MODEL | 日常任务:写功能、改代码 |
ANTHROPIC_DEFAULT_HAIKU_MODEL | 轻量任务:快速问答、后台杂活 |
CLAUDE_CODE_SUBAGENT_MODEL | 子代理任务 |
这样做的好处是:复杂任务用强模型、轻量任务用快模型,合理分配资源。
另外 CLAUDE_CODE_EFFORT_LEVEL 可控制模型思考深度,可选 low / medium / high / xhigh / max / auto。调高让模型更深入推理,调低则更快响应。
05 一些需要注意的点
弃用变量
旧版教程中可能出现 ANTHROPIC_SMALL_FAST_MODEL 这个变量名。官方已将其标记为弃用(deprecated),正主是 ANTHROPIC_DEFAULT_HAIKU_MODEL。新配置请使用后者。
AUTH_TOKEN 与 API_KEY 的区别
| 变量 | 发送方式 | 适用场景 |
|---|---|---|
ANTHROPIC_AUTH_TOKEN | 作为 Authorization: Bearer 头发送 | 标准 Bearer 鉴权的接口 |
ANTHROPIC_API_KEY | 作为 X-Api-Key 头发送 | Anthropic 官方 API |
两个变量用途不同,根据目标接口的鉴权方式选择合适的变量。
高级特性限制
当 ANTHROPIC_BASE_URL 指向非官方地址时,MCP 工具搜索等功能默认会被关闭。日常编程影响不大,但如果重度依赖 MCP 等高级特性,需要注意这一点。
💡 一句话总结:注意弃用变量名、分清两种鉴权变量;指向非官方地址时部分高级特性可能受限。
06 小结
| 要点 | 说明 |
|---|---|
| 作用 | ANTHROPIC_BASE_URL 控制请求目标地址 |
| 搭配 | 修改 URL 后需同步指定模型名 |
| 验证 | /status 查看 Base URL 和 Model |
| 档位 | 三个档位变量分别控制不同复杂度任务的模型 |
| 注意 | 弃用变量、鉴权方式差异、高级特性限制 |
你现在应该能:理解 ANTHROPIC_BASE_URL 的作用,正确配置相关环境变量,并用 /status 验证配置是否生效。
下一篇 [05 · 第一次使用]——配好之后,跑通第一个真实任务。