Codex++:给 Codex App 加上删除、导出、插件解锁和 Provider 同步能力
Codex App 这几个痛点,终于有工具补上了
如果你平时用 Codex App 写代码,大概率遇到过这些小问题:
- API Key 模式下,插件入口打不开;
- 历史会话只能归档,不能真正删除;
- 切换不同 model provider 后,旧会话突然“不见了”;
- 想把一段对话导出成 Markdown,不够顺手。
这些都不是大问题,但每天高频使用时,就会变成很影响体验的细节。
最近看到一个项目,正好就是为了解决这些问题:Codex++。
项目地址:
https://github.com/xianyu110/CodexPlusPlus
它不是另一个 Codex,也不是修改官方 Codex App 安装包的补丁,而是一个面向 Codex Desktop App 的外部增强启动器。
简单说,它通过自己的 launcher 启动 Codex,再借助 Chromium DevTools Protocol 注入增强脚本,在不修改 Codex 原始文件的前提下,给 Codex App 补上一些实用功能。
顺带推荐一下我自己在用的入口:
https://codex.maynorai.top/
如果你想更省心地使用 GPT / Codex 全系列模型,它主打无需魔法、无需手机号,价格大约是官方使用成本的一半,适合想低门槛体验 Codex 生态的朋友。
Codex++ 主要解决什么问题?
先看两个典型场景。
在 API Key 登录模式 下,Codex 原生插件入口会提示需要登录 ChatGPT,导致插件功能无法正常使用:

另外,Codex 原生会话列表只有归档入口,没有真正的删除按钮:

启动 Codex++ 后,它会解锁插件入口,并在会话列表悬停时显示删除按钮:

同时,顶部菜单栏会多出一个 Codex++ 菜单,可以查看后端状态,也可以打开设置面板:


核心功能一览
根据 README,Codex++ 目前主要提供这些能力:
| 功能 | 作用 |
|---|---|
| Codex++ 顶部菜单 | 集中管理增强功能和后端状态 |
| 插件选项解锁 | API Key 模式下也能显示并启用插件入口 |
| 特殊插件强制安装 | 解除 App unavailable / “应用不可用”导致的前端安装禁用 |
| 会话删除 | 会话列表悬停显示删除按钮,删除前确认,并支持撤销 |
| Markdown 导出 | 按本地 rollout 导出带时间戳的会话 Markdown |
| 会话项目移动 | 把会话移动到普通对话或其他本地项目 |
| 对话 Timeline | 在对话右侧显示用户提问时间线,悬停查看摘要并快速跳转 |
| Provider 同步 | 切换 model_provider 或供应商时,不丢历史会话 |
| Windows watcher | 常驻 watcher 自动接管原生 Codex 启动 |
| 自动更新 | 支持 GitHub Release 检查与更新 |
| macOS App | 可生成 /Applications/Codex++.app |
可以看出来,它的定位很明确:
Codex++ 不是模型能力增强,而是 Codex Desktop 的桌面体验增强。
它补的是会话管理、插件入口、本地数据可见性、导出和 provider 切换这些日常使用里的细节。
Provider 同步:切换供应商后,历史会话不再“消失”
我觉得 README 里最实用的功能之一,是 Provider 同步。
如果你用过不同 model provider,可能遇到过这种情况:
明明本地会话还在,但切换 provider 后,Codex Desktop 或 /resume 里突然看不到旧会话了。
Codex++ 的 Provider 同步就是为了解决这个问题。
启用后,它会在启动 Codex 前同步本地会话 metadata,包括:
- rollout 文件;
- SQLite 线程记录;
- 项目路径缓存;
- 当前
model_provider对应的会话可见性信息。
这样切换供应商后,旧会话仍然能出现在原来的项目下。
它适合这些场景:
- 从 OpenAI 切换到第三方 provider 后,旧会话不可见;
- 切回其他 provider 后,希望历史对话继续显示;
- Windows 路径带有
\\?\前缀,导致 Desktop 项目列表匹配不到旧会话。
需要注意的是:
Provider 同步只修复会话可见性相关 metadata,不会改写对话内容。
如果 Codex 正在占用某个会话文件,或者 SQLite 忙碌,Codex++ 会跳过并继续启动,避免影响 Codex 正常运行。
安装前提
Codex++ 需要这些环境:
- Python 3.11+
- Windows 或 macOS
- 已安装 Codex App
也就是说,它不是 Codex App 的替代品。
你需要先安装原版 Codex App,然后通过 Codex++ 启动它,增强功能才会生效。
快速使用
Windows 用户可以直接双击项目根目录的:
setup.bat
然后选择:
[1] Install Codex++
安装完成后,桌面会生成:
Codex++.lnk
以后双击这个快捷方式,就能启动带增强功能的 Codex。
也可以通过命令行安装和启动:
python -m pip install -e .
python -m codex_session_delete setup
python -m codex_session_delete launch
macOS 用户可以执行:
python -m codex_session_delete setup
安装后会生成:
/Applications/Codex++.app
之后从 Codex++.app 启动,而不是直接启动原版 Codex.app。
Windows 自动接管
默认情况下,Codex++ 只在你从 Codex++ 快捷方式启动时生效。
如果你从开始菜单、任务栏或系统原生入口直接启动 Codex,那一次不会有注入,Codex++ 菜单和插件解锁也不会出现。
Windows 用户可以注册一个常驻 watcher 来解决这个问题。
它会每 3 秒探测一次本机 CDP 端口,发现 Codex 在运行但 CDP 没起来,就会等待并二次确认,然后把 Codex Desktop App 进程重拉为带注入的版本。
安装 watcher:
python -m codex_session_delete watch-install
卸载 watcher:
python -m codex_session_delete watch-remove
临时开关:
python -m codex_session_delete watch-disable
python -m codex_session_delete watch-enable
日志路径:
%USERPROFILE%\.codex-session-delete\watcher.log
自动更新
Codex++ 会在启动时检查 GitHub Release。
如果发现比本地版本更新的 Release,会在控制台提示版本号、Release 地址和更新命令。检查失败不会影响 Codex++ 正常启动。
手动检查更新:
python -m codex_session_delete check-update
从最新 GitHub Release 更新:
python -m codex_session_delete update
README 里描述的更新流程大致是:
- 请求 GitHub Release latest 接口;
- 比较最新 Release tag 与本地版本;
- 优先下载 Release 中的
.whlasset; - 执行
python -m pip install --upgrade <wheel>; - 自动重新执行
python -m codex_session_delete setup,刷新快捷方式、Windows 卸载项或 macOS app bundle。
它是怎么工作的?
Codex++ 的实现方式比较克制。
它没有修改 Codex 的 app.asar,也不需要往 Codex 安装目录写 DLL,而是通过外部启动器完成增强。
大致流程是:
- 启动 Codex App,并附加 CDP 参数:
--remote-debugging-port=9229
--remote-allow-origins=http://127.0.0.1:9229
-
如果启用了 Provider 同步,启动 Codex 前先同步历史会话 metadata。
-
启动本地 helper 服务,负责健康检查和运行生命周期。
-
通过 CDP 注入
renderer-inject.js。 -
渲染端通过 CDP bridge 调用本地服务。
-
启动 Codex 时继承现有
HTTP_PROXY/HTTPS_PROXY/ALL_PROXY。
如果这些代理环境变量未设置,它还会自动探测常见本地代理端口,例如:
127.0.0.1:7897
这对需要访问 GitHub 的技能资源加载会比较有帮助。
这种方式的好处是:
不改 Codex 原始安装文件,风险更低,也更容易恢复。
代价也很明确:
你需要从 Codex++ 的入口启动 Codex,增强功能才会生效。
数据与备份
因为 Codex++ 涉及会话删除和 Provider 同步,所以理解它读写哪些本地数据很重要。
Codex++ 默认读取 Codex 本地数据库:
~/.codex/state_5.sqlite
删除前会把相关记录备份到:
~/.codex-session-delete/backups
Provider 同步会把同步前状态备份到:
~/.codex/backups_state/provider-sync
隐藏启动失败日志位于:
~/.codex-session-delete/launcher.log
建议正式使用前,先确认这些路径和备份机制,尤其是准备使用“会话删除”和“Provider 同步”的时候。
常见问题
双击 Codex++ 没反应
先查看日志:
%USERPROFILE%\.codex-session-delete\launcher.log
常见原因包括:
- Codex App 没有安装或路径变化;
9229端口被占用;- Python 环境不可用。
技能推荐加载失败
如果技能页提示:
git fetch failed
unable to access 'https://github.com/openai/skills.git/'
通常是本机网络无法直连 GitHub。
Codex++ 启动时会优先继承现有代理环境变量;如果未设置,会自动探测常见本地代理端口。
也可以手动指定:
$env:HTTP_PROXY="http://127.0.0.1:7897"
$env:HTTPS_PROXY="http://127.0.0.1:7897"
python -m codex_session_delete launch
Codex++ 菜单没出现
确认你是从 Codex++ 快捷方式启动,而不是直接启动原版 Codex。
也可以检查 Codex 是否带了 CDP 参数:
--remote-debugging-port=9229
切换供应商后旧会话不见了
打开 Codex++ 设置面板,启用 Provider 同步 后重新启动 Codex++。
它会在启动 Codex 前同步当前 model_provider,让历史会话重新匹配当前供应商。
Windows 系统卸载失败
可以先更新到当前版本后重新安装一次:
python -m codex_session_delete setup
新版会写入更稳定的系统卸载项,并使用绝对 Python 路径执行卸载。
总结
Codex++ 更像是 Codex App 的一层“桌面增强层”。
它不碰原始安装文件,却能补上很多高频体验能力:
- 插件入口解锁;
- 会话真正删除;
- Markdown 导出;
- 对话 Timeline;
- 会话项目移动;
- Provider 同步;
- Windows watcher 自动接管;
- macOS App 启动入口。
如果你已经把 Codex 当成日常开发工具,而且经常在 API Key 模式、不同 provider、本地历史会话之间来回切换,那么 Codex++ 会是一个很实用的补充。
安装前记住两点就够了:
第一,先安装原版 Codex App。
第二,使用时从 Codex++ 启动,而不是直接打开原版 Codex。
项目地址:
https://github.com/xianyu110/CodexPlusPlus
Maynor AI Codex:
https://codex.maynorai.top/
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)