跳转到内容

auth.json 不会随渠道改变而改变,在编辑时覆写第三方渠道的密钥 Codex

Quick fix

暂无官方修复;编辑已保存的 Codex 第三方渠道会让 auth.json 里的官方 KEY 覆盖第三方密钥,建议删除重建渠道。

报错原文
auth.json 不会随渠道改变而改变,在编辑时覆写第三方渠道的密钥

cc-switch 3.20.0 在 Windows 上保存 Codex 第三方渠道时,会把用户在 cc-switch 中填写的第三方 OPENAI_API_KEY 写入 provider 数据库,并在 config.toml 中写入 experimental_bearer_token,但不会覆写 auth.json 中的 OPENAI_API_KEY。如果之前曾用官方 Codex 登录,auth.json 里仍是官方 KEY。进入编辑界面时,cc-switch 似乎从 auth.json 读取 KEY 作为输入框初始值,导致保存后第三方渠道被官方 KEY 覆盖。另有用户反馈,官方登录后切换 API 并重启 Codex,auth.json 仍保持官方登录,手动修改 auth.json 也无法解决;还有用户反馈使用第三方密钥登录时提示不合法的令牌,说明请求没有真正走第三方通道。目前该问题仍为 open,无官方修复版本。

  1. 临时规避:不要编辑已保存的第三方渠道;每次更换第三方 KEY 时,删除该渠道并重新添加。

  2. 若需向维护者提供定位信息,请按 #6594 维护者要求收集编辑/保存前后的 provider 数据库记录 settings_config.auth.OPENAI_API_KEY、auth.json.OPENAI_API_KEY 是否为空,以及 config.toml 中实际生效的 experimental_bearer_token。

ToolCodex
Version3.20.0
PlatformsWindows
官方登录情况下,再切换 api,重启 codex,auth.json 依然是官方登录,手动改也不行,怎么办?
这是 #6594 的同一问题。当前没有可用的手动覆盖方案;编辑界面会从 auth.json 回读官方 KEY,重新保存会覆盖第三方密钥。可删除并重新添加渠道,或等待 cc-switch 修复 auth.json 的覆写逻辑。
为什么我在 cc-switch 中编辑第三方渠道时,输入框里的 KEY 变成了官方 KEY?
因为保存第三方渠道时 cc-switch 没有覆写 auth.json,编辑界面却从 auth.json 读取 KEY 作为初始值。于是你看到的是官方 KEY,保存后第三方渠道被官方 KEY 覆盖。
使用第三方密钥登录 Codex 提示不合法的令牌是怎么回事?
有用户反馈相同表现,说明请求没有真正绕过官方登录;根因与 auth.json 未覆写有关,当前无官方修复。

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