跳转到内容

重启后.claude下的auth.json会被强制替换 - Codex

Quick fix

升级 cc-switch 至最新版,或在登录官方账号前先关闭代理接管,避免旧快照覆盖官方凭据。

报错原文
只要退出cc switch,重启后.claude下的auth.json会被强制替换

在 3.19.2 及之前的版本中,开启代理接管时 cc-switch 会对 auth.json 做快照,但该快照不会随官方登录动态更新。退出或重启时,恢复逻辑会使用包含第三方 API Key 的过时快照,直接覆盖掉用户刚登录的官方凭据。

此外,自 3.16.0 版本起,cc-switch 采用了新的认证分离机制:官方登录态存放在 auth.json,而第三方 API Key 等配置存放在 config.toml。在官方与第三方配置间频繁切换时,若快照或恢复逻辑处理不当,极易导致这两个文件的认证状态互相覆盖或污染。

  1. 升级 cc-switch 至最新版本。修复后的版本在写回前会检查 live 的 auth.json,若存在真实的官方登录凭据则保留,不会再用旧快照覆盖。

  2. 若暂时无法升级,请使用临时规避方案:先关闭 Codex 接管,登录官方 ChatGPT 账号,然后再开启接管。这样生成的快照会包含正确的登录凭据。

  3. 若需要完全禁用 API 注入并切回官方账号,请在 cc-switch 预设供应商中添加官方供应商并切换,随后在应用内点击“文件” -> “注销”并重新登录。

ToolCodex
Version3.16.0 - 3.19.2
PlatformsWindowsmacOS
为什么切到官方配置后,auth.json 里的 OPENAI_API_KEY 变成了 null?
这是 3.16.0 引入的新机制。auth.json 仅用于存放官方账号登录态(此时 OPENAI_API_KEY 为 null),而第三方 API Key 和 endpoint 会存放在 config.toml 中,并非文件被污染。
用量查询页面为什么过一会就消失或查询失败?
在 3.16.2 等早期版本中,用量脚本未能正确读取 config.toml 中的第三方凭据。该问题已在 v3.16.3 中修复,升级后用量查询会自动重试并复用正确的凭据解析逻辑。

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