问题现象
在 Codex 中使用 MiMo Cloud 模型(mimo-v2.5-pro)对话时,返回404 Not Found错误。
逐步排查过程
第一步:配置文件已存在但 API 密钥过期
- 发现
~/.codex/config.toml已配置 MiMo Cloud,但 API 密钥与脚本中的不一致 - 运行
/tmp/write_mimo_config.py更新了 API 密钥 - 验证:直接调用 MiMo 的 Chat Completions API(
/v1/chat/completions)返回 200,说明密钥有效
第二步:发现 Codex 未加载配置
- 查看日志
~/.codex/log/codex-tui.log,发现 Codex 仍在使用gpt-5.5模型,连接chatgpt.com - 说明配置文件未被 Codex 正确读取(可能是旧会话缓存)
第第三步:核心问题 — API 协议不兼容
这是最关键的发现:
| 项目 | 说明 |
|---|---|
| Codex 要求 | wire_api = "responses"(OpenAI Responses API,端点/v1/responses) |
| MiMo Cloud 支持 | 仅 Chat Completions API(端点/v1/chat/completions) |
| MiMo Cloud 不支持 | Responses API(端点/v1/responses返回 404) |
尝试将wire_api改为"chat"后,Codex 报错:
wire_api = "chat"is no longer supported. Setwire_api = "responses".
结论:Codex 新版本强制要求 Responses API,但 MiMo Cloud 不支持该协议。
根本原因
Codex 与 MiMo Cloud 之间存在 API 协议不兼容:
- Codex 只支持 OpenAI Responses API 格式
- MiMo Cloud 只支持 OpenAI Chat Completions API 格式
- 两者无法直接通信
修复方案:本地代理转换
创建一个本地代理服务器/tmp/mimo_proxy.py,充当协议转换层:
Codex → (Responses API) → 本地代理 127.0.0.1:8787 → (Chat Completions API) → MiMo Cloud代理功能:
- 接收 Codex 的 Responses API 请求
- 转换为 Chat Completions API 格式
- 转发到 MiMo Cloud
- 将响应转换回 Responses API 格式返回给 Codex
- 支持流式(SSE)和非流式请求
- 支持工具调用(function_call)格式转换
最终配置
~/.codex/config.toml:
model = "mimo-v2.5-pro" model_provider = "mimo-cloud" [model_providers.mimo-cloud] base_url = "http://127.0.0.1:8787/v1" # 指向本地代理 wire_api = "responses" # Codex 要求 api_key = "tp-sbebs4u670f7pc4l8pv6ifzrgrffpg4e9fjkg7vypbmiknv5"使用方式:
# 启动代理(保持后台运行)python3 /tmp/mimo_proxy.py&# 重启 Codex涉及的文件
| 文件 | 作用 |
|---|---|
/tmp/mimo_proxy.py | 本地协议转换代理 |
/tmp/write_mimo_config.py | 配置文件生成脚本 |
~/.codex/config.toml | Codex 配置文件 |