Claude Code /login 成功,发消息却是 401 Invalid bearer token。常见不是账号挂了,而是环境变量抢了官方会话。
原因
ANTHROPIC_AUTH_TOKEN 会以 Authorization: Bearer 发出。系统里残留的值(以前配网关、甚至填过 ollama)会盖掉刚登录的 OAuth。
官方也写了:环境变量里的 Key 优先于订阅登录。
处理
unset ANTHROPIC_API_KEY unset ANTHROPIC_AUTH_TOKEN unset ANTHROPIC_BASE_URL claude
在 Claude Code 里跑 /status,看当前是订阅还是 Key。要用 Pro/Max:变量必须空着。
自定义网关才设 ANTHROPIC_BASE_URL + 对方要求的那一个变量(Bearer 用 AUTH_TOKEN,x-api-key 用 API_KEY),不要两个都留。

AI故障手册