跳转到内容

"Not logged in · Please run /login" Claude Code

Quick fix

升级 cc-switch 至 v3.19.2+,或手动将 settings.json 中的 ANTHROPIC_API_KEY 改为 ANTHROPIC_AUTH_TOKEN 以跳过审批弹窗。

报错原文
Not logged in · Please run /login

在 cc-switch 的早期版本中,使用 GitHub Copilot 等托管账户(managed-account)接管 Claude Code 时,程序会将代理 Token 注入为环境变量 ANTHROPIC_API_KEY。这会导致 Claude Code 在交互模式下弹出自定义 API Key 的审批提示,且默认选项为拒绝(No),接受默认选项会丢弃该 Key 从而导致未登录状态。非交互模式(headless)因不触发弹窗而能正常工作。

  1. 升级 cc-switch 至 v3.19.2 或更高版本,重新开启代理接管,程序会自动使用无需审批的 ANTHROPIC_AUTH_TOKEN 环境变量。

  2. 若暂时无法升级,请手动编辑 Claude Code 的配置文件,将环境变量键名从 ANTHROPIC_API_KEY 修改为 ANTHROPIC_AUTH_TOKEN。

    // ~/.claude/settings.json
    {
    "env": {
    "ANTHROPIC_API_KEY": "PROXY_MANAGED",
    "ANTHROPIC_AUTH_TOKEN": "PROXY_MANAGED",
    "ANTHROPIC_BASE_URL": "http://127.0.0.1:15721"
    }
    }
ToolClaude Code
Version未知
PlatformsWindowsmacOS
为什么非交互模式可以正常使用,但交互模式却提示未登录?
因为非交互模式不会触发 Claude Code 的自定义 API Key 审批弹窗,代理 Token 能够直接被读取;而交互模式会弹窗且默认拒绝,导致 Key 被丢弃。
开启代理后,为什么 Claude Code 里看到的还是 Claude 系列模型?
开启代理后,cc-switch 会将供应商模型映射接管到代理中,Claude Code 界面显示的仍是 Claude 系列模型,但实际请求已被映射到你自定义的模型。

这是一个非官方社区 wiki,与 cc-switch 作者及项目本身无隶属关系。内容整理自项目公开的 GitHub issues。本站不分发任何软件。