Codex CLI
OpenAI Codex CLI 是 OpenAI 官方的终端编程代理,基于 OpenAI Responses API。通过 wrouter 接入后,可以用同一把密钥同时调度 GPT-5 与 Claude、Gemini 等非 OpenAI 模型。
前置要求
| 项 | 要求 |
|---|---|
| Codex CLI | ≥ 0.5(命令为 codex) |
| Node.js | ≥ 20(如通过 npm 安装) |
| wrouter | 一把可用 Token |
安装
bash
npm i -g @openai/codex
# 验证
codex --version配置
1. 编辑 ~/.codex/config.toml
toml
model_provider = "wrouter"
model = "gpt-5"
[model_providers.wrouter]
name = "wrouter"
base_url = "https://api.wrouter.io/v1"
wire_api = "responses"
env_key = "WROUTER_API_KEY"字段说明:
| 字段 | 含义 |
|---|---|
base_url | wrouter OpenAI 兼容端点,必须带 /v1 |
wire_api | "responses"(推荐,OpenAI Agentic 协议)或 "chat"(Chat Completions) |
env_key | 从该环境变量读取 API key |
2. 设置环境变量
bash
# macOS / Linux
export WROUTER_API_KEY="sk-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# Windows (PowerShell)
[Environment]::SetEnvironmentVariable("WROUTER_API_KEY", "sk-xxxx...", "User")验证
bash
codex启动后输入 /status,应看到:
Provider: wrouter
Model: gpt-5
Endpoint: https://api.wrouter.io/v1
Wire API: responses发起测试调用:
> What files are in the current directory?期望:Codex 调用 shell 工具并展示结果。
推荐模型
| 模型 | wire_api | 适用 |
|---|---|---|
gpt-5 | responses | 主力,原生 Agentic 支持最佳 |
o3 | responses | 推理密集 |
gpt-4o | responses 或 chat | 通用日常 |
claude-sonnet-4-5 | chat ⚠️ | Claude 用 chat 协议更稳 |
gemini-2.5-pro | chat ⚠️ | 同上 |
会话中临时切换模型:
/model claude-sonnet-4-5⚠️ 重要:切到非 OpenAI 模型时,建议在 config.toml 里同时改
wire_api = "chat",否则部分 Agentic 行为(多步工具循环)可能降级。最佳实践是按 provider 复制多组配置:
toml
[model_providers.wrouter-chat]
name = "wrouter (chat)"
base_url = "https://api.wrouter.io/v1"
wire_api = "chat"
env_key = "WROUTER_API_KEY"
# 然后用 codex --provider wrouter-chat 切换故障排查
| 现象 | 可能原因 | 处理 |
|---|---|---|
401 Unauthorized | WROUTER_API_KEY 没设 / 错误 | echo $WROUTER_API_KEY,并确认 toml 里 env_key 与之一致 |
404 或 unsupported wire_api | 模型不支持 Responses 协议 | 改 wire_api = "chat",或换支持 Responses 的模型 |
| 响应空白 / 卡住 | wire_api 与模型不匹配 | 同上 |
| 乱码 / 工具调用失败 | Codex 版本过旧 | npm i -g @openai/codex@latest |
Status: rate_limit_exceeded | 触发 wrouter 限流 | 控制台调整 RPM 上限 |
已知限制
- Codex 部分高级特性(如
web_search内置工具)依赖 OpenAI 官方专属上游;通过 wrouter 调用非 OpenAI 模型时这些工具不可用。 wire_api = "responses"仅在模型本身支持 Responses 协议时生效,目前主要是 OpenAI 自家 GPT-5 / o3 系列。