Claude Code Manual

凭证与接入 ZAI Router

Claude Code 支持多种登录方式。接入 ZAI Router 只需要两个环境变量:API 地址和你的 Key。

三种凭证

方式怎么用谁来计费
Claude 订阅账号启动后按提示在浏览器登录,或运行 /login你的 Claude 订阅
Anthropic API Key环境变量 ANTHROPIC_API_KEYAnthropic Console 账户
API 网关凭证环境变量 ANTHROPIC_BASE_URL + ANTHROPIC_AUTH_TOKEN网关账户,例如 ZAI Router

同时存在多种凭证时,Claude Code 按固定顺序选择:ANTHROPIC_AUTH_TOKEN 优先于 ANTHROPIC_API_KEY,两者都优先于浏览器登录的订阅账号。

两个容易踩的坑:

  • 只设置 ANTHROPIC_BASE_URL、不设置凭证:如果你之前登录过订阅账号,请求会经过新地址,但仍然使用订阅账号计费。接入 ZAI Router 时两个变量都要设置。
  • 残留的旧变量:以前设置过 ANTHROPIC_API_KEY,现在又设置了 ANTHROPIC_AUTH_TOKEN,生效的是后者。排查问题时记得检查有没有残留的变量。

获取 Key

在 m.zairouter.com 注册账号,系统会把 API Key 发到注册邮箱。Key 等同于你的钱包,不要截图、外发或提交到代码仓库。

方式一:环境变量

适合你已经习惯用环境变量管理 Key 的情况。

macOS / Linux(zsh 写入 ~/.zshrc,bash 写入 ~/.bashrc):

echo 'export ANTHROPIC_BASE_URL="https://api.zairouter.com"' >> ~/.zshrc
echo 'export ANTHROPIC_AUTH_TOKEN="sk-你的Key"' >> ~/.zshrc

Windows(PowerShell):

setx ANTHROPIC_BASE_URL "https://api.zairouter.com"
setx ANTHROPIC_AUTH_TOKEN "sk-你的Key"

设置后重新打开终端。检查 Key 的长度(不会把 Key 显示出来):

echo ${#ANTHROPIC_AUTH_TOKEN}
$env:ANTHROPIC_AUTH_TOKEN.Length

方式二:settings.json

把变量写进 Claude Code 自己的配置文件 ~/.claude/settings.json(Windows 为 %USERPROFILE%\.claude\settings.json)的 env 中,只对 Claude Code 生效,也不受终端类型影响:

{
  "env": {
    "ANTHROPIC_BASE_URL": "https://api.zairouter.com",
    "ANTHROPIC_AUTH_TOKEN": "sk-你的Key"
  },
  "permissions": {
    "defaultMode": "default"
  }
}

permissions.defaultMode 让每次会话都从“手动审批”模式开始,原因见权限与安全。

这个文件里有明文 Key:只在个人电脑上这样做,不要把它分享出去,也不要把含 Key 的配置放进项目仓库的 .claude/settings.json。

验证

claude

设置了 ANTHROPIC_AUTH_TOKEN 后,Claude Code 不会再要求浏览器登录。进入后输入 /status,确认登录方式和 API 地址;再随便问一句,比如“你好,用一句话介绍你自己”,能正常回复即接入成功。

选择模型

  • 会话中输入 /model,从列表里选择。
  • 启动时指定:claude --model claude-sonnet-5-5。
  • 用环境变量 ANTHROPIC_MODEL 设置默认模型;--model 和 /model 的优先级比它高。

ZAI Router 上可用的 Claude 模型见模型页,例如 claude-opus-5-5、claude-sonnet-5-5、claude-haiku-4-5。

网络受限时

如果你的网络访问 Anthropic 官方服务不稳定,可以设置 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1,关闭自动更新、遥测、错误上报等非必要的网络请求,只保留模型调用。代价是不会再自动更新,需要定期手动运行 claude update。

公司网络需要代理时,设置 HTTPS_PROXY;如果代理使用公司自签的证书,再设置 NODE_EXTRA_CA_CERTS 指向证书文件。