现在把 DeepSeek 接入 Codex,已经不必再部署代理或中转层:Codex 使用 Responses API 调用模型,而 DeepSeek 原生兼容该协议,写好配置文件即可。不过有一个关键限制:目前能在 Codex 中使用的 DeepSeek 模型只有一个,而且它不支持图像输入。
Codex 能用 DeepSeek 吗?
可以。Codex 通过 OpenAI 的 Responses API 与模型通信,DeepSeek API 原生支持这一协议,因此只需在配置文件中将 DeepSeek 声明为模型提供商,即可在 Codex 中使用它。DeepSeek 已在 API 文档的 Agent Integrations → Codex 页面发布了官方集成说明。
这改变了接入所需的基础设施。Codex 已弃用较早的 wire_api = "chat" 方案,转而使用 Responses API;在过渡期间,DeepSeek 只能借助翻译层访问,例如 LiteLLM、自己实现 Responses 协议的路由器,或手写桥接服务。这些方案如今依然可用,但已不再是入门门槛。这里说的是模型提供商配置,和为 Codex 添加 DeepSeek 相关 MCP 工具是两回事。
一套配置可覆盖全部 Codex 客户端。Codex CLI、ChatGPT 桌面应用以及 VS Code 的 Codex IDE 扩展都会读取同一个 ~/.codex 目录,因此无需为每个客户端分别配置。
Codex 目前支持哪个 DeepSeek 模型
只有 deepseek-v4-flash。DeepSeek 的价格表中,deepseek-v4-flash 的 Responses API 支持项标为 ✓,而 deepseek-v4-pro 标为 ✗;脚注称 Pro 将在 2026 年 8 月初支持。截止 2026 年 8 月 3 日,这条脚注仍然存在,Pro 也依旧显示为 ✗。
安装配置写入的 models.json 目录中同时列出了两款模型,因此配置层面并不会阻止你选 Pro;真正的失败会在上游请求发出时出现。CC Switch 的 DeepSeek 预设也在预设源码中给出了相同警告:在 DeepSeek 开放该集成前切换到 Pro,会导致请求报错。
如果你现在就想使用更强的模型,它支持 Anthropic 格式的端点,因此可以出现在 Claude Code 配置中,却不能用于 Codex。两款模型在价格和并发能力上的差异也足够大,值得有意识地选择;可参阅 deepseek-v4-flash vs deepseek-v4-pro。
方式一:使用官方安装脚本
DeepSeek 提供了会自动写入完整配置的安装脚本。如果你并未同时管理多个提供商,这是最快的方式。首先需要安装 Codex CLI 或 ChatGPT 桌面应用,并至少启动过一次以创建 ~/.codex 目录;同时,Codex 客户端版本至少要达到模型目录规定的最低版本 0.144.0。
# macOS / Linux
bash <(curl -fsSL https://cdn.deepseek.com/api-docs/codex-deepseek-setup-en.sh)
# Windows, in PowerShell
irm https://cdn.deepseek.com/api-docs/codex-deepseek-setup-en.ps1 | iex
脚本会显示一个菜单:1 选择 deepseek-v4-flash,2 选择 deepseek-v4-pro,3 恢复安装前的配置。应选择 1:选项 2 虽然会写入语法正确的配置,但对应模型目前仍无法处理 Codex 请求。首次运行时,脚本会要求输入 API Key;可在 platform.deepseek.com 创建。
已有配置会被改动哪些内容
我在 2026 年 8 月 3 日用官方脚本测试了一个一次性的 CODEX_HOME。其中预先放入了一份刻意制造冲突的配置,包含 profile、过时的 model_verbosity、model_reasoning_summary,以及 MCP 服务器和受信任项目条目。可使用 CODEX_HOME=/tmp/probe sh codex-deepseek-setup-en.sh 复现,并选择 1。脚本报告了四项改动,并逐项解释原因:
• 重写 model:"gpt-5.6-sol" → "deepseek-v4-flash"
• 删除 profile = "myprofile" ← profile 会覆盖 model / model_provider / model_catalog_json
• 删除 model_verbosity = "high" ← 旧值可能超出模型支持范围
• 删除 model_reasoning_summary = "detailed" ← models.json 声明 default_reasoning_summary=none
[mcp_servers.playwright] 区块、[projects."..."] 的信任级别及 approval_policy 均未被修改;写入前,原始文件会复制到 ~/.codex/backup-deepseek/。脚本还会先验证两个文件:检查 models.json 是否为有效 JSON,并检查 config.toml 是否存在解析错误或重复键。这只是单台机器上的一次测试,因此可以证明备份和恢复路径存在,但不能保证它适用于所有配置形态。
方式二:手动编辑 config.toml
如果你希望将配置纳入版本控制,或想弄清每个字段的作用,手动编辑更合适。先根据 DeepSeek 文档中发布的模型目录创建 ~/.codex/models.json,然后向 ~/.codex/config.toml 添加以下内容:
model = "deepseek-v4-flash"
model_provider = "deepseek"
preferred_auth_method = "apikey"
forced_login_method = "api"
model_reasoning_effort = "high"
model_catalog_json = "~/.codex/models.json"
[model_providers.deepseek]
name = "deepseek"
base_url = "https://api.deepseek.com/"
wire_api = "responses"
experimental_bearer_token = "<your DeepSeek API Key>"
| 字段 | 作用 |
|---|---|
wire_api = "responses" | 选择 Responses API,而非 Chat Completions。这是让集成本身能够工作的关键字段 |
model_catalog_json | 指向 models.json,其中声明了上下文窗口、推理级别和工具格式。缺少它时,Codex 会退回到通用元数据 |
preferred_auth_method, forced_login_method | 使用 API Key 认证,而非登录 ChatGPT 账号 |
model_reasoning_effort | DeepSeek 模型目录声明的三个级别:low、high 和 max |
experimental_bearer_token | 你的 API Key,会以明文形式写入文件 |
方式三:经常切换提供商可用 CC Switch
CC Switch 是一款桌面应用,可管理包括 Codex 在内的八种编程工具的提供商配置。它内置 DeepSeek 预设:端点为 https://api.deepseek.com,默认模型为 deepseek-v4-flash,模型目录中同时包含 Flash 和 Pro。它写入的字段与手动配置相同,只不过你通过托盘菜单操作,无需打开编辑器。
采用前有两点需要注意。与 Claude Code 不同,Codex 每次切换后都必须重启才会生效。此外,单个应用会保存你登记过的所有提供商凭据,并运行本地服务来路由这些凭据;这与“一个文件中仅保存一个 API Key”的安全模型不同。
如何确认配置已生效
在项目目录启动 Codex CLI,查看启动横幅即可:其中的 model 和 provider 两行就是确认信息。2026 年 8 月 3 日,我在测试配置上使用 codex-cli 0.146.0 得到了以下输出:
OpenAI Codex v0.146.0
model: deepseek-v4-flash
provider: deepseek
reasoning effort: high
API Key 错误时的提示也很有辨识度,并会明确列出所用端点;这是确认请求确实已发往 DeepSeek 的最快方法:
ERROR: unexpected status 401 Unauthorized: Authentication Fails, Your api key: ****r000 is invalid,
url: https://api.deepseek.com/responses
Codex 会重试五次才显示这一错误,因此 API Key 输错后,通常会先有几秒没有任何输出。在 ChatGPT 桌面应用的 macOS 版本中,模型选择器显示的是自定义,而非模型名称;这是应用对所有本地配置模型的统一标签,实际使用的仍是你选择的 DeepSeek 模型。若 Codex 日志中出现 fallback model metadata 或 Unknown model,说明 models.json 没有加载成功,模型目录路径有误。
在 Codex 中运行 DeepSeek 后会有哪些不同
与在 OpenAI 模型上运行 Codex 相比,有四种行为差异;它们都不是需要排查的故障。
无法输入图片。 models.json 中的 DeepSeek 条目声明了 input_modalities: ["text"],因此当 DeepSeek 是当前模型时,任何 Codex 客户端都不能使用粘贴截图或图片附件。2026 年 8 月 2 日,一位开发者在 Hacker News 上遇到了同样的问题,并通过保留第二个支持视觉能力的提供商来解决:
由于 DeepSeek V4 没有视觉能力,他让 OMP 通过 Codex 订阅使用 GPT 5.6 Luna。
这种做法是在配置中增加第二个指向支持图片端点的 [model_providers.*] 区块。其 wire_api = "responses" 结构完全相同,因此承载 GPT-5.6 的聚合端点也能放入同一份配置,只需修改一行 model 即可切换。
旧会话看起来像消失了。 Codex 会按登录方式分组会话历史。因此,从 ChatGPT 订阅切换到第三方 API Key 后,先前的会话组会被隐藏,而不是被删除。恢复原有配置后,旧会话就会重新出现;相应地,DeepSeek 会话则会隐藏。
API Key 会以明文存在配置文件中。 experimental_bearer_token 保存的是密钥本身,而非环境变量引用。因此,~/.codex/config.toml 会成为包含敏感信息的文件;同步该目录或提交 dotfiles 仓库前,应特别检查。
它可能自称 ChatGPT。 集成安装的models.json 包含 Codex 自己的运行框架提示词,开头是“You are Codex, an agent based on GPT-5.”。这段提示词并非装饰:它定义了工具协议、审批规则以及智能体遵循的输出格式。因此,同一个模型在这一框架下的行为会不同于普通聊天窗口;其中的身份描述来自运行框架,并不意味着模型在宣称自身血统。
价格是多少
根据 2026 年 8 月 3 日在DeepSeek 价格页面核实的信息,deepseek-v4-flash 的缓存未命中输入价格为每百万 Token $0.14,输出价格为每百万 Token $0.28。缓存命中的输入仅为每百万 Token $0.0028,比未命中低五十倍。对于每一轮都会重新发送不断增长上下文的编程智能体而言,这个差距决定了长会话的实际成本。
| deepseek-v4-flash | deepseek-v4-pro | |
|---|---|---|
| 可在 Codex 中使用 | 是 | 暂不支持 |
| 版本字符串 | DeepSeek-V4-Flash-0731 | DeepSeek-V4-Pro |
| 上下文 / 最大输出 | 1M / 384K | 1M / 384K |
| 输入,缓存命中 | $0.0028 | $0.003625 |
| 输入,缓存未命中 | $0.14 | $0.435 |
| 输出 | $0.28 | $0.87 |
| 并发限制 | 2500 | 500 |
表格中还有两项没有体现。DeepSeek 说明,未来将推出峰谷定价:每日北京时间(UTC+8)09:00–12:00 和 14:00–18:00 的高峰时段,价格为所列价格的 2 倍,具体开始日期待公布。另外,模型目录声明 1M 上下文窗口的有效率为 95%,超过后将按 models.json 设置的策略截断。
常见问题
没有 ChatGPT 订阅,Codex 能使用 DeepSeek 吗?
可以。preferred_auth_method = "apikey" 和 forced_login_method = "api" 会让 Codex 使用你的 DeepSeek API Key 认证,完全跳过账号登录。
VS Code 扩展和桌面应用需要分别配置吗?
不需要。三个 Codex 客户端读取的是同一个 ~/.codex 配置。切换后重启桌面客户端,它才会读取到新配置。
如何切回官方模型?
重新运行安装脚本并选择选项 3,它会恢复安装前备份的 config.toml。如果你是手动配置的,删除 DeepSeek 相关字段和 [model_providers.deepseek] 区块,然后重新登录即可。
现在可以在 Codex 中使用 deepseek-v4-pro 吗?
截止 2026 年 8 月 3 日还不可以。DeepSeek 价格页面中,它的 Responses API 支持仍标为 ✗;此前公布的目标时间是 2026 年 8 月初,因此不要因为配置允许选择它就直接相信,而应重新查看该页面。
三种接入方式,怎么选
| 方式 | 适合场景 | 代价 |
|---|---|---|
| 官方安装脚本 | 希望一条命令完成配置,并需要备份与恢复路径 | 会重写你可能尚未查看过的配置字段;API Key 会以明文写入 |
手动编辑 config.toml | 将 dotfiles 纳入版本控制,或需要理解每个字段 | 需自行维护 models.json;目录路径错误会静默降级元数据 |
| CC Switch | 经常在 DeepSeek、官方订阅和其他提供商之间切换 | 一个应用保存全部凭据并运行本地服务;每次切换都要重启 Codex |
真正悬而未决的是 Pro。Flash 是这一系列中便宜、快速且仅支持文本的一端;而多数人希望放进智能体循环中的,恰恰是目前还不能使用 Codex 所需协议的那款模型。在那条脚注变成现实之前,选择在 Codex 中使用 DeepSeek,就意味着主动选择 Flash。
延伸阅读: Codex vs Claude Code · How to use GLM-5.2 in Claude Code