Claude Code 使用第三方 API:ANTHROPIC_BASE_URL 与 settings.json 配置

披露:LLM API Guide 由 SeedRouter 团队维护,本文以 SeedRouter 为示例。方法适用于其他提供 Anthropic Messages 兼容接口的网关。

需要准备什么

项目SeedRouter 示例
网关根地址https://seedrouter.net(不带 /v1)
API Key在 seedrouter.net 控制台创建的 sk-...
模型 ID例如 claude-sonnet-5-5、claude-opus-5-5,以控制台模型目录为准

方法一:临时用环境变量启动

适合先试一试。macOS / Linux:

export SEEDROUTER_API_KEY="sk-你的密钥"
export ANTHROPIC_BASE_URL="https://seedrouter.net"
export ANTHROPIC_AUTH_TOKEN="$SEEDROUTER_API_KEY"
export ANTHROPIC_MODEL="claude-sonnet-5-5"

claude

Windows PowerShell:

$env:ANTHROPIC_BASE_URL = "https://seedrouter.net"
$env:ANTHROPIC_AUTH_TOKEN = "sk-你的密钥"
$env:ANTHROPIC_MODEL = "claude-sonnet-5-5"
claude

这些变量只在当前终端窗口有效,关掉窗口就恢复原状。

方法二:写进 settings.json 长期生效

Claude Code 的用户级配置文件是 ~/.claude/settings.json(Windows:C:\Users\<用户名>\.claude\settings.json)。在 env 字段里写入变量,每次启动都会自动带上:

{
  "env": {
    "ANTHROPIC_BASE_URL": "https://seedrouter.net",
    "ANTHROPIC_AUTH_TOKEN": "sk-你的密钥",
    "ANTHROPIC_MODEL": "claude-sonnet-5-5"
  }
}

文件里已有其他设置时,只需把 env 合并进去,注意 JSON 逗号。这个文件含有密钥,不要提交到 Git,也不要发到群里求助。

指定和切换模型

  • ANTHROPIC_MODEL 决定默认模型。
  • 启动后可以在 Claude Code 里输入 /model 切换。
  • 网关的模型 ID 可能与官方命名不同,务必从网关的模型目录复制。

验证是否走了网关

  1. 启动 claude 后提一个简单问题,能正常回答说明连接成功。
  2. 在 Claude Code 里输入 /status 查看当前连接信息。
  3. 打开网关控制台的用量日志,能看到刚才的请求和扣费,就确认走的是网关。

常见问题

现象原因处理
401 认证失败Key 错误、多了空格,或 Key 来自另一家网站从控制台重新复制 Key
404ANTHROPIC_BASE_URL 多写了 /v1 或域名拼错只填网关根地址
认证冲突提示同时存在账号登录和环境变量 Key执行 /logout 后重启,或清理多余的变量
模型不可用模型 ID 不在账号可用目录里到控制台模型列表核对
长任务中途断开网络或代理中断、长时间无输出被中间层切断重试,并查看网关状态页

更完整的排查清单见Codex / Claude Code 接入第三方 API 常见报错排查。

小结

Claude Code 接第三方网关的核心就是三个变量:ANTHROPIC_BASE_URL、ANTHROPIC_AUTH_TOKEN、ANTHROPIC_MODEL。先用环境变量验证,确认没问题再写进 settings.json。SeedRouter 的 Claude 系列模型按官方价格 3 折计费(价格以 SeedRouter 官网价格表和控制台为准),新账号有 2 次热门模型免费试用。

常见问题

ANTHROPIC_BASE_URL 要不要加 /v1?

不要。Claude Code 会自己拼接 /v1/messages。SeedRouter 填 https://seedrouter.net 即可。

ANTHROPIC_AUTH_TOKEN 和 ANTHROPIC_API_KEY 有什么区别?

AUTH_TOKEN 以 Authorization: Bearer 请求头发送,API_KEY 以 x-api-key 请求头发送。按网关文档选择其一,SeedRouter 的示例使用 ANTHROPIC_AUTH_TOKEN。

之前用 Claude 账号登录过,会冲突吗?

可能出现认证冲突提示。在 Claude Code 里执行 /logout 退出账号登录,再用环境变量重新启动即可。