工具集成 · OpenAI Responses
在 Codex CLI 中使用 TokenRa
Codex CLI 是 OpenAI 开源的终端编程智能体,通过 OpenAI Responses 接口调用模型。在 config.toml 中把 TokenRa 添加为自定义模型供应商即可使用。以下配置已于 2026 年 10 月 29 日用 Codex CLI 0.165.0 实测。
- Base URL
https://tokenra.io/v1- 接口格式
- OpenAI Responses
- 配置文件
~/.codex/config.toml- 实测版本
- Codex CLI 0.165.0
Before you start
准备工作
Install
安装 Codex CLI
可使用 OpenAI 官方安装脚本、npm 或 Homebrew 安装:
# macOS / Linux
curl -fsSL https://chatgpt.com/codex/install.sh | sh
# Windows PowerShell
powershell -ExecutionPolicy ByPass -c "irm https://chatgpt.com/codex/install.ps1 | iex"
# 或使用 npm、Homebrew
npm install -g @openai/codex
brew install --cask codex
# 检查是否安装成功
codex --versionConfigure
添加 TokenRa 供应商
Codex 的配置文件是 ~/.codex/config.toml(Windows 为 %USERPROFILE%\.codex\config.toml),不存在时请新建,并写入:
model = "deepseek-v4.1-flash"
model_provider = "tokenra"
web_search = "disabled"
[model_providers.tokenra]
name = "TokenRa"
base_url = "https://tokenra.io/v1"
wire_api = "responses"
env_key = "TOKENRA_API_KEY"| 配置项 | 说明 |
|---|---|
model | 默认模型,填下表中的 TokenRa 模型 ID。 |
model_provider | 必须与 [model_providers.tokenra] 的表名一致。 |
web_search | 设为 "disabled"。否则 Codex 会在每个请求中附带 OpenAI 的联网搜索工具,MiniMax M3.1 Flash 会因此返回 HTTP 400。 |
base_url | https://tokenra.io/v1,需要带 /v1。 |
wire_api | 固定为 "responses",新版 Codex 只支持这一种,"chat" 已被移除。 |
env_key | 保存 TokenRa API Key 的环境变量名。 |
设置 API Key
把 Key 写入环境变量 TOKENRA_API_KEY,然后新开一个终端:
# macOS / Linux:把这一行加到 ~/.zshrc 或 ~/.bashrc
export TOKENRA_API_KEY="sk-..."
# Windows PowerShell:写入当前用户的环境变量
[Environment]::SetEnvironmentVariable("TOKENRA_API_KEY", "sk-...", "User")另一种方式:把 Key 写进 auth.json
把 env_key 一行换成 requires_openai_auth = true,再把 Key 写入 ~/.codex/auth.json。Codex 的 ChatGPT 登录信息也保存在这个文件里,如果你同时用 ChatGPT 登录,请继续使用 env_key 方式。
[model_providers.tokenra]
name = "TokenRa"
base_url = "https://tokenra.io/v1"
wire_api = "responses"
requires_openai_auth = true{
"OPENAI_API_KEY": "sk-..."
}Verify
验证配置
codex exec --skip-git-repo-check "用一句话介绍你自己"codex exec 执行一次任务后退出,--skip-git-repo-check 允许在非 Git 仓库目录中运行;直接运行 codex 则进入交互界面。出现 Model metadata for `deepseek-v4.1-flash` not found 之类的警告是正常的:Codex 没有 TokenRa 模型 ID 的内置信息,会改用默认值。
Models
实测可用的模型
2026-10-29,以下模型均在 Codex CLI 0.165.0 中用上面的配置完成了同一个任务:通过 shell 工具读取文件,再写入新文件。耗时为单次运行的整个任务时长。
| 模型 | 模型 ID | 任务耗时(单次) |
|---|---|---|
| GLM-5.3 | glm-5.3 | 5 秒 |
| DeepSeek V4.1 Flash | deepseek-v4.1-flash | 6 秒 |
| DeepSeek V4.1 Flash 1017 | deepseek-v4.1-flash-1017 | 9 秒 |
| Qwen3.8 Max | qwen3.8-max | 16 秒 |
| Qwen3.8 Flash | qwen3.8-flash | 19 秒 |
| GLM-5.3 Flash | glm-5.3-flash | 21 秒 |
| MiniMax M3.1 Flash | minimax-m3.1-flash | 21 秒 |
| Kimi K3 | kimi-k3 | 22 秒 |
| MiniMax M3 | minimax-m3 | 29 秒 |
| Kimi K3.1 Pro | kimi-k3.1-pro | 33 秒 |
model_reasoning_effort = "medium"。请不要设置该项(上表即按此实测),或改用 "low"、"high"。gemini-3.8-flash 不能用于此类工具:它的上游会拒绝所有带工具定义的请求(HTTP 400),而编程助手的每个请求都带有工具。Switch
切换模型
- 单次会话或任务:
codex -m kimi-k3.1-pro,或codex exec -m kimi-k3.1-pro "..."。 - 修改默认模型:改
config.toml中的model。
FAQ
常见问题
提示 wire_api = "chat" is no longer supported
新版 Codex 只支持 Responses 接口。请把 wire_api 改为 "responses",TokenRa 在 https://tokenra.io/v1/responses 提供该接口。
报错 400,提示不支持联网搜索
出现 该模型暂不支持服务端联网搜索 之类的报错,说明请求带上了 Codex 的联网搜索工具。在 config.toml 顶部加上 web_search = "disabled" 即可。
GLM 模型报错 400 invalid_request
删除 model_reasoning_effort = "medium",或改为 "low"、"high"。
报错 401,或要求用 ChatGPT 登录
说明 Codex 没有用上 TokenRa 的 Key。请检查 config.toml 是否在 ~/.codex 目录下、model_provider 是否为 "tokenra",以及启动 Codex 的终端里是否设置了 TOKENRA_API_KEY。设置变量后请新开一个终端。