作者注:OpenCode 2.2.3 新增 Claude Agent provider。本文说明它和 3 月被下架的 OAuth 插件有什么区别,给出 3 步接入方法,并列出 5 个限制,帮你判断要不要接。
10 月 30 日,OpenCode 发布 2.2.3,新增内置 Claude Agent provider。接入方式是:本机装好 Claude Code,跑一次 claude auth login,再到 OpenCode 的 /connect 里选 Claude Agent,就能用自己的 Claude 订阅跑 Claude 模型。@opencode 的官方公告截至 10 月 31 日已有约 51 万次浏览。
这不是 3 月被下架的那套 OAuth。新方案走的是 Claude Code 官方二进制加 Claude Agent SDK。OpenCode 不读取、也不存储你的登录凭据,模型请求由本机的 claude 进程发出。OpenCode 方面称已获得 Anthropic 许可,但 Anthropic 没有单独发布公告。
开发者陈成(@chenchengpro)拆解了具体实现:启动时设置 tools: [] 和 settingSources: [],只放行 mcp__opencode__* 工具。由于 MCP handler 拿不到 tool_use_id,只能靠 PreToolUse hook 一次记录一个,所以并行读文件会变成串行。system prompt 仍然是 Claude Code 自带的,他的判断是“效果肯定不如直接用 Claude Code”。本文给出 3 步接入方法、5 个限制,以及 3 类人分别该怎么选。
说明:本文依据 OpenCode release notes、PR #58782 设计文档、Claude Code 官方文档和社区反馈整理,没有做端到端实测。

OpenCode 用 Claude 订阅:先说结论
结论分三点:能用,但不是旧方案,而且有代价。
- 前提:OpenCode V2 的 2.2.3 及以上版本;Claude Code 装在同一台机器上,并已用
claude auth login登录。 - 它是什么:OpenCode 通过 Claude Agent SDK 调用你本机的
claude进程。它不是 OpenCode 自己实现的 OAuth,不读取 token,也不存储 token。 - 代价:工具调用变成串行;Claude Code 的不少功能用不了;只能在本机运行,不支持 hosted 或 remote 环境。
关于“免费”,需要先说清楚。Claude 免费版不包含 Claude Code,所以不能用这条路。你需要 Pro、Max、Ultra、Team、Enterprise 计划之一,或者 Console 账号。这也不是白嫖:用量仍然从你订阅的 5 小时限额和每周限额里扣,只是 OpenCode 界面上会显示 $0,因为费用已由订阅覆盖。
如果你手上没有订阅,或者团队需要共用一个入口,可以走 API 按量计费,例如通过 API易 apiyi.com 用 OpenAI 兼容接口调用 Claude 模型。这种方式没有本机绑定,也没有订阅额度的限制。
OpenCode Claude 订阅为什么 3 月被下架、10 月又能回来
这件事在 2026 年经历了四个节点:
- 1 月 9 日:Anthropic 收紧对第三方 harness 的限制。当天 OpenCode 出现 issue #7410《Broken Claude Max》,有用户报告 Claude Max 突然报错。
- 2 月 20 日:外媒报道 Anthropic 修改了条款,明确禁止把 OAuth token 用在其他产品中,包括基于 Agent SDK 构建的产品。
- 3 月 19 日:OpenCode 合并 PR #18186《anthropic legal requests》,删除了内置的
opencode-anthropic-auth插件,并从 provider 列表中移除 anthropic。 - 10 月 30 日:OpenCode 2.2.3 带着 Claude Agent 回归,当天的 2.2.4 又加入了引导式配置。

转折出现在条款原文里。Anthropic 法律合规页面 2 月 21 日的 Wayback 存档仍然写着:把 Free、Pro、Max 的 OAuth token 用在任何其他产品、工具或服务中(包括 Agent SDK),都违反 Consumer ToS。到 9 月 30 日的存档,这句话已经删掉,同时新增了一条例外:终端用户可以在未修改的 Claude Code 二进制里用自己的订阅登录,平台托管 Claude Code 的情况也包括在内。10 月的页面保留了这条例外。
OpenCode 的 Claude Agent 正是沿着这条例外设计的。PR #58782 的评论区有人问会不会被封号,作者 Tarquinen 回复称已获得 Anthropic 许可,完全符合 ToS。OpenCode 成员 Daniel Smolsky 也在 X 上发了“We got permission”。不过,截至 10 月 31 日,没有找到 Anthropic 就此发布的单独公告,所以“已获许可”目前是 OpenCode 单方面的说法。
| 维度 | 3 月前的 OAuth 插件 | 10 月的 Claude Agent |
|---|---|---|
| 登录方式 | OpenCode 自己走 claude.ai OAuth,拿到 token | 用户在本机 Claude Code 里执行 claude auth login |
| 谁发请求 | OpenCode 直接调用 Anthropic API | 本机 claude 进程通过 Agent SDK 发出 |
| 读取或存储 token | 插件持有 OAuth token | 不读、不存,/connect 只记录你选了哪种方式 |
| Anthropic 态度 | 2 月条款明确禁止,3 月插件下架 | OpenCode 称已获许可,9 月条款新增例外,无单独公告 |
| 风险 | 有封号和下架风险 | 比 3 月低,但政策可能再变 |
风险需要讲清楚。现行条款保留了“无需事先通知即可执法”的权利,同时仍然禁止第三方收集、存储或中转 Claude 凭据。所以接入时要注意两点:一是别装网上流传的旧版 OAuth 插件;二是不要把账号挂在别人的平台上代跑。
OpenCode Claude Agent 怎么跑:链路与串行原因
整条链路是:OpenCode → Claude Agent SDK → 本机 claude → Anthropic。OpenCode 不站在 Claude Code 和 Anthropic 之间,也不改写请求。claude 可执行文件默认从 PATH 里找,也可以用环境变量 OPENCODE_CLAUDE_PATH 指定路径。

启动时,Claude Code 的很多东西会被关掉或替换。可以归纳为“三关掉、一换掉、一串行”:
- 关掉内置工具:设置
tools: [],Claude Code 自带的读写和 Bash 工具全部不用。 - 关掉用户配置:设置
settingSources: [],不读取~/.claude和项目里的.claude,CLAUDE.md、hooks、skills、MCP servers 也都不加载。 - 只放行 OpenCode 工具:只允许
mcp__opencode__*前缀的工具。Claude 如果调用了别的工具名,会收到No such tool available,OpenCode 不会执行这次调用。 - 换掉工具实现:OpenCode 把自己的工具做成进程内 MCP server,执行时走 OpenCode 自己的权限弹窗。system prompt 用的仍是 Claude Code 自带的那份,外加一句“正在 opencode 里运行”,再叠加你选择的 agent prompt 和 AGENTS.md。
- 工具串行执行:OpenCode 的 tool handler 拿不到 Claude 的
tool_use_id,只能由PreToolUsehook 先记下来再取出。hook 一次只能记一个 ID,所以工具不能标记为可并行。Claude 本来会一次并发读多个文件,到这里就变成逐个读取。

OpenCode 这样设计有它的理由。不管是哪个模型生成的内容,会话历史的格式都一样,切换模型时不会混乱;而且全局只有一套权限系统。代价是 Claude Code 原有的能力被拆掉了不少。陈成的评价是:“这一套下来,感觉效果肯定不如直接用 claude code 好。”这一点在决定接不接之前就要想清楚。
另外还有几个运行细节:每个 session 会起一个长期运行的 claude 进程,空闲 5 分钟后停止,下一条消息到来时恢复;失败的请求由 Claude Code 自己重试,OpenCode 不再重复重试。
OpenCode 接入 Claude 订阅 3 步走
开始之前,先确认以下 5 个前提:
- OpenCode 是 V2 的 2.2.3 及以上版本,不是 V1。
- Claude Code 装在本机。
- Claude 账号是付费计划,或者是 Console 账号。
- OpenCode 和 Claude Code 在同一台机器上。
- 不是 hosted opencode,也不是 remote workspace。
V2 的安装命令是 curl -fsSL https://opencode.ai/v2/install | bash,也可以下载桌面版。
Step 1:安装 Claude Code
会看到什么:终端里执行 claude --version,如果提示找不到命令,说明还没装。
做什么:macOS 和 Linux 使用官方的 install.sh 脚本安装,Windows 在 PowerShell 里运行官方的 install.ps1。如果之前装过但版本较旧,执行 claude update 升级。
怎么判断成功:claude --version 能输出版本号。
Step 2:登录 Claude 账号
会看到什么:执行 claude auth login 后,浏览器会打开 Anthropic 自己的登录页面。
做什么:用你的付费 Claude 账号完成登录,再执行 claude auth status 查看状态。
怎么判断成功:状态里显示的认证方式是订阅登录,而不是 api_key 或 none。
这里有个坑:如果你的 shell 里设置了 ANTHROPIC_API_KEY,Claude Code 可能优先走 API key,变成按量扣费。登录前先执行 unset ANTHROPIC_API_KEY;如果 Claude Code 询问是否使用这个 key,选拒绝。
Step 3:在 OpenCode 里连接 Claude Agent
会看到什么:在 OpenCode 里输入 /connect,会弹出 provider 列表。
做什么:选择 Claude Agent,注意不是“Anthropic”。然后用 /models 选择一个 Claude 模型。2.2.4 及以上版本会有引导流程:帮你复制登录命令、检查安装情况、验证连接,全部通过后再进入模型选择。习惯用命令行的话,也可以用 opencode auth login 完成同样的操作。
怎么判断成功:能在列表里选到 Claude 模型,发一条测试 prompt 能收到回复,并且调用工具时 OpenCode 的权限弹窗正常出现。
排错清单
- 列表里找不到 Claude Agent:执行
opencode --version检查版本,低于 2.2.3 就升级;同时确认装的是 V2。 - 提示找不到 claude:检查
PATH,或者用OPENCODE_CLAUDE_PATH指定claude的绝对路径。 - 反复跳回登录页:有早期用户反馈,连上一两次后掉线,重连时会跳到登录页。社区还在修复,可以先在终端重新执行
claude auth login,再回到/connect。 - 提示到达 plan limit:说明订阅的 5 小时或每周额度用完了,只能等限额重置。
- 远程环境连不上:设计上就不支持,只能在本机使用。
还要提醒一点:OpenCode V1 的 providers 文档里还留着“Anthropic 禁止 Pro/Max”的旧警告,那是 3 月之前的口径。别拿 V1 的 /connect 去找 Claude Agent,它只在 V2 里有。
OpenCode 用 Claude 订阅的 5 个限制
| 限制 | 具体表现 | 对谁影响大 |
|---|---|---|
| 工具串行 | hook 一次只记一个 tool_use_id,并行读文件变成逐个读取 |
大仓库、跨多文件重构 |
| prompt 不是 OpenCode 的 | 用的是 Claude Code 的 system prompt,OpenCode 内置 prompt 不生效 | 依赖 OpenCode 默认 agent 行为的人 |
| Claude Code 功能缺失 | 没有 /usage、auto mode、memory、cloud sessions、agent teams 等 |
重度 Claude Code 用户 |
| 只能本机 | hosted 和 remote 不支持,claude 必须在同一台机器上 |
云端开发、远程团队、CI |
| 参数和插件受限 | 不支持 temperature、top-p、seed、stop 等参数,http.request hook 不运行 |
需要精细调参或走网关的人 |
工具串行:小项目里感觉不明显。但如果一次任务要扫几十个文件,等待时间会明显变长。经常做大范围重构的人,要把这部分时间成本算进去。
prompt 不是 OpenCode 的:自定义 agent prompt 仍然生效,但底层的基础 prompt 是 Claude Code 那份。如果你已经习惯了 OpenCode 内置 agent 的行为方式,切过来后可能会觉得模型的风格有些变化。
功能缺失:这一项影响最大。设计文档列出了 Claude Code 有、而 OpenCode 这边没有的功能,包括 auto mode、ultracode、auto memory、away summaries、cloud sessions、/teleport、agent teams、/loop、computer use、sandboxed Bash、notebook editing,以及内置的 /simplify、/verify 等 skills。
只能本机:Claude 进程空闲 5 分钟后会停止,下一条消息再恢复。在 CI 或远程开发机上不能这样用。
参数和插件受限:采样参数一律不支持。base URL 和 headers 只能从配置文件读取,插件不能按请求修改,http.request 和 http.response 这两个 hook 也不会运行,因为请求是由 Claude Code 发出的。

用量方面还有几点要注意:在 OpenCode 里看不到 Claude 的 /usage;到达限额后不会自动继续;也不能在这里购买额外用量。OpenCode 自己的 /usage 显示的是 OpenCode Console 的用量,和你的 Claude 订阅额度无关。另外,有说法称 claude -p 和 SDK 用户拿到的订阅用量比正常使用 Claude Code 少,但设计文档明确写了“未验证”,目前不能当作事实。
一句话概括:如果你需要 auto mode、memory、cloud sessions、agent teams、computer use 或 notebook editing,直接用 Claude Code。只有当你需要的是 Claude 模型加 OpenCode 的工具和权限体系,并且能接受工具串行执行时,这套方案才值得用。
OpenCode 用 Claude 订阅:谁该用、谁别用

按人群来分,大致是三种情况:
- 已经在用 OpenCode 2.x、有 Claude 订阅、只在本机写代码:值得一试。你可以在同一个 harness 里切换 Claude 和其他模型,不用为 API 单独付费。
- 纯 Claude Code 用户:别折腾。直接用 Claude Code,功能更完整、工具可以并行、prompt 也是原版的。
- 团队、CI、远程开发,或者依赖 auto mode、memory、额度面板的人:别用。这套方案只能在本机运行,功能有缺失,账单也不透明,走 API key 或 API易 apiyi.com 按量计费更合适。
| 方案 | 价格(截至 10-27) | 适合谁 |
|---|---|---|
| Claude Pro | $20/月 | 个人轻度使用,有 5 小时和每周限额 |
| Claude Max / Ultra | $100 / $200 每月 | 重度个人用户 |
| OpenCode 客户端 | 免费开源 | 所有人 |
| OpenCode Go(可选) | $10/月 | 需要 OpenCode 托管模型的人,不是使用 Claude Agent 的前提 |
| API易 Claude Opus 5.5 | 输入 $4 / 输出 $20 | 团队共用、CI、需要清晰账单 |
| API易 Claude Sonnet 5.5 / Haiku 5.5 | $2/$10、$0.1/$0.5 | 日常编码、批量任务 |
表中 API易 的价格单位都是每百万 tokens,缓存读取另外计价。
💰 按量方案建议:没有订阅、需要团队共用、或者要把每一笔费用算清楚的,可以使用 API易 apiyi.com。它同时提供
messages端点(Anthropic 原生格式)和chat端点(OpenAI 兼容格式),base_url 填https://api.apiyi.com/v1。型号与价格以平台型号列表为准。
常见问题 FAQ
Q1:OpenCode 用 Claude 订阅会被封号吗?
风险比 3 月低:新方案走的是官方二进制,OpenCode 不读取 token,也符合 9 月条款新增的例外。但“已获许可”是 OpenCode 的说法,Anthropic 没有单独公告,并且保留不提前通知的执法权。不要用旧的 OAuth 插件。
Q2:为什么在 /connect 里找不到 Claude Agent?
大多是版本问题:要么低于 2.2.3,要么还在用 V1。升级到 V2 的最新版本后,在 `/connect` 里找“Claude Agent”,不是“Anthropic”。
Q3:OpenCode 显示费用 $0,是真的免费吗?
不是。显示 $0 只是因为费用已由订阅覆盖,实际用量仍然扣你订阅的 5 小时和每周额度。如果走的是 API key,OpenCode 会按 models.dev 上的价格显示费用。
Q4:能在远程开发机或云端使用吗?
不能。`claude` 必须和 OpenCode 装在同一台机器上,hosted 和 remote workspace 都不支持。云端或 CI 场景建议使用 API key,或者通过 API易 apiyi.com 按量调用。
Q5:订阅接入和 API key 相比怎么选?
订阅接入适合个人在本机使用,前提是已经付了订阅费。API key 不绑定机器,可以多人共用,账单清晰,也不受订阅限额影响。如果想同时对比 Claude 和其他模型,API易 apiyi.com 用一个 Key 就能完成切换测试。
Q6:Claude 免费版能用吗?
不能。免费版不包含 Claude Code,至少需要 Pro 计划,或者 Team、Enterprise、Console 账号。
总结:OpenCode 用 Claude 订阅的 3 句话
能接:OpenCode 2.2.3 及以上版本通过官方 Agent SDK 调用本机 claude,OpenCode 称已获 Anthropic 许可,但政策仍可能变化。怎么接:先装 Claude Code,再执行 claude auth login,最后在 /connect 里选 Claude Agent。什么时候别接:需要并行工具、Claude Code 完整功能、远程或团队使用时,直接用 Claude Code,或者通过 API易 apiyi.com 按量调用 Claude。
作者:API易 技术团队
技术交流:Claude 模型的接入问题,可以在 API易 apiyi.com 首页联系我们,更多文档见 docs.apiyi.com。
