首页/文章/明明订了 Claude Pro,Claude Code 却在扣 API 费?先查这个环境变量

明明订了 Claude Pro,Claude Code 却在扣 API 费?先查这个环境变量

· Zumac.Ai

发生了什么

@artixisonx 把这件事叫做「代理配置第一大坑」:他是 Claude 付费订阅用户,以为 Claude Code 走的是订阅额度;结果有一个本地会话用的是他的 API Key,大约一个小时花掉了 10 美元才被发现。那把 Key 不在代码仓库里,只是躺在他本机的环境变量中。

他事后说,最先该做的是给 Key 设消费上限:就算 Key 被用到了不该用的地方,损失也有封顶。

官方规则:环境变量里的 Key 优先

这不是 bug,而是 Claude Code 有意的设计。官方文档和帮助中心的说法一致:

  • 只要设置了 ANTHROPIC_API_KEY,Claude Code 就会用这把 Key,而不是你的 Pro、Max、Team 或 Enterprise 订阅,哪怕你已经用订阅登录了;
  • 交互模式下,第一次检测到这把 Key 时会问你一次是否使用,你的选择会被记住;以后可以在 /config 里的「Use custom API key」开关修改;
  • 非交互模式(claude -p,常见于脚本和定时任务)里,只要有 Key 就直接用,不会再问。

所以最容易中招的是两种人:一是很久以前随手点了「同意」、早就忘了的人;二是用 -p 跑自动化任务的人。

三步自查

  1. 在 Claude Code 里跑 /status。 看当前的认证方式是订阅还是 API Key。帮助中心建议定期看一眼。
  2. 查 shell 启动文件。 打开 ~/.zshrc、~/.bashrc 等,看有没有长期 export ANTHROPIC_API_KEY=...。如果只是偶尔要用 Key,就在需要的那个终端里临时设置,用完 unset ANTHROPIC_API_KEY。
  3. 查定时任务和脚本。 cron、launchd、CI 里调用 claude -p 的地方,确认它们的环境里有没有带 Key。

再加一道保险

  • 去 Claude Console 给这把 Key 所在的工作区设消费上限;
  • 一个项目一把 Key,出事时只废一把;
  • 不再需要的 Key 直接在 Console 删除,而不是只从本地删掉变量。

如果你想把 Claude Code 放在一台常开、整机独享的新加坡 Mac mini 上长期运行,可以了解 Zumac.Ai,咨询 Telegram @singatao。

来源

Zumac.Ai 新加坡 Mac mini M6,整机独享,¥999/月起,联系 Telegram @singatao。
查看方案与费用 · 帮助中心

返回首页 · 更多文章

Telegram 客服