Router One
返回博客

Claude Code vs Codex CLI:终端编码 Agent 按工作流怎么选

发布Router One Team

Claude Code 和 Codex CLI 是 2026 年国内工程师真正会放进候选名单的两个终端编码 agent。远看很像——都活在终端里、读你的仓库、改文件、跑命令——但它们说着不同的协议、够得着不同的模型家族、适配不同的工作方式。这篇是面向日常工程工作的对比,结论按工作流给,不加冕赢家。它还会讲清多数对比文跳过的实操部分:通过一个 Router One 账号同时跑两个工具,一个钱包按量计费,不用同时养两份境外订阅、也不用挂 VPN。

先框定范围:这两个都是终端 agent,不是编辑器。如果你真正的问题是「终端 agent 还是 IDE 里的 AI」,先读 Cursor 对比 Claude Code——本文假设你已经选定了终端。

两个 agent,两种哲学

Claude Code 是 Anthropic 的终端 agent。在仓库里跑 claude,描述任务,它就自己探索代码库——读文件、改文件、跑测试、修失败、继续迭代。它的默认姿态是「先干完活,再给你看 diff」:工具调用边界上会请求许可,但整个产品是为一口气改十几个文件的长时间自主作业设计的。

Codex CLI 是 OpenAI 的终端 agent,两个特质定义了它。第一,它原生说 Responses API 线协议——OpenAI 为 agent 式工具调用设计的新协议,而不是经典的 Chat Completions;这也是为什么很多通用中转接不动它,而实现了 wire_api = "responses" 的网关可以直接用。第二,它的执行模型是沙箱优先:命令默认在沙箱里跑,有明确的审批模式,agent 想越权必须先问。缰绳天生更短。

一句话的诚实总结:Claude Code 为自主性优化,Codex CLI 为可控性优化。哪个「更好」,完全取决于眼前的任务配得上一个代理人,还是需要一个受监督的执行者。

各自真正擅长什么

Claude Code 的长处:

  • 深度多文件 agent 式编辑。 它能把一个计划横跨整个 module 持续执行——动 15-30 个文件的重构、跑测试直到全绿的循环、需要同一个思路处处一致落地的迁移。
  • Hooks 和 skills 生态。 Hooks 在生命周期节点(工具调用前后)触发 shell 命令,skills 把仓库特有的工作流打包成可复用命令,CLAUDE.md 给每个 session 常驻的项目上下文。肯在这里投入的团队,会得到一个像是已经入职过的 agent。
  • 终端原生、编辑器无关。 它在文件系统层操作,Vim、VS Code 都能搭配;review 就用 git diff

Codex CLI 的长处:

  • Responses API 原生。 结构化工具调用和推理摘要是协议里的一等对象,不是叠在 Chat Completions 上的 prompt 约定。
  • 沙箱式执行风格。 审批模式让它在「误删一个目录或者误推一次代码都很贵」的代码库上跑起来更安心,也是更容易交给谨慎同事的那个工具。
  • GPT-5.x Codex 系列模型。 GPT-5.5 是能打的全能选手;GPT-5.3 Codex Spark 为快速、低成本的编码任务专门调优过——小任务上完全是另一个速度档位。

模型边界,先说清楚

这是厂商爱含糊、我们不含糊的部分。通过 Router One,一个账号、一个钱包、一把网关 key 同时服务两个工具——但每个工具只待在自己的模型家族里。

Claude Code 说 Anthropic 协议,走 Router One 的 Anthropic 兼容端点,只能调 Claude 家族:最难的活给 Claude Opus 4.8,日常主力 Claude Sonnet 5,最省钱用 Claude Haiku 4.5。Codex CLI 说 Responses 协议,只能调 GPT 家族:GPT-5.5GPT-5.4GPT-5.4 miniGPT-5.3 Codex Spark。中间没有跨协议的桥——你不能把 Claude Code 指到 GPT-5.5,也不能让 Codex CLI 调 Claude Sonnet 5;任何宣称能做到的网关,描述的都是这两个工具实际不支持的转换层。

真正共享的是调用之外的一切:同一个钱包给两边供血,同一个仪表盘看两边用量,每请求 trace 记下每个工具各花了多少。「一个网关跑两个工具」的实际含义就是这个。

对照表

Claude CodeCodex CLI
厂商AnthropicOpenAI
协议Anthropic MessagesOpenAI Responses(wire_api = "responses"
经 Router One 可调模型Claude Opus 4.8、Claude Sonnet 5、Claude Haiku 4.5GPT-5.5、GPT-5.4、GPT-5.4 mini、GPT-5.3 Codex Spark
执行姿态默认自主,长时间无人值守作业沙箱优先,明确的审批模式
扩展面Hooks、skills、CLAUDE.mdconfig.toml profiles、AGENTS.md
最擅长多文件重构、跑-修-再跑循环边界清晰的任务、谨慎环境、小改动快出手
经 Router One 计费共享钱包按 token 扣费同一个钱包、同一套 trace

通过 Router One 把两个都配好

两边配置各约两分钟,一键安装命令可以全帮你做完。手动配的话,Claude Code 是一对环境变量——base URL 加上你的 key 作为 bearer token:

export ANTHROPIC_BASE_URL=https://api.router.one
export ANTHROPIC_AUTH_TOKEN=sk-your-api-key

Codex CLI 是在 ~/.codex/config.toml 里声明一个自定义 provider,用 env_key 机制——配置里写的是环境变量名,Codex 从那个变量读你的 Router One key:

model = "gpt-5.5"
model_provider = "router"

[model_providers.router]
name = "Router One"
base_url = "https://api.router.one/v1"
wire_api = "responses"
env_key = "ROUTER_ONE_API_KEY"

然后在 shell profile 里 export ROUTER_ONE_API_KEY=sk-your-api-key。两份配置的完整版本(含 Windows)见 CLI 配置指南

成本:一个钱包,而不是两份订阅

原生跑这两个工具,你要维护两个厂商关系:两个计费页面、两种境外支付、两个地方对账。走 Router One,两边都变成对同一个预充值钱包按 token 计费,实际改变了三件事:

  • 两个都试很便宜。 每个工具建一把 key,各设一个 maxSpend 消费硬上限——比如 $10——然后用真实工作各跑一周。key 撞到上限就停,钱包和另一把 key 毫发无伤。
  • 看得见哪个工具烧了什么。 每请求 trace 记录最终模型与 provider、token、花费、延迟和状态(Dashboard → Logs)。一个工具一把 key,「那个花了 $6 的下午是 Claude Code 还是 Codex?」就是一次筛选,不是一次猜测。账本具体记什么,见成本追踪
  • 费率就是公开的 token 价位。 部分模型最低可到官方公示价的 1 折(最高 90% off),实时单价见模型页。想要固定月费的话,钱包之外还有 Pro/Max/Ultra 订阅(见定价)。

一条对两个工具都适用的可靠性说明:当上游出现符合条件的错误——5xx、超时、429 或 529——Router One 可以把请求在提供同一个所请求模型的另一个健康 provider 上重试。不是所有错误都可重试,这也不是零宕机保证;长 agent session 仍应容忍偶发的失败调用,并对重试做有上限的指数退避。

Codex 侧这套账的完整版——为什么一个编码 CLI 根本不需要消费级聊天订阅——见不用 ChatGPT Plus 也能用 Codex CLI

国内使用:这里差异最大

对国内开发者,这一节往往是决定性的。两个工具原生调用的厂商端点,在三大运营商网络上不挂 VPN 都不稳定;两家厂商的计费也都默认你有境外卡。这不是选型差异,是两边一样高的墙。

Router One 把墙整个拆掉:端点大陆直连、无需 VPN;钱包充值走一个托管收银台,支持银行卡或支付宝,也支持六条链上的 USDT/USDC(Tron、BSC、Ethereum、Polygon、Base、Arbitrum),全程不需要美国信用卡。换句话说,国内选 Claude Code 还是 Codex CLI,可以真正回到工作流本身,而不是「哪个的网络和付款我搞得定」。两个工具的国内专属配置页:Claude Code 国内使用Codex CLI 国内使用

常见问题

Claude Code 能通过 Router One 调 GPT 模型吗?Codex CLI 能调 Claude 吗? 不能。每个工具只待在自己的模型家族里:Claude Code 说 Anthropic 协议,只能调 Claude 系模型;Codex CLI 说 OpenAI Responses 协议,只能调 GPT 系模型。两个工具共享的是账号、钱包、key 和每请求 trace,不是模型家族。

能在同一个 Router One 账号上同时跑两个工具吗? 能,这正是推荐的用法。一个钱包给两个工具供血;实操建议是每个工具一把 API key,各设自己的 maxSpend 消费硬上限,这样每请求 trace 能干净地归因哪个工具花了多少。

用这两个 CLI 需要 Claude 订阅或 ChatGPT Plus 吗? 不需要。通过 Router One,两个工具都从预充值钱包按公开的模型费率按 token 扣费,两边都不需要消费级订阅。重度用户也可以选 Router One 自己的 Pro/Max/Ultra 订阅作为固定月费的替代。

怎么知道哪个工具花了多少钱? 每个经 Router One 的请求都有 trace,记录最终模型与 provider、token、花费、延迟和状态,在仪表盘的 Logs 里可见。每个工具用自己的 key 的话,按 key 筛选就能精确拆分各工具的花费,不需要任何估算。

两个工具在国内都能用吗? 指向 Router One 后都能用:端点大陆直连、无需 VPN,钱包通过托管收银台用银行卡或支付宝充值,也支持六条链上的稳定币。国内专属配置指南在 /claude-code-china 和 /codex-china。

结论:按工作流选,不按品牌选

没有该加冕的赢家,硬要加冕的人评的其实是自己的习惯。诚实的映射是:

  • 默认选 Claude Code,如果你的工作以成熟代码库里的多文件改动为主、想把「跑测试-修-再跑」循环整个交出去、或者团队愿意在 hooks、skills 和 CLAUDE.md 上投入来固化自己的规范。
  • 默认选 Codex CLI,如果你看重沙箱优先的执行模型、任务多数边界清晰,或者 GPT-5.x Codex 系列——尤其是 GPT-5.3 Codex Spark 在小改动上的速度——更合你的节奏。
  • 两个都跑,如果条件允许。它们不冲突;一个 Router One 钱包、各一把带上限的 key,这场实验的成本就是 trace 里写的那个数。

router.one 建一把 key,用一键配置命令装上任意一个,让两周真实工作——而不是一张 benchmark 表——替你做决定。

相关权威页面

这篇文章归入「Codex CLI 中国」主题,以下页面作为商业页、配置文档、证据页和信任事实源。

相关阅读