·AI应用·6 min

5.6k Star 的 OpenCodex,把 Claude、Gemini、DeepSeek 都接进 Codex 了

我们用 AI 编程工具时,经常会遇到一个挺别扭的问题。

文章目录
  1. 01 它给 Codex 装了一个“模型转换插座”
  2. 02 模型能换,Codex 的工作流不用换
  3. 03 三步接入 Codex,退出时还能恢复原配置
  4. 04 什么情况下,OpenCodex 才值得装?
  5. 05 它运行在本地,但账号和密钥仍要谨慎
  6. 不换掉 Codex,也能换模型

5.6k Star 的 OpenCodex,把 Claude、Gemini、DeepSeek 都接进 Codex 了

我们用 AI 编程工具时,经常会遇到一个挺别扭的问题。

喜欢的是一套工作流,真正想用的却是另一家的模型。

比如我们习惯了 Codex 的项目上下文、工具调用、权限控制和多任务协作,但碰到某类任务时,又想换 Claude、Gemini、DeepSeek、Kimi,或者自己电脑上跑的本地模型。

以前要解决这件事,往往得换客户端、改配置、装第三方适配层,最后还要处理不同模型的协议差异。

最近 GitHub 上有个项目,专门在解决这个问题。

它叫 OpenCodex。

截至本文整理,项目已经拿到约 5.6k Star,采用 MIT 许可证开源。

它最吸引我们的地方,不是又做了一个 AI 编程客户端,而是让我们继续使用 Codex,只把背后的模型换掉。

OpenCodex 在 Codex App 中运行第三方模型

01 它给 Codex 装了一个“模型转换插座”

OpenCodex 本质上是一个运行在本地的轻量代理。

Codex 发出的请求使用 Responses API。Claude、Gemini、Azure 和各种 OpenAI 兼容服务,使用的协议并不完全相同。

OpenCodex 就夹在中间,把请求翻译成目标服务商能理解的格式,再把流式输出、工具调用、推理信息和图片结果转换回来。

整个过程可以简单理解成:

Codex CLI / App / SDK
        ↓
    OpenCodex
        ↓
Claude / Gemini / Grok / DeepSeek / Kimi / Ollama / OpenRouter……

OpenCodex 架构图

这里最关键的一点是:我们没有为了换模型,顺手把已经习惯的工具也换掉。

配置完成后,路由模型会出现在 Codex App 的模型选择器里。需要 Claude 时选 Claude,需要本地模型时选 Ollama,原生 OpenAI 模型也可以继续保留。

同一套项目、同一个界面,背后的“脑子”可以按任务切换。

这比在几个 AI 编程工具之间来回复制上下文省事得多。

02 模型能换,Codex 的工作流不用换

项目目前内置了 40 多个 provider,并支持自定义 OpenAI 兼容接口。

常见的 Anthropic、Google、xAI、OpenRouter、Azure、DeepSeek、Kimi、智谱、Qwen、SiliconFlow、Ollama、LM Studio 等,都能通过预设或兼容接口接入。

但真正让它从“配置脚本”变成完整工具的,是下面几件事。

第三方模型会进入 Codex 的原生选择器。

第三方模型不只是接收一段提示词。它们会出现在模型目录和选择器中,并继续使用 Codex 的工具调用、项目上下文和推理强度设置。

Codex App 中的路由模型选择器

模型多了,配置也没有散。

运行 ocx gui 后,会打开本地 Web 仪表盘。我们可以在里面添加 provider、开关模型、管理 OAuth 或 API Key、查看请求日志、Token、耗时和错误信息。

接口出错时,不用只盯着终端里的一句 400 或 429 猜原因。

账号、配额和请求日志,也被放进了同一套流程。

比如 ChatGPT / Codex 账号池,可以查看 5 小时、每周和 30 天用量,让新会话选择用量更低的健康账号;已经开始的会话则尽量保持原账号,避免长任务中途跳号。

它还支持为纯文本模型配置网页搜索和视觉 sidecar。模型本身不会看图时,可以先由视觉模型读图,再把结果交回当前模型。

这些功能未必每个人都会用到,但它们说明 OpenCodex 想解决的不是“能不能请求成功”,而是多模型长期使用时的路由、观察和恢复问题。

03 三步接入 Codex,退出时还能恢复原配置

OpenCodex 支持 Windows x64、macOS x64 / arm64 和 Linux x64 / arm64,需要提前安装 Node.js 18 或更高版本。项目使用的 Bun 运行时会随 npm 包自动处理,不要求我们另外安装。

先全局安装:

npm install -g @bitkyc08/opencodex

然后运行初始化向导:

ocx init

向导会让我们选择 provider、填写 API Key 或登录账号、选择默认模型和代理端口,并询问是否把代理接入 Codex。

配置完成后启动:

ocx start

默认服务地址是 http://localhost:10100。想用可视化页面管理,继续运行:

ocx gui

之后正常打开 Codex,在模型选择器里找到已经接入的模型即可。

如果只想临时退出 OpenCodex,也不用手动翻配置文件:

ocx restore

这条命令会让 Codex 恢复原生配置,但不停止代理。使用 ocx stop,则会停止代理并恢复 Codex。

这种“随时能退回去”的设计很重要。代理工具会修改 ~/.codex/config.toml,OpenCodex 同时会保存自己的配置和备份。先知道它改了什么,也知道怎么恢复,我们才更愿意把常用工作流交给它。

04 什么情况下,OpenCodex 才值得装?

如果你已经在用 Codex CLI 或 Codex App,同时手里有不同厂商的 API、订阅账号或本地模型,OpenCodex 很对路。

做不同类型任务时,它也更方便:需要强推理时切一个模型,追求速度和成本时换另一个,涉及隐私或离线实验时接本地 OpenAI 兼容服务。

经常使用 Claude Code 的人也可以关注。OpenCodex 同一个本地服务还能提供 Anthropic Messages API,并通过 ocx claude 启动已经接好路由的 Claude Code。

但如果我们只使用一个模型,也不打算管理多套账号和接口,这套代理反而会多出一个需要维护的中间层。

工具应该减少摩擦。用不上路由能力时,没有必要为了“支持 40 多家”把所有模型都塞进选择器。

05 它运行在本地,但账号和密钥仍要谨慎

OpenCodex 是社区维护项目,不属于 OpenAI、Anthropic 或其他模型服务商。

它虽然运行在本地,但请求最终仍会发往我们选择的上游 provider。OAuth 凭据会保存在 ~/.opencodex/auth.json,其他 provider 配置位于 ~/.opencodex/config.json。使用前应该确认文件权限,不要把这些配置和密钥提交到代码仓库。

项目也明确提醒:部分服务商可能限制通过第三方代理使用账号,尤其是订阅账号的代理调用。接入之前,最好先看对应服务的使用条款。能连上,不等于服务商允许这样使用。

另外,GitHub 仓库属于 lidge-jun,npm 包名则是 @bitkyc08/opencodex。两边标识不同,安装全局包前可以先检查 npm 元数据:

npm view @bitkyc08/opencodex version repository.url

第一次测试也别直接拿生产项目开刀。

我们更愿意先新建一个演示目录,用一个可撤销的小任务验证模型路由、工具调用、日志和恢复命令。确认这些环节都符合预期,再把它接入日常项目。

不换掉 Codex,也能换模型

OpenCodex 做的事情看起来很技术:协议适配、模型目录、账号池、路由和 sidecar。

但它解决的问题其实很直白。

我们选择 AI 编程工具时,不必再把“喜欢的工作流”和“想用的模型”绑成一份套餐。

如果你喜欢 Codex 的做事方式,又希望自由选择 Claude、Gemini、DeepSeek、Kimi、本地模型或其他服务,OpenCodex 值得收藏并用一个小项目试试。

项目地址:https://github.com/lidge-jun/opencodex

中文文档:https://opencodex.me/zh-cn/

安装说明:https://opencodex.me/zh-cn/getting-started/installation/