Claude Code 报错 Unable to connect to Anthropic services 怎么解决

Claude Code 连不上 api.anthropic.com。国内最常见的原因是直连官方不通,或者设置的第三方地址没有被 Claude Code 读到,它还在连官方。

报错原文

Unable to connect to Anthropic services
Failed to connect to api.anthropic.com: ERR_BAD_REQUEST

冒号后面也可能是 ECONNRESET、ETIMEDOUT 等网络错误。

这条报错是什么意思

Claude Code 启动时要连接模型服务。没有设置 ANTHROPIC_BASE_URL 时,它连的是官方的 api.anthropic.com;这一步失败就会出现这条报错。

常见原因

  1. 所在网络连不上 api.anthropic.com,或者出口地区不在 Anthropic 支持的范围内。
  2. 已经配置了第三方平台,但环境变量没生效:在旧终端里启动、VS Code 没整个重启,或者写错了变量名,Claude Code 仍在连官方。
  3. 开了代理,但 Claude Code 没走代理:Node.js 只认 HTTPS_PROXY 这类环境变量,不认系统代理设置。
  4. 冒号后是 ECONNRESET 时,多是公司防火墙、代理或安全软件中途断开了连接。

怎么排查

  1. 先确认 Claude Code 读到了哪些变量:

    # macOS / Linux:只列变量名,不打印 Key
    env | grep ^ANTHROPIC_ | cut -d= -f1
    
    # Windows PowerShell
    (Get-ChildItem Env:ANTHROPIC*).Name
  2. 用第三方平台时,列表里必须有 ANTHROPIC_BASE_URL 和 ANTHROPIC_AUTH_TOKEN。没有就新开一个终端再试;VS Code 用户要完全退出 VS Code 再打开。也可以把这两个变量写进 ~/.claude/settings.json 的 env,不依赖终端。

  3. 用官方账号时,需要能连上 api.anthropic.com 的网络,并让 Claude Code 走代理:

    export HTTPS_PROXY=http://127.0.0.1:7890   # 换成你的代理地址和端口
  4. 还不行,在 Claude Code 里输入 /status,看它实际连接的地址和使用的凭据。

相关报错

配置有问题?

用 配置生成器 重新生成一份环境变量或 settings.json,Key 只在本地拼接。

需要国内能直接连接的 Anthropic 原生协议地址,可以看 TeamoRouter 的 Claude Code 接入文档(利益相关:本站由 TeamoRouter 团队维护,它不是 Anthropic 官方渠道)。