新万物皆拓展:在 Codex 对话里说一句,就能造拓展 →

万物皆拓展,
Codex 由你来改

界面、命令、模型能用的工具、agent 循环的钩子、发往模型的请求与回复,都能由拓展接管。内置本地网关,让 Codex、Claude Code 等 50 多个 Agent 共用一份供应商池。

Windows · macOS开源 · AGPL-3.0数据只存本机不改官方应用文件

拓展页:万物皆拓展的能力标签、对话造拓展入口,以及经审核的官方与精选拓展包
网关总览:Codex 与 Claude Code 经 Codex++ 接入供应商池,右侧是各家供应商的今日调用、Key 冷却与限流状态
供应商池:ChatGPT 订阅、DeepSeek、Kimi、智谱 GLM 与两个中转站,显示额度、倍率、余额与限流恢复时间
路由页:自建的「主力编程」依次组与「便宜轮换」轮换组,下方是自动组
用量统计:估算费用、token、缓存命中、调用次数与按天柱状图
请求日志:进行中的请求、自动重试、429 限流后换下一家,以及 token 与费用

精选、社区、本地拓展和 dsh 插件都在一页:装别人的,也管自己做的。

支持
  • Codex
  • Claude Code
  • Claude Desktop
  • Grok
  • Gemini CLI
  • OpenCode
  • Zed
  • VS Code
  • 等 50+ Agent
Build by chatting

说一句话,拓展就写好了

不用自己写代码。接入后,Codex 能看到自己的页面结构、写出拓展、热重载,再截图确认效果。

  1. 在「拓展」页点「接入 Codex」Codex 多一个本机 MCP 服务,能查看页面结构、截图、写入并热重载拓展。
  2. 新开对话,直接说需求比如 把发送按钮改成🐶狗头、把上下文圆环改成彩虹进度条。说「插件」也行。
  3. 改完就生效,不满意接着说agent 写出拓展包并热重载,截图确认后告诉你;想发给别人,点「发布」。
只写你的拓展目录写入走 Codex 工具审批不会替你删文件
实测:在 Codex 对话里让 agent 把发送按钮换成狗头、把上下文圆环换成彩虹渐变进度条,两处都已生效
实测:两句话,发送按钮换成狗头,上下文圆环换成彩虹进度条。
Extensions

不止改界面,整条链路都能接管

拓展是一个带 codexpp.json 的文件夹。每次注册都随拓展卸载自动撤销,改完即热重载,坏了也不影响别的拓展。

界面插槽与页面

输入框上方、对话区、侧栏、标题栏都有插槽;还能加页面、菜单项和会话行操作。

registerSlot

斜杠命令与输入区按钮

输入 / 时提示拓展命令并可 Tab 补全;发送按钮那一行加图标按钮。

registerCommand

消息操作与侧边面板

每条消息下加按钮或一块内容,右侧面板随开随关,主区域自动让位。

registerSidePanel

给模型加工具

在清单里声明工具,经 Codex++ 拓展 MCP 提供给模型调用。

tools

Codex 钩子

工具前后、回合结束等钩子由 Codex++ 统一分发给各拓展。

hooks

网关中间件

请求发往上游前改写、响应流里改写、失败时自定义重试。

gateway

工具管道

工具执行前改参数、代为执行,或改写工具结果。

toolPipeline

常驻后台与服务

后台进程常驻;拓展之间按名字提供和调用服务,跨进程也行。

backend

会话、配置与多语言

只读查询与订阅会话;声明配置项自动生成设置表单,支持多语言。

config
{
  "id": "pomodoro",
  "name": "番茄钟",
  "version": "0.1.0",
  "engines": { "codexpp": "^2.1" },
  "renderer": ["renderer.js"]
}
codexPlus.extension((ctx) => {
  const bar = ctx.registerSlot({ slot: "composer.above",
    render: ({ container }) => { container.textContent = "🍅 25:00"; } });
  ctx.registerCommand({ name: "focus", description: "开始专注",
    run: () => ctx.toast("开始专注 25 分钟") });
  ctx.setInterval(() => bar.refresh(), 1000); // 卸载时自动清理
});

完整接口见 拓展开发指南,类型声明在仓库 types/ 下。

Ecosystem

装别人的,也发自己的

精选、社区、本地拓展和 dsh 插件都在管理器「拓展」页。装之前看得到每个拓展声明的全部能力。

经审核

精选与官方拓展

每一条都经 Codex++ 审核,安装锁定到审核过的那次提交;作者之后的改动要再审核才会推送给你。有下架名单,也会标出冒名的同名拓展。

精选分栏:官方的会话搜索拓展与精选的命令守卫拓展,显示审核版本与锁定提交

一键发布

在本地拓展那一行点「发布」:先查清单、密钥与体积,再建仓库、打 tag、传 release、加 topic,每一步的输出都显示在发布框里。

  • 不读、不存你的 GitHub token
  • 版本号重复时可一键补丁号 +1

社区拓展

GitHub 上打了 codexpp-extension 标签的公开仓库自动出现在这里。标着「未审核」,装之前列出它要的后台进程、钩子、网关中间件和模型工具,装完默认不启用。

社区拓展分栏:未审核提示、按星标排序的拓展列表与各自声明的能力

导入 dsh 插件

DeepSeek Harness 的工具插件经 Codex++ 托管的 MCP 在 Codex 里运行,skill 导入 Codex Skills;系统提示词与事件自动转成网关 instructions 和 Codex 钩子。跑不了的逐项说明原因。

dsh 插件分栏:导入的问候工具包,逐项显示完全兼容、不兼容与原因
Gateway

50 多个 Agent,共用一份供应商池

接入网关后,Agent 的请求都发给本机的 Codex++。它按模型名在供应商池里挑一家,限流就换 Key,出错就换下一家,对 Agent 来说什么都没变。

你的 Agent

  • Codexgroup/coding
  • Claude Codesonnet → deepseek
  • Grok未接入
Codex++ 网关

127.0.0.1 · 本机运行

按模型名路由协议互转多 Key 轮换熔断换家

供应商池

  • ChatGPT 订阅剩 59%
  • DeepSeek3 Key
  • 智谱 GLM42s 后恢复
  • 中转站倍率 0.28x

按模型名路由

裸模型名、指定供应商或模型组三种写法;多家都有的模型自动成组。

多 Key 与订阅

Key 轮换、限流冷却、401 停用;ChatGPT、Copilot、Cursor 等订阅登录进池。

协议互转

Anthropic、Chat、Responses、Gemini 协议互相转换,Agent 和上游不必说同一种协议。

用量看得清

每条请求的 token、缓存与估算费用,按 Agent、供应商、模型汇总。

deepseek-v4-pro池里提供这个模型的供应商;多家都有时自动成组,出错按顺序换下一家
deepseek/deepseek-v4-pro只发给这一家
group/coding你建的模型组,按组的路由方式挑成员

能接入的 Agent

命令行、桌面应用和 IDE 里的 Agent,只列出本机装了的;Claude Code 还能用 Chat / Responses 协议的上游。

CodexClaude CodeClaude DesktopGrokGemini CLIOpenCodeQwen CodeKimi CodeClineGooseCrushDroidCopilot CLIQoder CLIZedVS Code ChatRaycastDeepSeek HarnessWorkBuddyZCodeOpenClawPi等 50+ 个

能登录进池的订阅

在网关里登录,显示套餐与剩余额度;和 Agent 自己的登录互不影响。

ChatGPTGitHub CopilotSuperGrokCursorKiroZedGemini Code AssistAntigravityDevinFactoryCommand Code
Features

开箱即有,一整套增强

每项增强都能单独开关;关掉增强总开关,供应商与启动管理照常可用。

macOS

Computer Use 共享

把 Codex 桌面版里的电脑操控与 Chrome 浏览器控制,经 MCP 接给 Claude Code、Claude Desktop、DeepSeek Harness 等客户端。点「接入」,重启客户端就能用。

Computer Use 工作原理:Claude Code 与 DeepSeek Harness 已接入,经 Codex++ MCP 服务调用 ChatGPT.app 的原生 Computer Use 与 Chrome 扩展

子 Agent 协作

在 Codex 对话里说「让 DeepSeek 实现这个功能」,结果回到当前对话;忙时自动排队。

Codex 对话中请 DeepSeek 计算 1+1,经 Codex Plus Collaboration 返回 2

Codex 增强

  • 插件市场解锁、模型白名单、纯 API Key 原生 Fast
  • 会话删除可撤销、Markdown 导出、轮次回退
  • 语音输入、输入预测、粘贴修复、下一步建议
Codex 增强:插件市场解锁、模型白名单、原生 Fast、输入预测、会话删除等开关

Claude Desktop 增强版

  • 中文界面、输入框语音输入、Computer Use
  • 增强在副本上生效,官方 Claude.app 原样不动
  • 可解锁 Claude Code 的 Bash 时间限制
Claude 增强版:受管增强版已准备,可开关界面汉化、语音输入与 Computer Use

会话放在一起

Codex、Claude Code、Claude Desktop、Grok 的本地会话一个列表,搜索、删除、撤销。

会话页:Codex、Claude Code、Grok 的本地会话放在一起

Codex 多开

每个供应商身份一个隔离实例,配置、会话和用户数据互不干扰。

Codex 多开:主 Codex 与两个供应商身份的实例都在运行

用量状态栏

输入框下方显示输出吞吐、缓存命中与上下文占用。

输入框下方的用量状态栏:输出吞吐、缓存命中与上下文占用

每个模型,各有空间

按模型设置上下文窗口、价格与思考等级。

API Key 原生 Fast

纯 API Key 也能用 Standard / ⚡ Fast 控件。

托盘快捷面板

点托盘图标就能换模型、看用量和最近请求。

MCP、Skills 与插件市场

MCP、Skills 按 Agent 启用;Codex 插件市场可装可卸。

微信连接

扫码连接本机 Codex,出门也能派活。

Agent 桌宠

点一下会压扁、带音效,图片和音效都能换。

缓存清理

扫描并清理 Codex、Claude 与 Codex++ 的缓存。

皮肤与打字特效

社区主题、自定义图片,彩虹粒子打字特效。

Inside Codex

打开 Codex,增强就在那里

从 Codex++ 启动 Codex 后,这些改动直接出现在官方应用里。

请求状态条:输入框上方显示正在重试第 2 次、模型 gpt-6.1-sol、已用 18 秒、第 3 次尝试,以及上次失败原因 server_is_overloaded
请求避震上游过载时自动重试,输入框上方显示第几次、耗时和上次失败原因。
模型选择器按供应商分组:先列出各家供应商和各自的模型数,当前用的那家带标记,点进去再选模型
模型选择器分组先挑供应商,再看它的模型;当前用的那家带标记。
Codex++ 拓展市场:浏览社区脚本和工作流工具
Codex 里的拓展页不离开 Codex 也能浏览、安装和启停拓展。
Modes

网关或直连,随时切换

两种模式互不影响,Codex 在「连接与供应商」顶部的「连接方式」里一键切换。不打开网关,Codex++ 就和 1.x 时一样用。

直连模式

Codex 原来的供应商切换方式,完整保留。

官方登录官方登录 + API纯 API故障转移模型聚合
  • 官方登录 + API:保留官方登录与插件入口,请求走兼容 API
  • Chat Completions 供应商本地转成 Codex 用的 Responses
  • Codex 多开、模型测试与 Provider Doctor

适合:只用 Codex,或希望退出 Codex++ 后配置照常生效。在「Codex → 连接与供应商」里选供应商即可。

一行后缀,百万窗口

每个模型可以有自己的上下文窗口。网关在供应商详情里按模型填(可按公开资料一键填);直连模式在模型列表里写后缀,Codex++ 生成独立的 model_catalog_json,让 Codex 按当前模型使用对应窗口。

# 直连模式的模型列表
deepseek-v4-pro[1M]
claude-opus-5.5[200K]
your-model[128000]
Get started

三步,接上就用

Codex 功能配合官方 Codex / ChatGPT 桌面应用使用;Claude、Grok 相关功能需安装对应客户端。

  1. 添加供应商

    打开「网关 → 供应商池」:填 API Key、登录 ChatGPT / Copilot / SuperGrok 订阅,或从直连模式、OpenCode 一次导入多家。模型列表和价格自动填好。

  2. 接入 Agent

    在「网关 → Agent 接入」给 Codex、Claude Code、Grok 打开开关,选默认模型。Claude Code、Grok 接入后照常在终端里用。

  3. 启动 Codex

    点「启动 Codex」或侧栏 Codex 行的启动按钮,增强随之注入。依赖注入的设置改完后,从 Codex++ 重启 Codex 生效。

不想用网关?直连模式照旧:在「Codex → 连接与供应商」把「连接方式」切到「直连」,选供应商后启动即可。API Key 只保存在本机。

Changelog

一直在往前跑

最近几个版本的更新摘要,完整记录见 CHANGELOG。

FAQ

先问,先答

装别人的拓展安全吗?

精选与官方拓展经 Codex++ 审核,安装锁定到审核过的那次提交。社区拓展未经审核,作者可以在新版本里加入任意代码:安装前会列出它声明的全部能力(后台进程、钩子、网关中间件、模型工具、路由、页面脚本),装完默认不启用,请只安装你信任的作者的拓展。

对话造拓展怎么开始?写坏了怎么办?

在管理器「拓展」页的「对话造拓展」点「接入 Codex」,然后新开一个 Codex 对话说需求。拓展写在你自己的拓展目录里,每次写入都走 Codex 的工具审批;拓展出错只影响它自己,可以在「本地拓展」里停用,或让 agent 接着改。

启动后,为什么没有 Codex++ 菜单?

增强脚本只挂载到从 Codex++ 启动的官方应用上。自己打开的 Codex,侧栏 Codex 行会提示「未挂载」,它的按钮变成「重启并挂载」,点一下即可。仍然没有时,到「设置 → Codex」(含安装维护)和「设置 → 日志与诊断」检查应用路径、启动状态和诊断日志。macOS 上也可以打开「自动接管官方 App」,自己双击启动官方 App 时由 Codex++ 接管。

切换供应商后,请求为什么失败?

网关模式先在供应商池详情里点「测试」,看状态码、首字耗时和上游错误原文;「用量 → 请求」里失败的请求也会直接显示原因。直连模式在供应商详情中运行模型测试或 Provider Doctor;纯 API 和官方登录 + API 使用不同的认证位置,不要手工复制两种模式的 auth.json。

退出 Codex++ 后,Agent 为什么连不上?

接入网关的 Agent 一直指着本机网关,网关只在 Codex++ 运行时可用,再打开 Codex++ 就恢复。想在退出后用回直连,可在「设置 → 网关」里打开「退出 Codex++ 时恢复直连」(默认关闭);安装更新前总会先切回直连。

开启原生 Fast 后,为什么仍然看不到开关?

先确认已经保存,并通过 Codex++ 重启 Codex。直连模式在「Codex → 连接与供应商」中打开该模型的配置,设置「Fast(priority)支持」,保存模型与供应商后重启;网关模式下模型组里每个成员都支持 Fast 时,选这个组也能开 Fast。此功能只恢复客户端入口,服务限制与计费仍以供应商为准。

Computer Use 接入后,客户端里为什么没有工具?

接入后需要重启对应客户端才会加载工具;Claude Desktop 退出时会重写自己的配置,建议先完全退出再接入。仍然没有时,在「Computer Use」页的「高级」卡里核对客户端实际读取的目录,并确认已给 ChatGPT 授予辅助功能与屏幕录制权限。目前仅支持 macOS。

增强功能可以关闭吗?官方应用更新后还能用吗?

可以分别关闭,也可以关闭增强总开关。Codex++ 依赖官方桌面应用的页面结构、CDP 和本地数据格式;官方应用更新后,部分功能可能需要跟随适配。修改供应商配置或会话数据前,请保留备份。

配置、会话和日志存在哪里?

设置了 CODEX_HOME 时,Codex 主目录以该变量为准;否则使用 ~/.codex。Codex++ 的状态与日志在 ~/.codex-session-delete/。API Key 只保存在本机,提交反馈前请隐藏密钥与认证信息。

Community

一起把「++」做得更好

遇到问题带上系统、Codex++ 版本、复现步骤与已脱敏的日志提 issue;也欢迎分享拓展、主题和使用经验。

你的 Codex,由你来改

免费开源 · AGPL-3.0 · Windows 与 macOS。拓展、配置与会话数据都留在你自己的电脑上。