跳转到内容

Codex 桌面端看不到第三方模型 - CC Switch

Quick fix

在 Codex 桌面端登录官方 ChatGPT 账号,并在 cc-switch 开启保留官方登录即可恢复显示。

报错原文
在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)。

  1. 在 Codex 桌面端登录一次官方 ChatGPT 账号,确保 `~/.codex/auth.json` 里存在官方登录凭据。

    ~/.codex/auth.json
    # 确保文件存在且包含有效的 ChatGPT 官方登录凭据
  2. 打开 cc-switch 设置,开启「切换第三方时保留官方登录」选项。

    cc-switch 设置界面
    # 开启:切换第三方时保留官方登录
  3. 确认你使用的第三方供应商已开启本地路由 / 路由接管。

  4. 完全退出并重新启动 Codex 桌面端,再打开模型选择器。

  5. 如果使用火山方舟 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"
  6. 如果问题仍然存在,尝试在 Codex 桌面端点击「设置」-「退出登录」-「重新登录」-「使用 chatgpt 账户登录」,整个过程不要退出 cc-switch。

ToolCodex
Version3.16.0 - 3.20.0
PlatformsWindowsmacOS
为什么我在 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。本站不分发任何软件。