先用 CC Switch 跑起来,再处理少数疑难问题

不会找配置文件也没关系。先下载 CC Switch,选 Codex、填 API、点启用;只有遇到 401、404 或协议问题时,再用下面的诊断工具。

首选工具Windows · macOS · Linux

CC Switch

在一个桌面界面里管理 Codex 的 API、模型和供应商。选预设、粘贴 Key、点击启用,不需要自己找 auth.json 或 config.toml。

可视化供应商管理一键切换 CodexChat → Responses 转换配置备份

选择你的系统

推荐安装方式

brew install --cask cc-switch

开源第三方工具。下载前请在 GitHub 核对发布者和最新版本。

CC Switch
ClaudeCodexGemini

My GPT API

Active · Responses

DeepSeek

Local routing available

  1. 1

    顶部切到 Codex

    Claude、Codex、Gemini 各自管理,先进入 Codex 面板。

  2. 2

    添加供应商

    选预设或填 Base URL、Key 和模型;需要转换时打开本地路由。

  3. 3

    点击启用

    CC Switch 自动写入配置。然后完整重启客户端或新开 CLI。

config.toml 配置生成器

填供应商名、Base URL 和模型,右侧实时生成用户级配置。它不会收集或要求你的 API Key。

这里填的是环境变量名,不是 sk- 开头的密钥。真实 Key 留在你自己的终端或凭据存储里。

复制到 ~/.codex/config.toml

model_provider = "my-gateway"
model = "gpt-5.6"

[model_providers.my-gateway]
name = "my-gateway"
base_url = "https://api.example.com/v1"
wire_api = "responses"
env_key = "OPENAI_API_KEY"
requires_openai_auth = false
免费小工具 · 点一个症状

Codex 报错诊断器

不用先读长教程。选择你屏幕上的现象,按优先级检查最可能的原因。

最可能的问题

Codex 读到的 Key 与目标 API 不匹配,或 requires_openai_auth 让它改用了官方登录缓存。

按这个顺序检查

  1. 1确认 env_key 填的是环境变量名,而不是 sk- 密钥本身。
  2. 2在启动 Codex 的同一个终端运行 printenv 对应变量。
  3. 3自定义网关通常使用 requires_openai_auth = false。
  4. 4若刚从官方账号切换,完全退出客户端并新开终端。

CC Switch — 给 Codex 切换供应商

适合手里有多家 API 的人。它能切换 provider,也能在需要时用本地路由把 Chat Completions 转成 Codex 所需的 Responses。改完必须新开终端 / 重启客户端。

会改动的文件

  • ~/.codex/auth.json
  • ~/.codex/config.toml
  1. 1安装并打开 CC Switch,顶部切到 Codex(不要停在 Claude 面板)。
  2. 2如果还想保留官方账号、远程控制或官方插件,先完成官方登录,再到设置 → 通用 → Codex App 增强,开启「切换第三方供应商时保留官方登录」。
  3. 3点「+」添加供应商:填写 Base URL、API Key 和模型。原生支持 Responses 的网关可直连;只有 Chat Completions 的供应商需要本地路由。
  4. 4需要转换协议时,到设置 → 路由 → 本地路由,打开总开关,并在「路由启用」里打开 Codex。
  5. 5回到 Codex 供应商列表点「启用」,再检查 ~/.codex/config.toml 的 model_provider、base_url 和模型是否更新。
  6. 6关掉正在跑的 Codex:终端窗口整窗关闭,客户端完全退出。
  7. 7新开终端运行 codex(或重开客户端),发一条短消息验证。
  8. 8最后看 CC Switch 路由日志或供应商余额,确认请求确实到了目标 API。
字段怎么填
Base URLAPI 根。兼容网关多带 /v1;填官网首页会 404。
wire_api / 协议Codex 侧是 responses。只支持 chat/completions 的网关开启本地路由转换。
API Key新版增强模式可将第三方令牌写入 provider 级配置,同时保留 auth.json 里的官方登录。
model默认模型;与网关实际开放的模型 id 对齐。
完整 URL 模式部分厂商要完整上游 URL、禁止自动拼路径时再开。

常见故障

启用了但仍走旧供应商

先怀疑终端没重开。再 cat ~/.codex/config.toml 看文件是否真的变了。

404 / Unsupported endpoint

检查 /v1、末尾斜杠,以及网关是否提供 Responses。旧 chat 端点对当前 Codex 不够。

只改了 Claude 面板

Codex 有独立供应商列表。顶部必须切到 Codex 再添加/启用。

官方 ↔ 第三方来回切

开启官方登录保留后,auth.json 负责官方身份,config.toml 负责第三方模型请求。若身份被覆盖,先恢复备份并检查增强开关。

CC Switch 适合频繁换供应商或需要协议转换的人。版本更新可能改变写入方式,切换前先用它的备份功能保存 ~/.codex;不要同时用 GUI 和编辑器抢写。

手写 auth.json

不想用 GUI 时,直接管凭据文件。与 CLI login 最终落点类似(file 模式)。

会改动的文件

  • ~/.codex/auth.json
  1. 1确认 cli_auth_credentials_store 为 file(或 auto 且回退到 file)。
  2. 2写入 OPENAI_API_KEY 字段;chmod 600 更稳妥。
  3. 3需要自定义 base_url 时,仍要配合用户级 config.toml 的 model_providers。
  4. 4重启 CLI / 客户端。

切勿把 auth.json 提交 Git 或发到聊天软件。

手写 config.toml 模板

固定网关、要进版本说明或团队文档时,手写比 GUI 更透明。完整字段见接入指南。

会改动的文件

  • ~/.codex/config.toml
  1. 1只改用户级文件;项目级 provider 会被忽略。
  2. 2model_provider 与 [model_providers.xxx] 同名。
  3. 3wire_api = "responses";env_key 只写变量名。
  4. 4export 密钥后新开终端验证。

连通性自检

先确认网关与 Key,再开 Codex,少把协议问题误判成「模型坏了」。

  1. 1对邮件/控制台给出的 base_url 发一次带 Bearer 的请求(具体路径以发放说明为准,常见为 models 或 responses)。
  2. 2401 → Key / 权限;404 → 路径或协议;TLS/超时 → 网络或域名。
  3. 3通过后再 login 或在 CC Switch 启用。

shell 多环境切换

官方 Key 与兼容网关并存时,用函数切换 export;长期多套仍更推荐 CC Switch 或 Codex --profile。

  1. 1在 ~/.zshrc 为每个 API 写函数:export 不同 KEY(及可选辅助变量)。
  2. 2执行函数后新开 Codex 会话。
  3. 3若使用自定义 provider,确保 env_key 指向你刚刚 export 的那个名字。

继续挖:值得收藏的 Codex 附属工具

不是看到 GitHub 项目就堆进来。这里收录能补上账号切换、provider 管理和协议转换缺口的工具,并把风险一起写明。

FAQ

CC Switch 和手改可以混用吗?

可以,但不要同时抢写。改完以磁盘上的 ~/.codex 文件为准做一次核对。

为什么 Claude 热切换、Codex 要重启?

Codex 在进程启动时缓存当前供应商配置。切换后必须新开终端或重启客户端。

网关只有 chat/completions 怎么办?

当前 Codex 要 Responses。选支持 Responses 的网关,或使用带协议转换的本地路由(部分 CC Switch 版本提供路由接管)。

相关: 免费 API · 客户端 + CLI