Trae 中 Codex 插件找不到 GPT-5.6 Sol?使用中转站与新版 CLI 的完整解决方案
本文记录一次真实排查过程:CC Switch 已经把 Codex 默认模型配置为
gpt-5.6-sol,终端也能识别该模型,但 Trae 编辑器中的 Codex 插件模型下拉菜单仍然只显示 GPT-5.5、GPT-5.4 等旧模型。最终确认,问题不在中转站配置,也不在模型名称,而是 Trae 中的 Codex 扩展使用了自己打包的旧版 CLI。将扩展切换到新版全局 Codex CLI 后,
gpt-5.6-sol成功显示并可正常使用。
一、问题现象
使用环境:
- macOS Apple Silicon
- Trae 编辑器
- 官方扩展:
Codex - OpenAI's coding agent - CC Switch 管理 Codex 中转站配置
- 中转站兼容 OpenAI Responses API
- 目标模型:
gpt-5.6-sol
CC Switch 中的 config.toml 已经包含:
model_provider = "custom"
model = "gpt-5.6-sol"
disable_response_storage = true
model_reasoning_effort = "medium"[model_providers.custom]
name = "your-relay"
wire_api = "responses"
requires_openai_auth = true
base_url = "https://your-relay.example/v1"
但是打开 Trae 的 Codex 面板后,模型菜单中没有 GPT-5.6 Sol。
与此同时,在 Trae 终端运行下面的命令:
codex -m gpt-5.6-sol
终端却可以正常识别:
model: gpt-5.6-sol medium
这说明模型名称和全局配置大概率没有问题,问题发生在 Trae 扩展内部。
二、核心原因
很多人会认为 IDE 插件直接调用终端里的 codex 命令,其实不一定。
Trae 中的官方 Codex 扩展通常会自带一份 Codex CLI:
~/.trae/extensions/openai.chatgpt-版本号-darwin-arm64/
└── bin/
└── macos-aarch64/
└── codex
因此,系统里可能同时存在两份 CLI:
- 通过 npm 安装的全局 Codex CLI,供终端使用。
- Codex 扩展目录中自带的 CLI,供 IDE 面板使用。
本次排查中的版本是:
终端全局 CLI:codex-cli 0.144.3
Trae 扩展内置 CLI:codex-cli 0.142.0-alpha.1
全局 CLI 已支持 gpt-5.6-sol,但扩展内置的旧版 CLI 还没有该模型,所以出现了以下现象:
- 终端可以识别
gpt-5.6-sol。 - IDE 面板仍显示 GPT-5.5、GPT-5.4 等旧模型。
- 反复修改 CC Switch 配置也无法让模型出现在下拉菜单中。
三、先确认全局 CLI 是否支持 GPT-5.6 Sol
1. 查看终端使用的是哪一份 CLI
which codex
示例输出:
/Users/你的用户名/.npm-global/bin/codex
记录这个路径,后面需要填写到 Trae 设置中。
2. 查看 CLI 版本
codex --version
如果版本太旧,先升级:
npm install -g @openai/codex@latest
升级后再次检查:
codex --version
3. 直接指定模型进行测试
codex -m gpt-5.6-sol
进入 Codex 后发送一个简单请求,例如:
请回复当前使用的模型名称,并输出 hello。
需要真正收到模型响应,才能同时证明以下内容正常:
- 模型 ID 正确。
- API Key 有效。
- 中转站已给当前账号开放该模型。
- 中转站兼容
/v1/responses。
仅仅看到 CLI 启动并显示模型名称,只能证明本地 CLI 接受该模型 ID,不能完全证明远程请求成功。
四、检查 Trae 扩展内置 CLI 版本
先查找扩展目录:
find ~/.trae/extensions -maxdepth 1 -type d -name 'openai.chatgpt-*'
然后执行扩展内置 CLI:
~/.trae/extensions/openai.chatgpt-版本号-darwin-arm64/bin/macos-aarch64/codex --version
也可以使用下面的命令自动选择一个扩展目录:
EXT_DIR=$(find ~/.trae/extensions -maxdepth 1 -type d -name 'openai.chatgpt-*-darwin-arm64' | sort | tail -1)
"$EXT_DIR/bin/macos-aarch64/codex" --version
如果扩展内置 CLI 明显低于终端中的全局 CLI,就基本可以确认问题原因。
五、解决方法一:升级或切换预发布版扩展
这是优先推荐的方法,因为扩展和内置 CLI 的版本由发布方一起测试。
操作步骤:
- 打开 Trae 的扩展管理页面。
- 搜索
Codex - OpenAI's coding agent。 - 确认发布者为
openai,扩展标识符为openai.chatgpt。 - 如果存在更新,先升级到最新稳定版。
- 如果稳定版仍不支持,点击“切换到预发布版本”。
- 安装完成后完全退出 Trae。
- 重新启动 Trae。
- 按
Cmd+Shift+P,执行“开发人员: 重新加载窗口”。 - 关闭旧 Codex 对话并新建对话。
如果新版扩展已经打包支持 gpt-5.6-sol 的 CLI,模型会直接出现在菜单中。
如果最新版扩展仍使用旧 CLI,可以继续使用下面的方法。
六、解决方法二:让 Trae 扩展使用全局新版 CLI
Codex 扩展提供了 chatgpt.cliExecutable 设置,可以指定扩展启动哪一个 Codex CLI。
需要注意:扩展将该选项标记为开发用途,官方提示手动指定后部分功能可能无法正常工作。因此,它适合作为扩展正式更新前的临时解决方案。
1. 打开用户设置 JSON
在 Trae 中按:
Cmd+Shift+P
搜索并执行:
首选项: 打开用户设置 (JSON)
一定要修改“用户设置”,不要只修改当前项目的工作区设置,因为 chatgpt.cliExecutable 是应用级配置。
- 设置新版 CLI 路径
如果配置中已经存在:
"chatgpt.cliExecutable": "",
直接替换为空字符串中的内容:
"chatgpt.cliExecutable": "/Users/你的用户名/.npm-global/bin/codex",
路径应以 which codex 的实际输出为准,不要机械照抄示例。
完整示例:
{
"workbench.colorTheme": "Deep Blue",
"files.autoSave": "afterDelay",
"chatgpt.cliExecutable": "/Users/你的用户名/.npm-global/bin/codex"
}
JSON 中前后配置项之间必须有英文逗号,否则设置文件会报语法错误。
3. 重新加载扩展
保存设置后执行:
- 完全退出 Trae。
- 重新打开 Trae。
- 按
Cmd+Shift+P。 - 执行“开发人员: 重新加载窗口”。
- 关闭已有的 Codex 会话。
- 新建一个 Codex 会话。
- 打开模型菜单检查
GPT-5.6 Sol。
旧会话可能保留创建时的模型设置,所以必须新建会话验证。
七、CC Switch 配置示例
如果中转站使用自定义 provider,并且支持 Responses API,可以参考下面的结构:
model_provider = "custom"
model = "gpt-5.6-sol"
disable_response_storage = true
model_reasoning_effort = "medium"
[model_providers.custom]
name = "your-relay"
wire_api = "responses"
requires_openai_auth = true
base_url = "https://your-relay.example/v1"
注意事项:
model必须是中转站实际支持的精确模型 ID。wire_api = "responses"表示使用 Responses API。base_url通常以/v1结尾,具体以中转站文档为准。- API Key 建议由 CC Switch 写入 Codex 的认证配置,不要明文写入公开文章。
- 修改配置后应重启 Trae,并使用新会话验证。
如果只是把内置 OpenAI provider 指向兼容的代理,也可以使用:
model = "gpt-5.6-sol"
model_reasoning_effort = "medium"
disable_response_storage = true
openai_base_url = "https://your-relay.example/v1"
具体使用自定义 provider 还是 openai_base_url,应以中转站的认证方式和兼容说明为准。
八、这些配置为什么没有作用
1. chatgpt.customModels
有些旧插件或第三方插件使用过类似配置:
"chatgpt.customModels": [
"gpt-5.6-sol"
]
当前官方 openai.chatgpt 扩展的模型菜单不是通过该设置生成的。模型列表主要由扩展所连接的 Codex 后端返回,所以只往数组中添加模型通常无效。
2. tui.model_availability_nux
Codex 配置中可能出现:
[tui.model_availability_nux]
"gpt-5.6-sol" = 1
这只是 TUI 对“新模型提示是否已展示”的状态记录,不是模型注册表。修改它不会向 IDE 菜单添加模型。
3. MCP 环境中的 `CODEX_CLI_PATH
例如:
[mcp_servers.node_repl.env]
CODEX_CLI_PATH = "/Applications/Codex.app/Contents/Resources/codex"
该变量只会传给 node_repl MCP 进程,不会改变 Trae 扩展启动的 CLI。要改变扩展使用的 CLI,应该设置:
"chatgpt.cliExecutable": "/实际的/codex/路径"
九、常见错误与排查方法
1. 设置后模型仍然不显示
依次检查:
which codex
codex --version
codex -m gpt-5.6-sol
然后确认:
chatgpt.cliExecutable使用的是which codex返回的完整路径。- 设置写在用户设置中,而不是工作区设置中。
- JSON 没有漏逗号或多余逗号。
- 已完全退出并重启 Trae。
- 已新建 Codex 会话。
2. 返回 model not found
这通常表示:
- 中转站没有提供该模型。
- 当前 API Key 没有模型权限。
- 中转站使用了不同的模型映射名称。
- 请求实际发到了另一个
base_url。
应在中转站控制台或文档中确认准确模型 ID。
3. 返回 /responses 404
当前 Codex 自定义 provider 使用 Responses API。如果中转站只兼容 /chat/completions,即使能调用普通聊天模型,也不能直接供当前 Codex 使用。
需要中转站正确实现:
POST /v1/responses
以及流式响应和工具调用等 Codex 所需能力。
4. 指定外部 CLI 后扩展无法启动
可能是外部 CLI 和扩展前端协议不兼容。可以暂时删除:
"chatgpt.cliExecutable": "/Users/你的用户名/.npm-global/bin/codex"
或者恢复为空:
"chatgpt.cliExecutable": ""
重新加载窗口后,扩展会恢复使用内置 CLI。
5. 终端能用,IDE 不能用
这种情况优先比较两份 CLI:
终端:which codex
IDE:~/.trae/extensions/openai.chatgpt-*/bin/macos-aarch64/codex
不要因为终端测试成功,就默认 IDE 面板使用的是同一个可执行文件。
十、不要直接覆盖扩展目录中的 CLI
不建议把全局 CLI 手动复制到以下目录:
~/.trae/extensions/openai.chatgpt-*/bin/macos-aarch64/codex
原因包括:
- 扩展更新后会被覆盖。
- 可能破坏扩展包完整性。
- 新 CLI 与旧扩展前端协议可能不兼容。
- 出现问题后不容易判断是配置问题还是文件被替换导致的问题。
优先使用新版扩展;确实需要临时切换时,使用 chatgpt.cliExecutable 更容易恢复。
十一、最终结论
当 CC Switch 已配置 gpt-5.6-sol,终端也能识别,但 Trae 的 Codex 插件菜单中没有该模型时,最常见原因不是中转站配置错误,而是:
Trae 扩展内置 CLI 版本 < 终端全局 CLI 版本
推荐处理顺序:
- 更新 Codex 扩展。
- 尝试扩展预发布版本。
- 升级全局 Codex CLI。
- 使用
chatgpt.cliExecutable让扩展临时调用新版 CLI。 - 重启 Trae 并新建会话。
- 发送真实请求,验证中转站的 Responses API 与模型权限。
本次问题最终通过下面的用户设置解决:
"chatgpt.cliExecutable": "/Users/你的用户名/.npm-global/bin/codex"
设置后重启 Trae,gpt-5.6-sol 成功出现在模型列表中。
更多推荐

所有评论(0)