解决Claude Code 启动后无响应,无法与后端 API 建立连接。

AI 时代程序员必备技能

Codex、Claude Code、Cursor、Hermes Agent、OpenClaw等工程化实战专栏 ,讲透 AI 如何接管脏活累活

解决Claude Code 启动后无响应,无法与后端 API 建立连接

1. 遇到的问题

Claude Code 启动后无响应,无法与后端 API 建立连接。排查发现根本原因是 API 认证配置失效

  • ANTHROPIC_AUTH_TOKEN 被服务端返回「无效令牌」
  • ANTHROPIC_BASE_URL 配置错误或指向不支持 Claude Code 完整接口的代理
  • 表现为日志中连续出现 401 无效的令牌404 Invalid URL (POST /v1/messages/count_tokens)

2. 怎么解决此问题

Step 1:确认当前环境变量状态

env | grep ANTHROPIC
echo $ANTHROPIC_BASE_URL
echo $ANTHROPIC_AUTH_TOKEN

Step 2:在 ~/.bashrc 中配置(推荐,最稳定)

export ANTHROPIC_AUTH_TOKEN="sk-xxxxxxxxxxxxxxxxxxxx"
export ANTHROPIC_BASE_URL="https://your-proxy-endpoint.com"

然后执行 source ~/.bashrc,再启动 Claude Code。

Step 3:或在 ~/.claude/settings.json 中配置(应用级配置)

{
    "env": {
      "ANTHROPIC_API_KEY": "sk-xxxxxxxxxxxxxxxxxxxx",
      "ANTHROPIC_BASE_URL": "https://your-proxy-endpoint.com"
    },
    "permissions": {
      "allow": [],
      "deny": []
    },
    "apiKeyHelper": "echo 'sk-'"
}

注意:修改后需要重启 Claude Code 会话才能生效。

Step 4:验证配置是否生效

查看最新 debug 日志确认无 401404 错误:

cat ~/.claude/debug/$(ls -t ~/.claude/debug/ | head -1)

3. 经验与启发

3.1 两种配置方式的差异

配置位置生效时机适用场景
~/.bashrc进程启动前(shell 继承)API 地址、Token 等启动即需的变量
~/.claude/settings.jsonClaude Code 启动后读取应用级附加配置

关键结论~/.bashrc 中的环境变量在 Claude Code 初始化阶段就已确定,因此更"硬"、更可靠;settings.json 生效偏晚,可能错过早期 API 初始化。

3.2 调试三板斧

  1. 看日志~/.claude/debug/*.txt 中的 401/403/404 错误直接定位问题
  2. 查环境env | grep ANTHROPIC 确认当前生效配置
  3. 清缓存~/.claude.json 中的 customApiKeyResponses.rejected 会记录被拒绝的 key,必要时可清理

3.3 避坑指南

  • Token 有效性:第三方代理的 Token 不一定兼容 Claude Code 原生接口,需确认代理支持 /v1/messages/v1/messages/count_tokens
  • Base URL 格式:不要带末尾空格,不要带 /v1 后缀(Claude Code 会自动拼接)
  • 配置单一来源:避免同时在 ~/.bashrcsettings.json 中配置冲突的值,选择一处即可

核心原则:Claude Code 的 API 配置 = ANTHROPIC_AUTH_TOKEN + ANTHROPIC_BASE_URL,二者缺一不可,且必须在进程启动早期就正确注入。

AI 时代程序员必备技能

Codex、Claude Code、Cursor、Hermes Agent、OpenClaw等工程化实战专栏 ,讲透 AI 如何接管脏活累活

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值