OpenCodex 是开源 LLM 代理网关,让 Codex CLI 与 Claude Code 用任意 Provider 模型。TypeScript 编写,支持 Claude / Gemini / DeepSeek / Ollama 等十余种模型,npm 一行安装即用,MIT 协议完全免费。
🎤 引言
玩 OpenAI Codex CLI 的开发者大概率遇到过这种憋屈:CLI 只内置 OpenAI 官方模型,想接 Claude / Gemini / DeepSeek?等官方加支持吧。玩 Claude Code 的同学也一样——Anthropic 自家模型跑得飞起,但想临时换个 Gemini Flash 试试,对不起,CLI 不支持。
更现实的问题:团队里有人买 Claude Pro 额度,有人用 Gemini API 免费层,有人跑本地 Ollama 的 Qwen 32B,统一工具链共享提示词工程、agent 编排的成果,几乎不可能——每个 CLI 都是封闭花园。
GitHub 4.8k Stars(截至 2026-07-26)的 lidge-jun/opencodex 就是为打破这堵墙来的——一个 TypeScript 写的本地代理网关,把 Codex 的 Responses API 实时翻译成任意 Provider 协议。Codex CLI 不知道、Claude Code 不在乎——它们只知道本地 10100 端口有个「OpenAI API 替身」在响应。
发布才一个多月(2026-06-18 创建),就已经进入 GitHub Trending TS 榜单前 10,可见痛点之精准。
⭐ 核心功能
1. Responses API 双向翻译
OpenCodex 的核心是一个 MITM 代理:监听本地 10100 端口,把 Codex CLI / Claude Code 发来的 OpenAI Responses API 请求实时转换成目标 Provider 的格式,再把响应反向翻译回去。
透明到极致——你不需要修改 Codex 的任何配置,只需要把它的 OPENAI_BASE_URL 环境变量改成 http://localhost:10100/v1 就完事。
2. 全功能兼容:流式、工具调用、推理 token、图片
不是简单的「换个模型名」。OpenCodex 完整支持以下高级特性在跨 Provider 之间转换:
- SSE 流式响应(stream)- 几乎所有 Provider 都有,转换后保持原有时序
- Tool Use / Function Calling - 把 Claude 风格的 tool_use 翻译成 Gemini function_declaration,再翻译回 Codex 期望的 tool_calls
- Reasoning tokens - DeepSeek-R1 / o1 / Claude 的思考过程都能正常透传
- Vision / 图片输入 - base64 / URL 图片在 Provider 间路由
实际测试:用 Codex CLI 跑一个 agent 任务,目标 Provider 是 Claude Sonnet 4.5,工具调用和流式输出都能正常工作,体验跟原版没差。
3. 十余种开箱即用的 Provider
README 列出的 Provider 已经覆盖主流生态:
- Anthropic:Claude Sonnet / Opus / Haiku 全系列
- OpenAI:GPT-5 / GPT-5.4 / o1 / o3 / o4
- Google:Gemini 2.5 Pro / Flash / Flash-Lite
- xAI:Grok 3 / Grok 4
- DeepSeek:V3 / R1
- Moonshot Kimi:K2
- 智谱 GLM:GLM-5
- 通义千问 Qwen:Qwen 3
- Ollama:本地任意 GGUF 模型
- OpenRouter:聚合 200+ Provider
- 自定义 OpenAI-compatible 端点:接中转 API、自部署网关都行
想加新 Provider?写个 adapter 就行,TypeScript 强类型加持下扩展不难。
4. 一行命令启动
安装:
npm install -g @bitkyc08/opencodex启动:
ocx start服务跑在 http://localhost:10100,控制台打印当前激活的 Provider 和已映射的模型列表。配置文件支持 YAML / TOML,写一次永久生效。
跨平台支持 macOS / Linux / Windows(Node 18+ 即可),不需要 Docker / Python 环境。
5. Codex 与 Claude Code 双兼容
不只是 Codex CLI,Claude Code 也能用——只要把它原本指向 api.anthropic.com 的请求改路由到 OpenCodex 的 OpenAI 兼容端点(适配 Claude Code 的 Anthropic Messages API 路径)。
实测:Claude Code + OpenCodex + Gemini 2.5 Pro,能完整跑通多文件编辑 + Bash 工具调用 + 长上下文推理这条链,等于给 Claude Code 解锁了 Gemini 后端。
📥 安装与使用
环境要求
- Node.js 18+(推荐 LTS 22)
- 已安装 Codex CLI 或 Claude Code(任一)
- 目标 Provider 的 API Key(Anthropic / OpenAI / Gemini / 等)
一键安装
# 全局安装
npm install -g @bitkyc08/opencodex
# 启动代理
ocx start默认监听 127.0.0.1:10100,日志写入 ~/.opencodex/opencodex.log。
配置 Provider
编辑 ~/.opencodex/config.yaml:
providers:
- name: claude-sonnet
type: anthropic
apiKey: sk-ant-***
baseUrl: https://api.anthropic.com
models:
- claude-sonnet-4-5
- claude-opus-4-8
- name: deepseek-r1
type: deepseek
apiKey: sk-***
baseUrl: https://api.deepseek.com
models:
- deepseek-reasoner
- deepseek-chat
- name: ollama-local
type: ollama
baseUrl: http://localhost:11434
models:
- qwen2.5-coder:32b
routing:
default: claude-sonnet
rules:
- pattern: "codex-*"
provider: claude-sonnet
model: claude-sonnet-4-5重启 ocx start 即可生效。
让 Codex CLI 用上 Claude
export OPENAI_API_KEY=sk-any
export OPENAI_BASE_URL=http://localhost:10100/v1
codex "用 Rust 写一个 hello world"Codex CLI 收到请求 → 转发到 OpenCodex → 翻译成 Anthropic 协议 → 调用 Claude → 翻译回 OpenAI Responses → Codex 收到正常响应。整套链路对用户完全透明。
让 Claude Code 用上 Gemini
# 在 Claude Code 配置里把 baseUrl 改成 OpenCodex
export ANTHROPIC_BASE_URL=http://localhost:10100/anthropic
export ANTHROPIC_AUTH_TOKEN=sk-any
claude官方文档:https://github.com/lidge-jun/opencodex
项目仓库:GitHub - lidge-jun/opencodex
🎯 适用场景
- 多模型 A/B 测试团队:同一份 prompt 同时跑 Claude / Gemini / DeepSeek 对比效果,OpenCodex 一行切换 Provider。
- 混合订阅党:主力 Claude Pro + 备选 Gemini Flash(免费层)+ 本地 Ollama Qwen 做兜底,全靠 OpenCodex 统一入口。
- 成本敏感玩家:日常写代码用 DeepSeek-V3(便宜),关键决策用 Claude Opus(贵但准),工具链不变只换 Provider。
- 企业 LLM 网关自建:不想直接接 LiteLLM(重、Python 栈)的话,OpenCodex 这个 TS 轻量代理更容易集成进现有 Node 生态。
- 跨国 / 跨云团队:同事在欧洲用 Mistral,亚太用 Gemini,国内用 DeepSeek,统一一个 CLI 入口即可。
- 开发 / 测试 Codex 替代方案:Codex CLI 出现 bug 想换 Claude Code 时,OpenCodex 让切换零成本。
不太适合:只用单一 Provider 的用户(直接用官方 CLI 就好,没必要套一层);企业级高 QPS 生产网关(OpenCodex 是单进程代理,并发上限有限);需要复杂 routing / 权限审计 / 配额管理的大型团队(这种情况请上 LiteLLM / Portkey)。
🔍 对比 / 替代方案
| 工具 | 语言 | 部署 | Codex 兼容 | Claude Code 兼容 | 自定义 Provider | 维护活跃度 | 协议 |
|---|---|---|---|---|---|---|---|
| OpenCodex | TypeScript | npm 一行 | ✅ 透明 | ✅ 透明 | ✅ 11+ | ⭐⭐⭐⭐⭐ | MIT |
| LiteLLM | Python | Docker / PyPI | ⚠️ 需配置 | ⚠️ 需配置 | ✅ 100+ | ⭐⭐⭐⭐⭐ | MIT |
| Portkey | TypeScript | Cloud / Self-host | ⚠️ 需配置 | ⚠️ 需配置 | ✅ | ⭐⭐⭐⭐ | Apache-2 |
| OneAPI | Go | Docker | ⚠️ 需配置 | ⚠️ 需配置 | ✅ | ⭐⭐⭐⭐ | MIT |
| claude-code-proxy | Python | PyPI | ❌ | ✅ | ⚠️ 有限 | ⭐⭐⭐ | MIT |
| 直接改 CLI 配置 | - | 手动 | ⚠️ 看官方支持 | ⚠️ 看官方支持 | ❌ | - | - |
OpenCodex 的甜蜜点非常清晰:零配置透明代理 + 双 CLI 兼容 + 轻量 TypeScript 栈。LiteLLM 是功能更全的老牌方案,但 Python 栈 + 复杂配置让「只想换个模型」的轻需求用户望而却步。Portkey 偏企业 SaaS,私有化部署门槛高。OneAPI 是国内老牌聚合网关,但功能堆得越来越像 LiteLLM。
横向对比 LiteLLM:OpenCodex 把「配置驱动」简化成「一行命令 + 改环境变量」,学习成本几乎为零;缺点是高级特性(rate limit、cache、fallback chain、usage 统计)暂时不如 LiteLLM 完善,复杂场景仍需 LiteLLM。
诚实缺点:项目年轻(2026-06 才发布),GitHub 上 33 open issues,部分边缘 Provider(GLM / Kimi / Qwen)的适配可能还在打磨;TypeScript 单进程在数万 QPS 下会成为瓶颈,但日常个人 / 小团队开发完全够用。
⚠️ 注意事项
- API Key 安全:OpenCodex 的 config 文件明文存储 Provider API Key,权限要管好(
chmod 600 ~/.opencodex/config.yaml),别把配置文件上传到 Git 仓库。 - 不要把 10100 端口暴露公网:默认监听
127.0.0.1,除非你要在内网给同事用,否则别改成0.0.0.0——任何能访问的人都能用你的额度。 - Provider 计费:OpenCodex 本身免费,但你调用的 Provider API 是真计费的,跨 Provider 路由时注意别「误调贵的模型」,建议路由规则加上「按文件路径 / prompt 前缀区分」。
- Tool Use 兼容性:个别 Provider 的 function calling schema 跟 OpenAI 略有差异(特别是 Gemini 的嵌套参数),极少数 edge case 下 tool call 可能转换失败,跑关键任务前先小流量测试。
- Codex CLI 版本要求:Codex CLI 自身也在快速迭代,部分 Responses API 新字段可能临时不兼容,盯 GitHub Issues 标签
compatibility。 - Claude Code 集成非官方:Anthropic 官方没承认 OpenCodex 这种 MITM 路线,Claude Code 升级后可能临时破坏兼容性(历史上 LiteLLM / claude-code-proxy 都遇到过)。
- TypeScript 编译依赖:源码用 TypeScript 但发布的是编译后产物,调试时建议直接拉源码跑
pnpm dev,方便看转换日志。
✅ 总结
OpenCodex 是 2026 年 AI 工具链「碎片化困局」里少有的轻量解药。一个 4.8k Stars 的 TypeScript 进程,跑在 10100 端口,把 Codex CLI / Claude Code 这两个最流行的 AI 编程工具打通了——从此不用纠结「哪个 Provider 接哪个 CLI」,写好 prompt 一切 Provider 都能用。
推荐指数 ⭐⭐⭐⭐(4/5):零配置上手 + 双 CLI 兼容 + 11+ Provider 支持,三个核心卖点全中。扣一星是因为项目年轻(2026-06 发布才 1 个月),部分边缘场景适配还在打磨。
适合:多模型 A/B 测试团队、混合订阅党、成本敏感的多 Provider 用户、企业 LLM 网关自建者。
不太适合:单一 Provider 重度用户、企业高 QPS 生产网关、需要 LiteLLM 级别高级特性的复杂场景。
如果你是 Codex CLI 或 Claude Code 的重度用户,又对「只能跑官方模型」感到憋屈——花 30 秒 npm install -g @bitkyc08/opencodex && ocx start,立刻解锁任意 Provider 切换能力。这个投入产出比在当前 AI 工具链里几乎找不到对手。
官方文档:https://github.com/lidge-jun/opencodex
GitHub:https://github.com/lidge-jun/opencodex