> https://router.one/zh/blog/deepseek-harness-vs-claude-code-vs-codex-cli 的 Markdown 镜像，供 AI 助手与爬虫使用。Router One 是 OpenAI 兼容的统一 LLM API 网关。
> 发布：2026-10-19 · 作者：Router One Team

# DeepSeek Harness 和 Claude Code、Codex 的区别：一把 Key 接入

_DeepSeek Harness 与 Claude Code、Codex CLI 对比：各自是什么、在哪里运行、走哪种 API 协议，以及怎样用一把 Router One Key 接入三者，国内直连、支付宝充值。_

DeepSeek Harness、Claude Code 和 Codex CLI 都可以在你自己的电脑上运行 Agent：读写文件、执行命令，再把每一轮模型调用发给某个 API。但它们出自三家厂商，各说各的协议。**DeepSeek Harness**（dsh）是 DeepSeek 开源的 Agent 框架（agent harness）：插件化设计，有本地 Web UI 和桌面版，日常工作、写代码都能用，通过你配置的提供商连接模型，支持三种 API 协议。**Claude Code** 是 Anthropic 的智能体编程工具，说的是 Anthropic Messages 协议。**Codex CLI** 是 OpenAI 出品、在本机运行的编程 agent，说的是 Responses API。接到 Router One 之后，一把 Key 就能同时接入三者：每个工具指向自己协议对应的端点，网关发往模型的每个请求都记在同一个账户（钱包或套餐额度）、同一份控制台 → 日志里（在输出任何内容之前就失败的流式请求可能没有记录）；端点国内直连、无需 VPN，支付宝即可充值。

如果你只是在两个厂商 CLI 之间二选一，[Claude Code vs Codex CLI](https://router.one/zh/blog/claude-code-vs-codex-cli) 讲了自主性与沙箱的取舍；想要一个不绑定厂商的开源终端 agent，看 [OpenCode vs Claude Code vs Codex CLI](https://router.one/zh/blog/opencode-vs-claude-code-vs-codex-cli)。本文补上剩下的一块：DeepSeek 自家的 Agent 和这两者有什么区别，以及三者怎样共用一个网关。下文的厂商事实都来自各家自己的 README、文档或许可证文件（2026-10-19 核对）；每个工具的完整配置步骤在各自的接入指南里，每一节都给了链接。

## 对照表

|  | DeepSeek Harness（dsh） | Claude Code | Codex CLI |
| --- | --- | --- | --- |
| 出品方与定位 | DeepSeek；基于插件的开源 Agent 框架，日常工作、写代码或搭建自己的 harness 都能用，目前是预览版 | Anthropic；智能体编程工具 | OpenAI；在你电脑本地运行的编程 agent |
| 在哪里运行 | 用 `npx @deepseek-ai/dsh web` 启动的本地 Web UI，以及 macOS（Apple Silicon）、Windows（64 位）桌面版 | 终端、IDE 扩展、桌面应用和网页 | 终端，另有 IDE 扩展、桌面应用和云端的 Codex Web |
| 许可证 | MIT | 专有许可：© Anthropic PBC，使用须遵守 Anthropic 商业服务条款 | Apache-2.0 |
| 连 Router One 用的协议 | 每个提供商选一种：OpenAI Chat Completions、OpenAI Responses 或 Anthropic Messages | Anthropic Messages，由 `ANTHROPIC_BASE_URL` 指定 | Responses：`wire_api = "responses"` 是唯一支持的值 |
| Router One 地址 | 两种 OpenAI 协议填 `https://api.router.one/v1`，Anthropic Messages 填 `https://api.router.one` | `https://api.router.one`（主机根地址，不带 `/v1`） | `https://api.router.one/v1` |
| Router One Key 填在哪 | 「自定义模型 API」提供商的「API 密钥」 | `ANTHROPIC_AUTH_TOKEN` | `env_key` 指定的环境变量 |
| 经 Router One 能用的模型 | Chat Completions 提供商上的全部对话模型；另外两种协议只能用各自提供的系列 | Claude 系列 | `/v1/responses` 上原生提供的 GPT 系列、DeepSeek 与 Grok 对话模型 |

协议这一行决定了模型这一行：dsh 的 Chat Completions 提供商能用上 Router One 目录里的全部对话模型——Claude、GPT、Gemini、Grok 和 DeepSeek——因为 `/v1/chat/completions` 服务所有对话模型；Claude Code 只用 Claude 系列，Codex CLI 则能用 Router One 在 `/v1/responses` 上原生提供的 GPT 系列、DeepSeek 与 Grok 对话模型。

## DeepSeek Harness：DeepSeek 自家的 Agent，三种协议任选

按其 README（2026-10-19 核对），DeepSeek Harness 是由 DeepSeek 开发的开源 agent harness（智能体框架），采用插件化架构（everything-is-a-plugin），由 Cordis 驱动。deepseek.com（同日核对）把它定位为日常工作、写代码或搭建自己的 harness 都能用的工具，标注为预览版、面向全球开放测试，并提供 macOS（Apple Silicon）与 Windows（64 位）桌面版下载；README 称它处于开发者预览阶段，并提示未来会出现破坏兼容性的变更。通过 npm 运行时，它是一个本地 Web UI：`npx @deepseek-ai/dsh web` 默认会在 `http://127.0.0.1:3080` 启动。按其 Web UI 指南，Agent 可以读取和编辑工作区文件、运行命令、委派工作并维护计划；当前权限策略要求审批的操作，Web UI 会先询问你。

它真正不同的地方在于怎样连接模型。按 dsh 的模型配置文档（2026-10-19 核对），「自定义模型 API」适用于中转站、公司网关、自建服务器或已安装目录中不存在的提供商；「API 协议」选择框提供三种：OpenAI Chat Completions、OpenAI Responses 和 Anthropic Messages。一个提供商只使用一种协议，网关同时提供两种时需要建两个提供商。三个工具里，只有 dsh 不绑定某一家厂商的接口格式。

接 Router One：建一个「自定义模型 API」提供商，「API 协议」选 OpenAI Chat Completions，「API 地址」填 `https://api.router.one/v1`，再填入你的 Key，就能用上目录里的全部对话模型。GPT 的 ID 再建一个 OpenAI Responses 提供商：按 OpenAI 的 GPT-6 指南（2026-10-19 核对），GPT-6 Astra 与 GPT-6.1 Sol 的工具调用只走 Responses API，而 Router One 在 `/v1/responses` 上原生提供 GPT 系列模型。想用 Claude 原生消息格式，可以再建一个 Anthropic Messages 提供商，API 地址填主机根地址 `https://api.router.one`。模型 ID 按 [/models](https://router.one/zh/models) 原样填写，例如 `anthropic/claude-sonnet-5`、`openai/gpt-6.1-sol` 或 `deepseek-v4.1-flash`，截至 2026-10-19 的模型目录都列出了它们。表单怎么填、怎样获取模型列表、推理等级怎么设，见 [DeepSeek Harness 接入指南](https://router.one/zh/integrations/deepseek-harness)（按 Web UI 编写）。

**坑在这里：**「设置 → 模型」上的 DeepSeek 卡片放的是 DeepSeek 官方 API 的 Key，不是 Router One 的 Key。按 dsh 文档，DeepSeek 卡片的模型列表默认使用 dsh 自带的 DeepSeek 目录，不会从 API 地址指向的端点获取，所以 Router One 的 Key 请填进「自定义模型 API」提供商，模型 ID 用 /models 上的。

## Claude Code：Anthropic 的编程 agent，走 Anthropic Messages

按 Anthropic 的 Claude Code 概览文档（2026-10-19 核对），Claude Code 是一款智能体编程工具，能读懂你的代码库、编辑文件、执行命令并接入你的开发工具，可以在终端、IDE 扩展、桌面应用和浏览器里使用。它不开源：GitHub 仓库里的许可证文件写的是「© Anthropic PBC. All rights reserved.」，使用须遵守 Anthropic 的商业服务条款。连 Router One 这类网关时，它说的是 Anthropic Messages：按 Anthropic 的网关文档，`ANTHROPIC_BASE_URL` 把它指向网关的 `/v1/messages`，`ANTHROPIC_AUTH_TOKEN` 以 `Authorization: Bearer` 发送凭据。同一份文档写明，让 Claude Code 经任何网关调用非 Claude 模型不在 Anthropic 的支持范围内，所以请让它只用 Claude 系列的 ID。

CLI 接 Router One 就是两个变量：`ANTHROPIC_BASE_URL=https://api.router.one`（主机根地址，不带 `/v1`，Claude Code 会自己拼路径）和 `ANTHROPIC_AUTH_TOKEN`（填你的 Router One Key）。一键脚本会把两者写进 `~/.claude/settings.json` 的 `env` 块，再发一个 1 token 的请求验证 Key。按同一份网关文档，读这些设置的是 CLI：VS Code 扩展从它自己的 `claudeCode.environmentVariables` 设置里读取凭据，桌面应用从自己的第三方推理配置读取网关地址，不读 `ANTHROPIC_BASE_URL` 或 `settings.json`，网页上的云端会话则不走网关。Claude Code 默认请求哪个模型、用套餐时要固定哪些别名，会随 Claude Code 版本变化，最新写法以 [Claude Code 国内接入](https://router.one/zh/claude-code-china) 和 [Claude Code 配置指南](https://router.one/zh/blog/claude-code-setup-guide) 为准。

**坑在这里：** 按 Anthropic 的网关文档，设置了网关凭据变量后，请求会用它代替已保存的 claude.ai 登录，claude.ai 订阅的用量上限不作用于这些请求；只设 `ANTHROPIC_BASE_URL` 而不设凭据，生效的仍是已保存的登录。同一份文档还写明，settings 文件的 `env` 块和 shell 的 export 设了同一个变量时，以 settings 文件为准，所以 `/status` 显示的 base URL 不对时，先查 `~/.claude/settings.json`。

## Codex CLI：OpenAI 的本地编程 agent，走 Responses API

按其 README（openai/codex，2026-10-19 核对），Codex CLI 是 OpenAI 出品、在你电脑本地运行的编程 agent；Codex 另有 IDE 扩展、桌面应用和云端的 Codex Web，仓库采用 Apache-2.0 许可证。连自定义端点时它只说一种协议：按 Codex 的配置参考文档（同日核对），model provider 的 `wire_api` 只支持 `responses` 这一个值（不写时默认也是它），`env_key` 指定提供 API Key 的环境变量。

接 Router One 就是 `~/.codex/config.toml` 里的一个 provider 块（由第一个表头之前的顶层 `model_provider` 选中）：`base_url = "https://api.router.one/v1"`、`wire_api = "responses"`，`env_key` 写存放 Router One Key 的环境变量名。一键脚本会写好配置文件、持久化这个变量并验证 Key。之后 Codex 就能调用 Router One 在 `/v1/responses` 上原生提供的模型：GPT 系列、DeepSeek 与 Grok 对话模型。例外是 Codex cloud：按 Codex 认证文档（2026-10-19 核对），它必须用 ChatGPT 登录。`model` 这一行写什么、套餐和钱包怎么计费，见 [Codex CLI 国内使用](https://router.one/zh/codex-china) 和 [Codex 与 Responses API](https://router.one/zh/codex-responses-api)。

**坑在这里：** Claude 系列 ID 发到 `/v1/responses`，网关会在任何模型运行之前返回 HTTP 400，因为 Router One 在 `/v1/messages` 和 `/v1/chat/completions` 上提供 Claude；要用 Claude，请交给 Claude Code，或放在 dsh 的提供商下。如果 Codex 提示某个模型「is not supported when using Codex with a ChatGPT account」，说明请求走的是 Codex 的 ChatGPT 账号登录，而不是你的 provider 块，见 [Codex 模型不支持报错的修法](https://router.one/zh/codex-model-not-supported)。

## 一把 Key 接三个工具

三个工具都接受同一把以 `sk-` 开头的 Router One Key，区别只在 Key 填在哪里、请求发到哪个端点。网关带来的东西对三者一样：

- **每个工具一个硬上限。** 在控制台 → API 密钥为每个工具单独建一把 Key，各设 `maxSpend` 上限。Agent 的每一轮模型调用都是一个请求，只把工具结果交回模型的那几轮也算，所以长任务可能在你不再输入的情况下产生大量计费请求；Key 到达上限后返回 HTTP 402 并停止，其他 Key 照常可用。
- **三个工具一份日志。** 网关发往模型的每个请求都记录在控制台 → 日志中，包括模型、Token、费用、状态、总耗时和请求 ID（在输出任何内容之前就失败的流式请求可能没有记录）；按 API Key 筛选，就能看到单个工具的花费。
- **同模型故障转移。** 上游返回可重试的 5xx 或超时时，Router One 可以把请求改由另一条提供同一个所请求模型的健康线路重试。它不会换成别的模型，也不是零宕机保证。
- **一个钱包，套餐可选。** 请求按 Token 从钱包扣费，单价见各模型详情页；用 Pro、Max、Ultra 套餐时，各档位列出的模型先扣套餐额度，详见[定价](https://router.one/zh/pricing)。

## 国内使用

在国内，难点不在 DeepSeek Harness 本身，而在 Claude 和 GPT：Claude Code 和 Codex CLI 默认调用 Anthropic 与 OpenAI 的服务，在国内网络上不挂 VPN 都不稳定，计费也默认你有境外卡；dsh 想用这两个系列，也得先有一个能连得上的端点。Router One 的端点国内直连、无需 VPN，一把 Key 同时服务三个工具，dsh 的自定义提供商还能用上目录里的全部对话模型。钱包支持支付宝或银行卡在同一个托管收银台完成充值，也支持 6 条链上的 USDT/USDC（Tron、BSC、以太坊、Polygon、Base、Arbitrum），无需美国信用卡。Router One 只承载模型请求，不分发工具的安装包（Claude Code 和 Codex 的一键脚本在未安装时会通过 npm 或官方安装器安装）：dsh 用 npx 从 npm 仓库运行，或从 deepseek.com 下载桌面版；另外两个工具的国内配置见 [Claude Code 国内接入](https://router.one/zh/claude-code-china) 和 [Codex CLI 国内使用](https://router.one/zh/codex-china)。

## 常见问题

**DeepSeek Harness 和 Claude Code 有什么区别？**
形态相似：两者都在你的机器上运行 Agent，读写文件、执行命令，把每一轮模型调用发给 API。区别在出品方、许可证和协议：Claude Code 是 Anthropic 的编程工具，不开源，连 Router One 这类网关时说的是 Anthropic Messages；DeepSeek Harness 是 DeepSeek 以 MIT 许可证开源的插件式 Agent 框架，目前是预览版，每个自定义提供商可以在 OpenAI Chat Completions、OpenAI Responses 和 Anthropic Messages 中选一种。经 Router One，Claude Code 只用 Claude 模型，而 dsh 通过自定义提供商能用上目录里的全部对话模型：GPT 的 ID 放在 Responses 提供商上，其余放在 Chat Completions 提供商上。

**DeepSeek Harness 和 Codex 是一样的吗？**
不是。Codex CLI 是 OpenAI 以 Apache-2.0 许可证开源的编程 agent，Codex 里的自定义 provider 只说 Responses API（wire_api = "responses"）；DeepSeek Harness 则是 DeepSeek 出品的独立项目，以 MIT 许可证开源，每个提供商可以用三种协议中的任意一种。两者接 Router One 时都可以填 `https://api.router.one/v1`：Codex 写在 config.toml 的 provider 块里并通过 env_key 读 Key，dsh 填在使用任一种 OpenAI 协议的「自定义模型 API」提供商里。

**DeepSeek Harness 能用 Claude 和 GPT 吗？**
能，通过「自定义模型 API」提供商。Router One 在 Chat Completions 上提供全部对话模型，所以一个填了 https://api.router.one/v1 和你的 Key 的提供商，就能用上 /models 里 Claude、GPT、Gemini、Grok 与 DeepSeek 的 ID。GPT 的 ID 放到第二个 OpenAI Responses 提供商；想用 Claude 原生消息格式，再建一个 Anthropic Messages 提供商，API 地址填主机根地址 `https://api.router.one`。完整表单见 [DeepSeek Harness 接入指南](https://router.one/zh/integrations/deepseek-harness)。

**DeepSeek Harness 和 DeepSeek 模型是什么关系？**
DeepSeek Harness 是 Agent，模型是它调用的对象。它的「设置 → 模型」页有连接 DeepSeek 官方 API 的 DeepSeek 卡片、dsh 自带的第三方提供商，以及可接任意网关的「自定义模型 API」提供商。在 Router One 提供商下，目录里的 DeepSeek ID——截至 2026-10-19 的模型目录列出的 deepseek-v4.1-flash 与 deepseek-v4-flash——和其他模型一样用你的 Router One Key 调用；DeepSeek 卡片则仍需 DeepSeek 自己的 API Key。

**需要三把 Key 或三份订阅吗？**
一把 Router One Key 三个工具都能用；分开建 Key，可以由同一个钱包供血，同时给每个工具各设 maxSpend 上限。用 Router One Key 发出的请求不需要厂商订阅：按 Anthropic 的网关文档，Claude Code 用网关凭据代替 claude.ai 登录；Codex 的自定义 provider 从 env_key 指定的变量读 Key；dsh 把 Key 保存在提供商里。想要固定月费，可以选 Router One 自己的 Pro、Max、Ultra 套餐，见[定价](https://router.one/zh/pricing)。

**国内能直连吗？**
能。Router One 在国内可直连、无需 VPN，三个工具都从你的机器直接把模型请求发到 api.router.one，所以配置与其他地区完全一致。钱包支持支付宝或银行卡在同一个托管收银台充值，也支持 6 条链上的 USDT/USDC；Router One 只承载模型请求，不分发工具的安装包。

## 下一步

- DeepSeek Harness 接入：[DeepSeek Harness 接入指南](https://router.one/zh/integrations/deepseek-harness)
- Claude Code：[Claude Code 国内接入](https://router.one/zh/claude-code-china)，或 [Claude Code 配置指南](https://router.one/zh/blog/claude-code-setup-guide)
- Codex CLI：[Codex CLI 国内使用](https://router.one/zh/codex-china)，或 [Codex 与 Responses API](https://router.one/zh/codex-responses-api)
- 更多对比：[Claude Code vs Codex CLI](https://router.one/zh/blog/claude-code-vs-codex-cli)、[OpenCode vs Claude Code vs Codex CLI](https://router.one/zh/blog/opencode-vs-claude-code-vs-codex-cli)、[Goose、OpenCode、Qwen Code、Aider 横评](https://router.one/zh/blog/goose-vs-opencode-vs-qwen-code)
- 所有编程工具走同一个网关：[AI 编程工具统一接入](https://router.one/zh/use-cases/ai-coding-tools)；实时模型与套餐：[模型页](https://router.one/zh/models)、[定价](https://router.one/zh/pricing)

到 [router.one](https://router.one/zh) 建 Key，每个工具一把、各设上限，再用同一个任务把三个工具都跑一遍。

## 相关页面

- 本页规范地址：https://router.one/zh/blog/deepseek-harness-vs-claude-code-vs-codex-cli
- AI 编程工具统一接入：https://router.one/zh/use-cases/ai-coding-tools
- Claude Code 中国：https://router.one/zh/claude-code-china
- 全部博客文章：https://router.one/zh/blog
- 模型与每模型 token 价格：https://router.one/zh/models （markdown：https://router.one/zh/models.md ）
- 定价：https://router.one/zh/pricing
- API 文档（markdown）：https://router.one/zh/docs.md
- 公司事实（markdown）：https://router.one/zh/facts/company.md
