如果你已经在为 Claude 订阅付费,那么继续用 Claude Code 是合乎情理的默认选择;只有当你需要 Anthropic 无法提供的模型或供应商时,才应该转向 OpenCode。
这两款工具迭代很快,因此具体细节很快就会过时。本文聚焦于那个不会过时的核心差异,并把变动频繁的数据集中放在靠后的章节。先声明一句:OpenReplay 卖的是 session replay,对这两款工具都没有任何利益关联。如果你想看逐项功能对比,我们此前的 OpenAI Codex 与 Claude Code 对比一文覆盖了那部分内容。
关键要点
- OpenCode 是由 Anomaly 维护的、采用 MIT 许可证、与供应商无关的编码 agent;Claude Code 是 Anthropic 的第一方 agent,只能运行 Claude 模型。
- 两者都支持 MCP,也都接受用 markdown 定义的 skills 和 subagents,因此你已经搭建好的集成可以随你迁移,不会成为选择时的顾虑。
- 当项目中不存在 AGENTS.md 时,OpenCode 会读取已有的 CLAUDE.md,所以在一个 Claude Code 项目上试用它的成本,只是一次安装加一个真实任务。
- 如果 Claude 订阅已经覆盖了你的用量,就继续用 Claude Code;如果你需要本地模型、更便宜的常规任务模型,或者一个不会在你脚下悄悄变动的固定模型,就转向 OpenCode。
OpenCode 与 Claude Code 之间唯一重要的差异
OpenCode 是一个采用 MIT 许可证的开源编码 agent,可以运行在你所配置的任意模型供应商之上;Claude Code 则是 Anthropic 自家的 agent,只能运行 Claude 模型。两者之间的其他所有差异——价格、终端里的行为方式、扩展机制——都源自这一个结构性事实,而这也是本对比中唯一在六个月后依然成立的部分。
其余内容都会过期。模型阵容、套餐价格、默认模型以及双方的功能开关每个月都在变,因此它们都被集中放在靠后的一个章节里。关于 OpenCode 的基础内容(安装、Plan 与 Build 模式、供应商配置),可参阅我们的 OpenCode 入门文章;这里不再赘述。
这一差异对成本意味着什么?
成本问题的关键不在于哪款工具的标价更低,而在于你是在为一个捆绑了模型的订阅付费,还是持有可以指向任何地方的供应商密钥。使用 Claude Code 时,模型访问权包含在 Anthropic 订阅之中,你在终端里的用量与套餐内其他一切共用同一额度池,在触及上限之前月度账单是固定的。使用 OpenCode 时,工具本身免费,你的成本取决于背后的供应商收费方式:通过自己的密钥按 token 计费的 API,或者 OpenCode 可选的付费产品之一——一个按量付费的 gateway,以及一个面向开放权重模型的固定月费档位。
这两种形态适合不同的使用曲线。捆绑式订阅回报的是对某一家厂商模型的高强度、稳定使用。自带密钥则回报路由策略:难题用贵模型,杂活用便宜模型。而通过 OpenCode 运行本地模型可以彻底消除按 token 的成本,但这并不等于免费;你是在用硬件、电费,以及通常更小的模型,去换掉一张 API 账单。
这一差异在终端的日常使用中意味着什么?
在日常使用中,这两款工具的相似程度超过任何对比文章愿意承认的:两者都提供 TUI,都会在写文件和执行 shell 命令前请求确认,都会从仓库中读取记忆文件,也都会在上下文窗口填满时压缩会话。提示、审阅 diff、批准这一工作循环,在两者中是同一套肌肉记忆。
不对称之处在记忆文件上,并且带来了一个实际影响。Claude Code 读取 CLAUDE.md;如果你的仓库统一使用 AGENTS.md,Anthropic 给出了一行式的桥接方案——在 CLAUDE.md 中写入 @AGENTS.md 来导入它。OpenCode 原生读取 AGENTS.md,但在不存在 AGENTS.md 时会回退到已有的 CLAUDE.md,同时也会读取 ~/.claude/CLAUDE.md 和 ~/.claude/skills/。
这一回退机制意味着,解决这个问题最省事的方式就是自己跑一遍实验:
curl -fsSL https://opencode.ai/install | bash
cd your-project # one that already has a CLAUDE.md
opencode
从你的待办清单里挑一个真实任务交给它。OpenCode 会接手 Claude Code 已经在用的项目上下文,所以这次试用的成本只是一次安装和几分钟时间,而不是一场迁移。
这一差异对可扩展性意味着什么?
你要在两者之间做的选择,并不涉及你的集成。两款工具都支持 Model Context Protocol,都接受用 markdown 定义的 skills,也都能把任务委派给拥有各自上下文和权限的 subagents,因此你已经构建好的 MCP servers、skills 和 agent 定义在任一方向上都能随你迁移。
真正不同的是打包方式。Claude Code 通过第一方 plugins 和 marketplaces 分发扩展:基于 manifest 的打包体,可以携带 subagents、hooks、skills 和 MCP server 配置,并且可以在工具内部完成安装。OpenCode 的 plugins 则是 JavaScript 或 TypeScript 模块,从本地目录或 npm 加载,并可挂载到工具执行、会话压缩等生命周期事件的 hooks 上。一个是应用商店,另一个是模块系统。如果你想要”安装”式的可扩展性,Claude Code 的模式更加打磨完善;如果你想对这套框架本身进行编程,OpenCode 向你暴露的部分更多。
现状:模型、定价与使用形态
本节中的所有内容都具有时效性;在依据其中任何一项做决定前,请先查看所链接的厂商页面。
| Claude Code | OpenCode | |
|---|---|---|
| 模型 | Fable 5.1、Fable 5、Opus 5、Sonnet 5、Haiku 4.5;Max/Enterprise 层级账户默认使用 Opus 5,Pro 默认使用 Sonnet 5 | 75+ 家供应商,包括通过 Ollama、llama.cpp 和 LM Studio 运行的本地模型 |
| 定价 | 包含在所有付费 Claude 套餐中:Pro 20 美元/月,Max 从 100 美元/月起(5 倍或 20 倍用量),用量在各使用形态间共享 | 工具免费;可选的 Zen 按量付费 gateway 以及面向开放权重模型的 Go,10 美元/月 |
| 使用形态 | 终端、VS Code 与 Cursor 扩展、JetBrains 插件、独立桌面应用、Web、移动端 | 终端 TUI、beta 版桌面应用、IDE 扩展 |
有两点需要特别说明。OpenCode 的供应商页面指出,Anthropic 禁止在第三方工具中使用 Claude Pro/Max 订阅,并且 OpenCode 自 v1.3.0 起不再捆绑相关插件,因此在 OpenCode 中使用 Claude 模型意味着按 API 费率计费。此外,OpenCode 正在推进中的 V2 文档取消了 CLAUDE.md 回退机制,只保留 AGENTS.md,这会让上文所述的试用成本从零上升到一个文件。
你该选哪个:OpenCode 还是 Claude Code?
如果你已经在为 Claude 订阅付费,并且希望有一款工具能贯穿终端、编辑器和桌面端,那就继续用 Claude Code。你已经预付了前沿模型的费用,这款工具能在你工作的每一种形态上与你对接,而 OpenCode 的灵活性并不值得你为已经拥有的模型访问权再付一次钱。
当你需要 Claude Code 在结构上无法提供的东西时,就转向 OpenCode:出于隐私或合规考虑的本地或开放权重模型、用于常规工作的更廉价模型,或者一个不会在版本更新之间悄悄变化的固定”模型 + 供应商”组合。这些都是供应商层面的需求,而供应商选择正是 Claude Code 永远不会参与竞争的那一个维度。
结构性事实决定了结论:在运行 Claude 模型这件事上,Claude Code 是更好的产品;而在两者之中,只有 OpenCode 能运行其他任何模型。把工具与你的供应商状况匹配起来吧——既然你的 MCP servers 和 skills 在两个方向上都能通行,这个决定日后重新评估的成本很低。本周就在一个真实任务上跑一遍上面那三条命令,你自然就知道自己该站在哪一边。
常见问题
哪些付费 AI 订阅可以配合 OpenCode 使用?
OpenCode 的供应商文档列出了 ChatGPT Plus、GitHub Copilot 和 GitLab Duo,这些订阅可以直接登录使用,无需额外配置。Claude Pro 和 Max 订阅则不行:OpenCode 的文档指出,Anthropic 禁止在第三方工具中使用订阅,并且 OpenCode 自 v1.3.0 起不再捆绑相关插件。因此在 OpenCode 中运行 Claude 模型需要一个按 token 计费的 Anthropic API key。
我可以在同一个仓库中同时使用 OpenCode 和 Claude Code 吗?
可以,两者之间不存在冲突。在 OpenCode 当前的 v1.x 版本中,当不存在 AGENTS.md 时它会读取项目的 CLAUDE.md,因此两款工具共享同一套项目指令。如果你维护的是原生的 AGENTS.md,那就保留一个只包含 @AGENTS.md 这一行的 CLAUDE.md,让 Claude Code 导入它。如果这个回退机制对你造成困扰,设置 OPENCODE_DISABLE_CLAUDE_CODE=1,OpenCode 就会完全忽略 .claude 相关文件。
使用 Claude Code 需要 Claude 订阅吗?
不需要。Claude Code 也可以运行在按量付费的 Anthropic API 计费方式上,此时按 token 计费,而不是从订阅额度池中扣减;在 API 账户上它默认使用 Opus 5。它包含在从 Pro(20 美元/月)起的每一个付费 Claude 套餐中,这也正是账单保持固定的原因。独立桌面应用是个例外,需要付费订阅。