你以为 token 是从你敲下第一句话那一刻开始算的?
错了。
Systima 做了个实测:Claude Code 在读你的 prompt 之前,就已经悄悄塞进去了 3.3 万 token。而做同样的事,OpenCode 只花 7 千。
4.7 倍的差距——活儿还一个字都没干呢。

这 3.3 万 token 到底花哪了?
你可能会问:什么都还没做,怎么就花了这么多?
答案是:在你说话之前,Agent 得先「武装」自己。
系统提示词是第一块大头。Claude Code 的系统指令有 26,891 个字符,约 6.5k token。OpenCode 只有 8,811 字符,约 2k token。前者是后者的三倍多。
请在微信客户端打开
这些指令告诉模型「你是谁、你能干什么、你该怎么表现」。写得越细,token 越多。
工具 schema 是第二块。每个内置工具——读文件、写文件、跑命令、搜索——都要向模型声明自己的参数格式。工具越多、定义越详细,开销越大。
脚手架 是第三块。各种行为约束、输出格式、安全规则……这些「隐形的规矩」全都要占 token。
说白了,这 3.3 万 token 就像你请了个员工,还没派活,光是给他讲公司规章制度、发工牌、配电脑,就先花掉了一笔钱。
真正的大头,是那些「看不见」的乘数
如果只是固定的 3.3 万,那还好说,忍忍就过去了。
问题是——真正吓人的开销,是会被「放大」的那部分。
缓存重写。 理想情况下,重复的前缀内容应该被缓存复用,省钱。OpenCode 做到了——它的请求前缀在整个会话里字节级一致,缓存稳稳命中。但 Claude Code 会在会话中途重写缓存,每次 37,000 到 86,000 token。同样的任务,缓存写入开销能差 5.9 倍到 54 倍。
指令文件。 你那个精心编写的 CLAUDE.md,如果膨胀到 72KB,就意味着每一次请求都要额外背上 2 万 token。不是一次性的——是每次。
MCP 服务器。 挂 5 个 MCP 服务,每次请求要多付 4,900 到 7,000 token。你挂的越多,账单涨得越快。
子代理。 开 2 个 subagent,成本直接乘以 4.2 倍——从 12.1 万 token 飙到 51.3 万 token。
看懂了吗?前面那 3.3 万只是「入场费」。这些乘数才是让账单失控的真凶。

固定开销之上,还有会「翻倍」的隐性乘数
先别急着骂——这钱花得冤吗?
看到这,你可能已经准备卸载 Claude Code 了。
慢着。事情没这么简单。
先说个关键事实: 在基准测试里,这两个工具的任务完成率都是 100%。质量持平,谁也没比谁做得更好或更差。
也就是说,Claude Code 多花的那些 token,买的不是「更好的结果」,而是别的东西。
买了什么?更强的工具集成、更精细的行为控制、更成熟的插件生态。它像一个「全家桶」——重是重了点,但开箱即用,省心。
OpenCode 的低开销也有代价。它模型无关、更灵活、更轻——但很多东西你得自己搭、自己配。它像「自助餐」——便宜灵活,但你得知道自己在干什么。
核心不是「谁更省」,而是——你得知道自己在为什么付钱。
开销不等于浪费。为省心付钱,也是一种合理选择。冤的是那种:你根本没用到那些功能,却在为它们持续买单。
普通人怎么省这笔钱?
如果你确实想把账单压下来,有几个立竿见影的招:
给指令文件瘦身 — 72KB 的 CLAUDE.md 太夸张,砍掉从没生效的废话按需开 MCP 服务器 — 别把所有 MCP 全挂着吃灰谨慎用子代理 — 4.2 倍乘数不是闹着玩的,先想清楚值不值长会话适时清理上下文 — 别让历史记录无限膨胀选对工具 — 重集成选 Claude Code,重成本选 OpenCode
没有最好的工具,只有最适合你场景的工具。
写在最后
token 开销这事,以前几乎没人在意。
反正模型便宜、额度够用,谁会去数 Agent 开机花了多少 token?
但现在不一样了。Agent 越来越强,跑得越来越久,挂的东西越来越多——那些「隐性成本」开始变成实打实的真金白银。
这是一个正在浮现的新课题:当 AI Agent 成为日常工具,管理它的「隐性开销」,会和管理你的云账单一样重要。
工具厂商也该好好想想——在「功能强大」和「开销克制」之间,到底怎么平衡才对得起用户的钱包。

觉得有用?点个「在看」支持一下 👇
你用什么 AI 编程工具?算过月度 token 账单吗?评论区聊聊
夜雨聆风