← 返回信息流
Agent SkillLINUX DO · AI·5 小时前

Codex App不显示GPT-5.6模型的修复方法

原标题:解决codex app 不显示gpt-5.6(windows api版本)

速览

用户通过API key登录Codex Desktop App,发现模型下拉菜单不显示GPT-5.6系列模型,但CLI可查。根因是前端读取Statsig动态配置中的旧模型白名单,过滤了新版模型。修复方案包括:终止相关进程、备份LevelDB目录、精确修改缓存中dynamic config 107580212,添加gpt-5.6-sol等模型,并设置未来时间戳防止被覆盖。最后重启App即可显示新模型。

AI 深度解读

背景

Linux DO 论坛上一名用户遇到一个问题:在使用 Codex Desktop App 时(仅通过 API key / custom provider 登录,没有 ChatGPT 账号),模型下拉菜单中不显示 gpt-5.6-solgpt-5.6-terragpt-5.6-luna 等新模型,虽然通过 CLI 命令 codex debug models 可以看到这些模型。用户已定位根因:Codex App 前端读取 Statsig 的 dynamic config(编号 107580212),其中 available_models 白名单只包含旧模型(GPT-5.5、GPT-5.4、GPT-5.4 Mini、GPT-5.2),而当 use_hidden_models=true 时,前端过滤逻辑只显示白名单中的模型,导致新模型被过滤。帖子提供了详细的修复步骤,包括杀进程、备份 LevelDB、修改缓存、重启 App,并给出了备用方案(直接修改 App 前端逻辑)。共有 3 位参与者。

核心内容

帖子提供了两个层次的修复方案:常规缓存修复和更稳健的本地前端过滤修改。

常规缓存修复步骤:

  1. 仅终止与 Codex App 相关的进程:ChatGPT.exe(命令行包含 OpenAI.Codex_)以及内置的 codex.exe(命令行包含 OpenAI.Codex_...\resources\codex.exe)。
  2. 备份目录:C:\Users\epean\AppData\Local\Packages\OpenAI.Codex_2p2nqsd0c76g0\LocalCache\Roaming\Codex\web\Codex\Default\Local Storage\leveldb
  3. 使用 LevelDB 工具精确修改 statsig.cached.evaluations.* 中 dynamic config 107580212 的内容:
    • available_models 数组中增加 gpt-5.6-solgpt-5.6-terragpt-5.6-luna
    • default_model 改为 gpt-5.6-sol
    • use_hidden_models 改为 false
    • 同时将内层 Statsig response 中的 time 字段改为未来时间戳,防止 App 启动后被远端旧白名单覆盖。
  4. 重启 Codex App:执行命令 Start-Process explorer.exe 'shell:AppsFolder\OpenAI.Codex_2p2nqsd0c76g0!App'
  5. 验证模型下拉菜单应显示 GPT-5.6-SolGPT-5.6-TerraGPT-5.6-Luna

备用方案(如果缓存修复仍然被覆盖):

  • 解包 Codex App 的前端 app.asar 文件(提取包内容)。
  • 找到 model-list-filtermodel-queries 相关逻辑,修改为:
    • available_models 默认补入 gpt-5.6-solgpt-5.6-terragpt-5.6-luna,或者
    • use_hidden_models=true 时,不要过滤掉 provider 返回且 visibility=list 的模型。
  • 修改前必须备份原始的 app.asar

关键要点

  • 问题根源:Statsig dynamic config 白名单 available_models 不包含新模型,且 use_hidden_models=true 导致前端严格按白名单过滤。
  • 修复的核心思路是修改本地 LevelDB 缓存中 Statsig 的配置数据,绕过远端配置的下发。
  • 需要精确操作 LevelDB,修改 statsig.cached.evaluations.* 中的三个字段:available_modelsdefault_modeluse_hidden_models,以及修改 time 时间戳防覆盖。
  • 必须仅杀 Codex App 相关进程(ChatGPT.execodex.exe),避免其他进程受影响。
  • 备份目录和原始文件(leveldb 目录、app.asar)是必要的前置步骤,防止操作失误导致数据丢失。
  • 备用方案直接修改前端源码(解包 app.asar 后修改模型过滤逻辑),比缓存修复更持久,但技术门槛更高。
  • 避免删除或覆盖 auth.json、清空整个 App 数据目录,也不要求回显 token/API key,保障账户安全。

意义与影响

  1. 对个人用户的实用价值:提供了一个具体、可操作的本地修复方法,让使用 API key 登录 Codex App 的用户能立即看到并使用最新的 GPT-5.6 系列模型,无需等待官方推送或更换工具。
  2. 对社区的技术启发:展示了如何通过修改 Chromium LocalStorage 的 LevelDB 缓存来绕过前端动态配置的限制,这种思路可推广到其他依赖 Statsig 或类似远程配置的 Electron/Chromium 应用中。
  3. 强调了安全与谨慎:明确要求备份数据和目录、避免删除关键文件、不暴露敏感信息,体现了社区分享中负责任的实践态度。
  4. 长远影响:备用方案中的前端源码修改方法,让有能力的用户能从底层解决此类问题,但这种修改在 App 更新后可能失效,提示用户需要动态追踪版本变化。该方案也侧面反映了 Codex App 的前端过滤逻辑不够灵活——当 use_hidden_models=true 时不应直接隐藏 provider 返回且可见性为 list 的模型。如果能推动官方修复这一逻辑,将惠及所有 API 用户。
查看原文 →linux.do