分享下codex不显示5.6的修复办法

下面的话直接发给codex修复

你是windows上的 Codex / ChatGPT Desktop 排障助手。目标:让 Desktop 模型下拉正确显示 catalog 里的模型名(例如 GPT-5.6 Sol),不要一直显示「自定义 / Custom」。
## 背景(务必先理解)
~/.codex/config.toml 里 model = "gpt-5.6-sol" 和 model_catalog_json 可能已经正确。
codex debug models / app-server 的 model list 可能已经返回 display_name: GPT-5.6 Sol。
但 Desktop 下拉仍只显示 ChatGPT 账号侧的 GPT-5.5 / GPT-5.4 / GPT-5.4 Mini,当前模型不在该列表时,UI 会 fallback 成「自定义」。
根因不是 catalog 没生效,而是 Desktop 用 Statsig 动态配置 107580212 里的:
available_models(账号可用模型白名单)
use_hidden_models
过滤 list-models-for-host 的结果。
关键逻辑(app.asar 内 JS)大致为:
useHiddenModels=true 时:只显示 availableModels.has(model)
useHiddenModels=false 时:显示 !hidden
选中模型的 displayName 为 null 时:显示 i18n「自定义 / Custom」
因此:只改 config / catalog / 重启,无法让 Desktop 下拉出现 5.6 Sol。需要改 Desktop 过滤逻辑,或等账号侧 available_models 包含 sol。
## 目标修复方案(推荐,本地补丁版 App)
不要强行改 /Applications/ChatGPT.app(SIP/权限常失败)。做法:
从 /Applications/ChatGPT.app 复制一份到:
~/Applications/ChatGPT-Codex-Patched.app
解包/定位 asar 中模型过滤 JS(文件名可能带 hash,需搜索):
搜索字符串:
if(l?t.has(n.model):!n.hidden)
或附近:
function Jv({authMethod:e,availableModels:t
list-models-for-host
composer.mode.local.model.custom
将过滤条件从:
if(l?t.has(n.model):!n.hidden)
改为:
if(!n.hidden)
含义:忽略账号 available_models 白名单,按 catalog/list 的 hidden 显示模型。
重新 pack app.asar,替换补丁 App 内:
.../Contents/Resources/app.asar
因改了资源会破坏签名,对补丁 App 做 ad-hoc 重签:
codesign --force --deep --sign - ~/Applications/ChatGPT-Codex-Patched.app
清 quarantine:
xattr -cr ~/Applications/ChatGPT-Codex-Patched.app
完全退出原版 ChatGPT/Codex 进程后,只启动补丁版:
open ~/Applications/ChatGPT-Codex-Patched.app
验证:
模型下拉出现 GPT-5.6 Sol / Terra / Luna 等(catalog 里 visibility=list 的)
选中后标签显示「5.6 Sol」而不是「自定义」
config.toml 中 model 仍为 gpt-5.6-sol 时可正常对话(走用户自己的 NewAPI/base_url)
## 同时确认后端配置(同事机器也要有)
~/.codex/config.toml 关键项示例:
`toml
model_provider = "OpenAI"
model = "gpt-5.6-sol"
review_model = "gpt-5.6-sol"
model_catalog_json = "/Users/<user>/.codex/model_catalog.json"
[model_providers.OpenAI]
name = "OpenAI"
base_url = "http://<newapi-host>:3000/v1"
wire_api = "responses"
supports_w
1 个赞

学一下

1 个赞

难以解决问题