Codex API模式开放Fast及全部插件提示词
速览
用户分享通过提示词工程指导AI对Codex App进行补丁修改,使API模式也能开启Fast模式,并暴露官方及远程插件形成本地市场。涉及修改JS文件、同步远程插件等步骤。意义在于让API用户也能使用原需ChatGPT订阅的功能,扩展Codex的可用性。
AI 深度解读
背景
Codex 是 OpenAI 推出的编程辅助工具,深度集成于聊天界面,支持快速模式和多种插件。官方版本中,Fast/Priority 模式(优先响应)以及官方策展插件(OpenAI-curated plugins)通常仅在使用 ChatGPT 账号登录时可用。当用户通过 API key 模式使用 Codex 时,这些功能被限制或隐藏。Linux DO 论坛上,有用户分享了一组针对 Codex app 的提示词与工作流,旨在通过本地补丁方式,解除 API key 模式下的功能限制,并将本地已有的所有插件(包括官方和远程策展的)暴露为一个统一的本地插件市场,从而让 Codex 在仅使用 API key 的情况下也能获得与 ChatGPT 登录几乎相同的体验。
核心内容
原文提供了一套完整的操作步骤与脚本逻辑,目标是创建一个独立的 patched 版本 Codex(不修改系统安装版),主要分为两大部分:
1. Fast / Priority 模式的补丁
- 在 Windows 默认输出目录
C:\Users\<当前用户>\Downloads\Report\CodexPatched下复制 Codex app(仅复制到CodexPatched\app,不覆盖系统安装版)。 - 解包
app.asar到临时目录,修改相关 JavaScript 文件后重新打包,覆盖 patched app 中的app.asar。 - 通过正则搜索(
rg)定位以下文件:use-service-tier-settings-*.jsuse-is-fast-mode-enabled-*.jsgeneral-settings-*.js
- 修改这些文件中关于认证方式的判断:将原本只允许
chatgpt的 auth 条件放宽为允许chatgpt或apikey。例如将authMethod !== 'chatgpt'改为authMethod !== 'chatgpt' && authMethod !== 'apikey'。 - 如果 Fast 行由 statsig/chatgpt 门控函数控制(例如
Dt()),则修改该函数使其最终返回true,确保设置页中 Fast 选项可见。 - 修改后运行
node --check验证语法正确性。
2. 插件相关补丁
- 搜索
webview/assets下的plugins-page-selectors-*.js和use-plugins-*.js。 - 将
openai-api-curated识别为 OpenAI 官方 / built-in marketplace;额外将openai-curated-remote-local也识别为官方 / built-in marketplace。 - 修改后运行
node --check验证。
3. 全部插件暴露(同步器)
- 在
CodexPatched目录下创建一组文件:sync-remote-plugins.mjs(Node.js 同步脚本)sync-remote-plugins.ps1(PowerShell 同步脚本)plugin-account.json(插件账号配置文件,默认不放 token,include设为空数组表示全部)README-remote-plugins.md(说明文档)
plugin-account.json内容模板:{ "authFile": "", "accessToken": "", "chatgptAccountId": "", "baseUrl": "https://chatgpt.com/backend-api", "include": [], "downloadMissing": false, "install": [] }- 同步器逻辑:
- 读取
~/.codex/cache/remote_plugin_catalog/*.json获取远端插件目录。 - 复制
~/.codex/.tmp/plugins/plugins下已有的openai-curated本地插件。 - 复制
~/.codex/plugins/cache/openai-curated-remote下已有的远程策展插件。 - 如果远程策展插件与本地策展插件同名,则覆盖旧版。
- 生成
CodexPatched\plugin-marketplace.agents\plugins\marketplace.json,marketplace 名称为openai-curated-remote-local。 - 执行
codex plugin marketplace add C:\...\CodexPatched\plugin-marketplace注册该本地市场。 - 不允许伪造没有实体 bundle 的插件;没有 bundle 的 catalog 项跳过。
- 若用户以后提供 ChatGPT OAuth token,只能从
plugin-account.json读取,不能打印或要求粘贴到聊天中。
- 读取
- 验证:对修改过的 JS 文件和
sync-remote-plugins.mjs执行node --check;运行codex plugin marketplace list和codex plugin list确认能看到openai-api-curated和openai-curated-remote-local,以及product-design@openai-curated-remote-local可见。 - 重新打包
app.asar并覆盖 patched app。最后必须完全退出 Codex Patched 后再重新打开。
关键要点
- 独立 patched 版本:不修改系统安装版 Codex,而是复制一份到用户下载目录,确保安全。
- Fast 模式解锁:通过修改认证逻辑(从仅允许
chatgpt改为允许chatgpt或apikey)以及强制门控函数返回true,让 API key 用户也能使用 Fast/Priority 功能。 - 插件市场解锁:修改插件页面选择器,将
openai-api-curated和openai-curated-remote-local识别为官方内置市场,从而在 API key 模式下显示。 - 全部插件暴露:通过同步器脚本,将本地缓存中已有的官方策展插件和远程策展插件统一收集,生成一个名为
openai-curated-remote-local的本地 marketplace,并注册到 Codex。 - 隐私与安全:
plugin-account.json默认不放任何 token;如果用户以后提供 OAuth token,只能读取文件,不打印不聊天粘贴。 - 验证步骤:修改后必须运行
node --check;插件列表命令确认新市场出现;完全退出后重启才能生效。 - 脚本化:提供了
.mjs和.ps1两种同步脚本,方便 Windows 用户自动化操作。
意义与影响
这套提示词与工作流使得仅拥有 OpenAI API key 的用户(无 ChatGPT Plus 订阅)也能在 Codex 中体验 Fast/Priority 模式以及完整的官方插件生态。它打破了 Codex 将高级功能绑定于 ChatGPT 账号的限制,提升了 API key 模式的可用性和竞争力。同时,通过本地插件市场的聚合,用户无需手动安装每个插件,即可利用已有的缓存数据。对于开发者社区而言,这种“补丁化”的方法提供了一种可复用的逆向工程与脚本化思路,但也存在风险:修改 Codex 内部 JS 可能违反 OpenAI 服务条款,且每次 Codex 更新后补丁可能失效。长远看,如果 OpenAI 官方能为 API key 模式开放更多功能,此类补丁的必要性会降低。此外,本方法强调了安全实践(不泄露 token),值得在其他类似场景中借鉴。最终,它展示了如何通过细致的文件分析和脚本自动化,绕过应用限制,使工具更符合用户自定义需求。
