Codex 桌面端看不到第三方模型 - CC Switch
Quick fix
在 Codex 桌面端登录官方 ChatGPT 账号,并在 cc-switch 开启保留官方登录即可恢复显示。
Symptom
Section titled “Symptom”在codex桌面端无法看到自定义模型列表Codex 桌面端(上游客户端)本身的限制:它的模型选择器会根据**是否登录官方 ChatGPT 身份**来决定是否显示第三方自定义模型——没有官方登录态时,会强制回落到官方默认模型(连思考等级也会跟着变回默认)。这一层判断在 Codex 桌面端内部,cc-switch 无法直接改写。
此外,cc-switch 生成的 `~/.codex/cc-switch-model-catalog.json` 在不同版本中存在多个模板缺陷,导致即使有官方登录态,模型列表也可能显示为「自定义」或为空: 1. **字段缺失**:缺少 `available_in_plans`、`minimal_client_version` 等关键字段,导致模型被 Codex 桌面端过滤掉(#4195)。 2. **命名契约不匹配**:cc-switch 写入的字段为 snake_case(如 `display_name`),但 Codex ≥0.144 要求 camelCase(如 `displayName`),导致解析失败(#5182)。 3. **多模态支持被写死**:`input_modalities` 被默认写死为 `["text"]`,导致 Codex 拒绝读取图片(#4952,已在 v3.17.0 修复)。 4. **配置不完整**:`config.toml` 缺少 `requires_openai_auth` 等字段,导致请求被静默丢弃(#3795,已在 v3.16.2 修复)。 5. **模型 ID 错误**:火山方舟 Coding Plan 的自动获取模型列表功能拉取了错误的模型 ID,导致无法显示 diff(#6686)。
在 Codex 桌面端登录一次官方 ChatGPT 账号,确保 `~/.codex/auth.json` 里存在官方登录凭据。
~/.codex/auth.json # 确保文件存在且包含有效的 ChatGPT 官方登录凭据打开 cc-switch 设置,开启「切换第三方时保留官方登录」选项。
cc-switch 设置界面 # 开启:切换第三方时保留官方登录确认你使用的第三方供应商已开启本地路由 / 路由接管。
完全退出并重新启动 Codex 桌面端,再打开模型选择器。
如果使用火山方舟 Coding Plan,不要使用「获取模型列表」功能,需手动添加模型,模型 ID 填 `deepseek-v4-flash`(不带日期后缀),请求地址填 `https://ark.cn-beijing.volces.com/api/coding/v3`。
~/.codex/config.toml model = "deepseek-v4-flash"[model_providers.custom]base_url = "https://ark.cn-beijing.volces.com/api/coding/v3"wire_api = "responses"如果问题仍然存在,尝试在 Codex 桌面端点击「设置」-「退出登录」-「重新登录」-「使用 chatgpt 账户登录」,整个过程不要退出 cc-switch。
Affected Versions
Section titled “Affected Versions”Source Issues
Section titled “Source Issues”本页汇总自 6 个真实 issue
- #3795[Bug] Codex 接管配置不完整:缺少 requires_openai_auth、model_catalog_json 等关键字段,导致请求静默失败
- #4195[Codex] cc-switch 生成的 model catalog 缺少 available_in_plans / minimal_client_version 等字段,导致 Codex.app 桌面版右下角不显示模型名
- #4420在codex桌面端无法看到自定义模型列表
- #4952[BUG] responses端点模式不支持图片识别的情况
- #5182[bug] 第三方 Codex 供应商导入后模型列表/推理强度显示为"自定义":导出的 model_catalog_json 为 snake_case,与 Codex ≥0.144(camelCase)解析契约不匹配
- #6686火山方舟coding plan看不了diff
- 为什么我在 cc-switch 配置了模型,在终端运行 `codex debug models` 能看到,但在 Codex 桌面端却看不到?
- 这是 Codex 桌面端本身的限制。它根据是否登录官方 ChatGPT 身份来决定是否显示第三方模型。终端能看到说明数据层正常,问题只在桌面端显示层。在桌面端登录官方 ChatGPT 账号并在 cc-switch 开启保留官方登录即可恢复。
- 用了一段时间后又看不到模型了怎么办?
- 通常是保留的官方登录态过期了,重新登录一次官方 ChatGPT 即可恢复。
- 升级到 v3.17.0 后,自定义模型仍然无法识别图片怎么办?
- v3.17.0 已修复 `input_modalities` 被写死为 `["text"]` 的问题。升级后请重新保存一次供应商配置以重新生成 catalog 文件。如果仍复现,可能是模型别名未被识别为 GPT 系列,请在对应 issue 中回复并重新打开。
- 接入火山方舟 Coding Plan 后无法显示文件 diff 变更怎么办?
- 不要使用 cc-switch 的「获取模型列表」功能,因为该功能调用的是方舟模型广场接口,返回的模型 ID 不适用于 Coding Plan。请手动添加模型,ID 填 `deepseek-v4-flash`(不带日期后缀),请求地址填 `https://ark.cn-beijing.volces.com/api/coding/v3`。
- Codex 0.144 及以上版本模型列表显示为「自定义」,字段契约不匹配怎么解决?
- Codex ≥0.144 要求 `cc-switch-model-catalog.json` 使用 camelCase 字段(如 `displayName`),但 cc-switch 生成的是 snake_case(如 `display_name`),导致解析失败。此问题在 v3.16.5 仍存在,建议关注后续版本更新或手动修改 catalog 文件的字段名为 camelCase。
这是一个非官方社区 wiki,与 cc-switch 作者及项目本身无隶属关系。内容整理自项目公开的 GitHub issues。本站不分发任何软件。