根本原因是codex新版强制使用openai responses api协议,而deepseek仅提供chat completions接口,二者路径、字段、流式结构不兼容;必须通过cc-switch或codex++等本地代理将/v1/responses请求转换为/v1/chat/completions请求,最终base url应填http://127.0.0.1:15721/v1。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

想让 Codex 直接调用 DeepSeek 的 API,却卡在 Base URL 填不对、请求 400/404 报错、模型列表空白?根本原因不是密钥错了,而是 Codex 新版强制使用 OpenAI Responses API 协议,而 DeepSeek 提供的是 Chat Completions 接口——两者协议不兼容,直接填 https://api.deepseek.com/v1/chat/completions 一定会失败。
为什么不能直接填 DeepSeek 官方 Base URL
新版 Codex(CLI 和桌面端)底层只认 /v1/responses 路径和 instructions 等专属字段;DeepSeek 返回的是 messages 数组 + 标准 SSE 流式结构。协议层断裂导致:请求发出去收不到响应、流式中断、工具调用失效、甚至整个模型列表加载不出来。
你看到的「Base URL」配置项,本质是告诉 Codex:“去这个地址找 /v1/responses 接口”——但 DeepSeek 根本没提供这个路径。
必须走本地协议转换代理
所有可行方案都绕不开一个核心动作:在本地起一个中间服务,把 Codex 发出的 Responses 请求,翻译成 DeepSeek 能懂的 Chat Completions 请求;再把 DeepSeek 的响应,原样重建回 Responses 格式返回给 Codex。
目前稳定可用的代理工具有两个:
方法一:cc-switch(轻量、命令行友好、推荐日常开发)
方法二:Codex++(图形界面、一键启停、适合不熟悉终端的用户)
注意:Moon Bridge 等其他代理已停止维护,配置文件格式过期,不建议尝试。
cc-switch 方案:三步完成配置
第一步:确认版本 ≥ 3.16.0
打开终端执行 cc-switch --version,低于该版本请前往 GitHub release 页面下载最新 dmg(Mac)或 msi(Windows)安装包重装。
第二步:添加 DeepSeek 供应商
启动 cc-switch → 切换到「Codex」标签页 → 点击「添加供应商」→ 在预设列表中选择「DeepSeek」→ 粘贴你的 sk- 开头 API Key → 务必勾选「需要本地路由映射」 → 点击「确定」。
第三步:开启并验证路由
点击右下角齿轮图标 → 进入「路由」设置页 → 打开「本地路由总开关」、「Codex 路由启用」两项 → 确保监听地址为 http://127.0.0.1:15721/v1 → 关闭设置页 → 回到主界面确认状态灯为绿色 → 重启 Codex 桌面应用或 CLI 进程。
验证:启动 Codex 后输入 /model 命令,应能看到 deepseek-coder-v4 或 deepseek-chat-v4 等模型名称出现在列表中。
Codex++ 方案:图形化配置流程
第一步:安装与识别
下载 Codex++ arm64 .dmg(M1/M2/M3/M4 Mac)或 x64 .dmg(Intel Mac)→ 双击安装 → 启动「Codex++ 管理工具」→ 软件自动扫描并显示已安装的 Codex 路径,若未识别,请手动点击「浏览」定位到 /Applications/Codex.app。
第二步:添加 DeepSeek 供应商
左侧菜单点击「供应商配置」→ 右上角「添加供应商」→ 供应商类型选「OpenAI 兼容」→ 名称填「DeepSeek」→ Base URL 填 http://127.0.0.1:15721/v1 → API Key 粘贴你的 sk- 开头密钥 → 模型名填 deepseek-coder-v4(如需对话模型则填 deepseek-chat-v4)→ 点击「保存」。
第三步:启用并切换
回到「主界面」→ 找到刚添加的「DeepSeek」条目 → 点击右侧「启用」开关 → 等待状态变为「已启用」→ 关闭 Codex++ 管理工具 → 必须完全退出并重新启动 Codex 桌面应用,否则配置不生效。
最终 Base URL 填什么
无论用 cc-switch 还是 Codex++,你在 Codex 配置文件(~/.codex/config.toml)或界面中填写的 Base URL,都只能是:http://127.0.0.1:15721/v1。
这是本地代理暴露出来的 Responses 兼容地址,不是 DeepSeek 官方地址。填错会导致整个链路断开,模型无法加载。
配置完成后,Codex 就会通过这个地址向本地代理发起请求,代理再转发给 https://api.deepseek.com/v1/chat/completions,全程自动完成协议转换。











