Codex Desktop 插件页渲染异常的 GPU 启动参数修复
记录一次 Codex Desktop 插件搜索页面渲染错位的排查过程,以及在 Intel Mac 上通过强制高性能 GPU 启动规避问题的方法。
现象
Codex Desktop 的插件页面可以打开,但插件搜索区和插件卡片出现明显渲染异常:
- 插件卡片内容被横向或纵向错位。
- 文字只显示一部分,部分内容被裁切。
- 右侧预览图、骨架屏和列表区域发生重叠。
- 切换页面、重启应用、清理缓存后仍然复现。
从表现看,这不像插件列表接口失败,更像 Electron / Chromium 渲染层的问题。
初步排查
先确认 Codex Desktop 的版本和运行环境:
/usr/libexec/PlistBuddy -c 'Print :CFBundleShortVersionString' /Applications/Codex.app/Contents/Info.plist
/usr/libexec/PlistBuddy -c 'Print :CFBundleVersion' /Applications/Codex.app/Contents/Info.plist
/usr/libexec/PlistBuddy -c 'Print :CFBundleIdentifier' /Applications/Codex.app/Contents/Info.plist
当时环境信息如下:
Codex Desktop: 26.513.31313
Bundle ID: com.openai.codex
Electron: 42.0.1
macOS: 15.7.7
Architecture: x64
Screen: 3360x2100, density 2
再看本地 Sentry scope 里的请求记录:
jq -r '.scope.breadcrumbs[]
| select((.message? // "") | test("plugin/list"))
| [.timestamp, .category, .level, .message]
| @tsv' "$HOME/Library/Application Support/Codex/sentry/scope_v3.json"
可以看到 plugin/list 请求正常返回,没有接口失败或权限错误。因此问题不在插件市场数据本身。
清理缓存无效
尝试清理 Electron / Chromium 常见缓存:
rm -rf "$HOME/Library/Application Support/Codex/Cache" \
"$HOME/Library/Application Support/Codex/GPUCache" \
"$HOME/Library/Application Support/Codex/DawnGraphiteCache" \
"$HOME/Library/Application Support/Codex/DawnWebGPUCache" \
"$HOME/Library/Application Support/Codex/Code Cache"
重新打开 Codex 后,插件页仍然错位。由此可以排除普通缓存损坏。
最终修复
解决方案来自 openai/codex#18774。
在 Intel Mac 上,通过启动参数强制 Codex 使用高性能 GPU:
open -na "/Applications/Codex.app" --args --force_high_performance_gpu
执行后,插件搜索页面恢复正常。
这个结果说明:插件页渲染异常与默认 GPU 选择路径有关。--force_high_performance_gpu 避开了默认 Electron / Chromium GPU compositing 路径中的问题。
从 Dock 启动
Dock 里的原始 Codex.app 不能直接附加启动参数。可以创建一个 AppleScript 启动器,再把启动器固定到 Dock。
mkdir -p "$HOME/Applications"
osacompile -o "$HOME/Applications/Codex GPU.app" -e '
do shell script "open -na /Applications/Codex.app --args --force_high_performance_gpu"
'
然后在 Finder 打开 ~/Applications,把 Codex GPU.app 拖到 Dock。之后从这个 Dock 图标启动 Codex,就会自动带上 --force_high_performance_gpu 参数。
如果希望图标和原应用一致,可以手动复制图标:
- Finder 中选中
/Applications/Codex.app。 - 按
Cmd + I打开信息面板。 - 点击左上角图标,按
Cmd + C。 - 选中
~/Applications/Codex GPU.app。 - 按
Cmd + I打开信息面板。 - 点击左上角图标,按
Cmd + V。
原 Dock 里的 Codex 图标仍然不带启动参数,建议移除,只保留 Codex GPU.app。
结论
这不是插件搜索接口问题,也不是本地缓存问题,而是 Codex Desktop 在特定 macOS Intel / GPU 路径上的前端渲染 bug。
临时规避方式是:
open -na "/Applications/Codex.app" --args --force_high_performance_gpu
如果后续 Codex 官方修复了该问题,可以再回到默认启动方式。