把 OpenAI Codex CLI 指向第三方网关
OpenAI 的 Codex CLI 是个好工具——快、是 agent、自带不错的默认模型。唯一别扭的地方是它默认接 api.openai.com,认证模型也假定你有 OpenAI key。这篇讲怎么把它指向第三方网关,包括 ApiLink。机制对任何实现了 Responses API 的网关都通用。
为什么要这么做
- 你想让 Codex 调 Claude 或 Gemini,不调 GPT。
- 你团队已经在一个 AI 网关付费,想让 Codex 用量也走那张账单。
- 你在 api.openai.com 不稳定的网络环境里。
- 你想对所有开发工具做集中限流和按 key 限额。
前置条件
- 已安装 Codex CLI(
npm install -g @openai/codex或你的包管理器)。 - 一个在
/v1/responses上实现了 OpenAI Responses API 的网关的 API key。ApiLink 实现了;OpenRouter 截至 2026-05 还没。 - 网关的 base URL——ApiLink 是
https://apilink.io/v1。
实际配置
Codex 认两个环境变量: OPENAI_API_KEY 和 OPENAI_BASE_URL。设好它俩,Codex 就把你的网关当成 OpenAI 用:
就这样。Codex 会调 https://apilink.io/v1/responses 而不是 OpenAI 默认地址。流式、工具调用、丰富的 CLI 界面全部照常工作。
选模型
Codex 默认用 gpt-5-codex。改用别的模型有两种方式:
claude-sonnet-4-5、 gemini-2.5-pro)。查你网关的 /v1/models 端点拿可用 ID 列表。怎么验证确实在走你的网关
简单测:发一次请求,去网关的 usage 后台看一眼。如果调用以正确的模型名和大致正确的 token 数出现,路由就通了。
硬核测(推荐):跑 Codex 前设 DEBUG=codex*。你会看到 HTTP 请求滚过,包括目标主机名。确认没有任何一条请求打到 api.openai.com——Codex 偶尔有些向后兼容的代码路径不认环境变量,特定子命令会偷偷走默认。
同样的招数适用于其他开发工具
OpenAI 兼容 base URL 这套对许多同类工具都通用:
| 工具 | 怎么把它指向别处 |
|---|---|
| Cursor | Settings → Models → Override OpenAI Base URL |
| Aider | --openai-api-base 参数 或 OPENAI_API_BASE 环境变量 |
| Cline (VS Code) | Provider 选 OpenAI Compatible → Base URL 字段 |
| Continue.dev | 编辑 config.json,在 openai provider 下设 apiBase |
| Open WebUI | Settings → Connections → 添加 OpenAI API endpoint |
| LiteLLM proxy 用户 | 已经抽象过——把网关加为其中一个模型 provider |
常见坑
- 模型名不匹配。Codex 默认的
gpt-5-codex是 OpenAI 专属。不覆盖模型的话,转销不了那个模型的网关会回 404。 - 按模型限流。Codex 的内循环单个任务可能产生几十次请求。如果网关按模型设了 RPM 限额,先调高再让 Codex 放量。
- Responses API 兼容性。不是每个网关都实现了
/v1/responses。没实现的 Codex 会以 404 失败。只有 chat-completions 不够。 - 认证 header 格式。有些网关要
Authorization: Bearer xxx,有些要自定义 header。标准 OpenAI 客户端永远发 Bearer 格式——如果你网关要别的,中间没有代理 Codex 就跑不起来。
收尾
Codex CLI + 多模型网关是 2026 年最被低估的开发组合之一。你拿到 OpenAI 砸钱做的 agent 体验,但能自由路由到当前任务最合适的模型。支出上限、审计日志、单一账单都白送。
ApiLink 是端到端实现 /v1/responses 的网关(流式、工具调用全套)。如果你在选型可以试我们的;如果你已经在用别的网关而 Codex 跑不起来,最大概率的原因是它没实现 Responses API。