网易首页 > 网易号 > 正文 申请入驻

一个字的提示词,先烧掉两万token:四款编程CLI基线实测

0
分享至

在空仓库里敲下一个"ping",模型还没开始干活,账单已经先跑起来了。OpenAI 的 codex exec --json 文档里给了一行示例:24,763 个输入 token,其中 24,448 个命中缓存,输出只有 122 个 token。文档没说这行示例背后是什么提示词。不管它是什么,模型大约每写一个 token,就要先读进去 200 个。


这不是个例。每个编程 agent 的命令行工具,在你的任务开口之前,都会先发一段前缀:它自己的系统提示词、内置工具的定义、你配置的 MCP 服务器的工具、以及它沿途找到的每一个指令文件。新会话会重发这段前缀,CI 里的每一次无头运行也会。

所以别抄任何人的数字,包括上面那两行。前缀会随 CLI 版本、模型、你的全局配置和启动目录一起变。要测就自己测:用一个单词的提示词,分别跑 Claude Code、Codex、GitHub Copilot CLI 和 OpenCode,然后再加一个 MCP 服务器和一个 AGENTS.md 跑一遍。表里的每个数字都该来自你自己的机器。

前缀里到底装了什么

系统提示词和内置工具归厂商管,MCP 服务器和指令文件归你管。这两类东西在不同 CLI 里的行为并不一致。

Claude Code 默认推迟加载 MCP 工具定义,其 MCP 文档的说法是"会话启动时只加载工具名和服务器说明"。OpenCode 的文档则给出相反的警告:一个 MCP 服务器"会增加上下文",有些服务器比如 GitHub MCP server"往往会加进大量 token"。Copilot CLI 内置了 GitHub MCP 服务器。Codex 的 MCP 页面没有说明是否推迟加载——这又多了一个必须实测的理由。

指令文件是"空"提示词不再空的地方。每个 CLI 读的文件都比它自己的多:没有全局 OpenCode 文件时,你个人的 ~/.claude/CLAUDE.md 也会跟着进 OpenCode;仓库里的 CLAUDE.md 除了进 Claude,也会落进 Copilot CLI 的前缀。

第一轮:一个词,四个 CLI

先在一个空的 git 仓库里开始,免得项目文件混进来。全局文件仍然会加载,这正是重点:这就是你今天要付的基线。Claude Code 和 OpenCode 还会搜索父目录,所以确认 ~ 和 ~/tmp 下没有 CLAUDE.md 或 AGENTS.md;Codex 到 git 根目录就停。

Claude Code 用 --output-format json 会返回 usage、total_cost_usd 和按模型拆分的 modelUsage。这个成本是客户端估算,不是你的账单。读 usage 时要注意:在 Anthropic 的 usage 对象里,input_tokens 只统计最后一个缓存断点之后的部分,完整输入是 input_tokens、cache_creation_input_tokens、cache_read_input_tokens 三项之和。只看 input_tokens,基线会显得很小。另外检查 .num_turns:如果 agent 为了回答 ping 跑了一次工具,usage 就覆盖了不止一次模型请求,前缀会被重复计入。想要一个不含 hooks、插件、MCP 服务器和 CLAUDE.md 的下限,加 --bare,但它需要 ANTHROPIC_API_KEY,因为 bare 模式会跳过订阅登录。

Codex 的 codex exec --json 输出 JSONL,turn.completed 事件里带 input_tokens、cached_input_tokens、output_tokens 和 reasoning_output_tokens。这里缓存数包含在输入数里:OpenAI 的缓存说明是从 input 里减去 cached 得到未缓存部分。所以只要这一轮只调了一次模型,input_tokens 就是你的前缀加那个单词。

Copilot CLI 的编程参考文档写了 --output-format json,但没写 usage 字段。它的 -s 标志会抑制统计,所以别加,统计会在回复后打印。GitHub 的更新日志说 /usage 和会话结束时打印的摘要都包含"按模型拆分的 token 用量"。想看分层拆分,启动 copilot 输入 /context,它会分别列出 System Prompt、Custom Instructions、System Tools、MCP Tools 和 Messages。

OpenCode 的 opencode run --format json 输出原始 JSON 事件,每一步的 token 记为 input、output、reasoning 和 cache.read/cache.write。在一个提交到 OpenCode 追踪器的会话里,存储的步骤显示 input 209、cache read 18,944,所以要把缓存字段加到 input 上。如果 step_finish 什么都没打印,你可能在用 v2 构建,它不会把 step_finish 送到 stdout;改用 opencode stats --days 1 从存储的会话里读用量。

每条命令在几分钟内跑两次。第一次倾向于把前缀写进缓存,第二次读回来。在 Claude 模型上,缓存读取按输入费率的 0.1 倍或更低计费,所以冷的首次会话比热的重复会话更贵。

第二轮:一个 MCP 服务器加一个 AGENTS.md

现在加上大多数仓库最先长出来的两样东西。MCP 服务器用参考实现"everything"服务器,它的 README 自称"面向 MCP 客户端构建者的测试服务器"。记忆文件写一个简短的 AGENTS.md,更好的做法是从工作仓库里拷一个。在这个仓库里四个 CLI 都会读它,因为这里和上层都没有 CLAUDE.md(Claude Code 需要 v2.1.277 或更高版本才支持这一点)。

Claude Code 这边,默认推迟加载的情况下跑一次,再用 ENABLE_TOOL_SEARCH=false 让所有 MCP 工具提前加载跑一次,两个文件的差值就是一个服务器的工具定义在每次新会话里的价格。Codex 用 codex mcp add 注册服务器后重跑第一轮命令,完事把 [mcp_servers.everything] 从 ~/.codex/config.toml 删掉。Copilot CLI 用 /mcp add 添加,或在 ~/.copilot/mcp-config.json 里放同样的 mcpServers 块并标 "type": "local",重跑后看 /context 里 MCP Tools 那一行变大。OpenCode 把服务器写进仓库的 opencode.json 再重跑。

把差值换算成钱

第一轮和第二轮之间的差距,就是一个 MCP 服务器加一个记忆文件给每次会话启动增加的量。按你账单的方式乘:前缀 token 数,乘以每天的新会话数,乘以模型的输入或缓存写入费率,再加上之后每一次重发前缀的轮次的缓存读取。无头运行要算,并行 agent 也要算。Claude Code 的文档说 agent-team 的队友会"自动加载 CLAUDE.md、MCP 服务器和技能"。

怎么变成钱取决于套餐。在 Claude Pro 或 Max 订阅上,/usage 里的美元数字"与计费无关",但 token 仍然消耗你的套餐额度。Copilot 的套餐在 2026 年 6 月 1 日转向 GitHub AI Credits,"根据 token 消耗计算,包括输入、输出和缓存 token";年度 Pro 和 Pro+ 套餐在到期前仍走 premium requests。用 API key 的话,每个 token 都计费。

如果差值让你意外,修法很无聊:把特定工作流的指令从 CLAUDE.md 挪到按需加载的技能里,把 CLAUDE.md 控制在 200 行以内;关掉不用的 MCP 服务器;检查全局文件,因为它们会跟着进每一个仓库。

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
特朗普宣布暂缓实施新一轮对俄制裁

特朗普宣布暂缓实施新一轮对俄制裁

新京报
2026-10-17 10:46:05
晚年苦不苦,就看六十三,人到了63岁,你一定要准备好这5张底

晚年苦不苦,就看六十三,人到了63岁,你一定要准备好这5张底

愿你余生安好嘴角带笑
2026-10-16 22:00:32
89年戈尔巴乔夫访问中国,邓小平特别交代:会面时只握手不拥抱

89年戈尔巴乔夫访问中国,邓小平特别交代:会面时只握手不拥抱

大运河时空
2026-10-18 12:20:05
润人徐思远放狠话:已把袁腾飞的言论举报给FBI和美国移民局,对方绿卡不保?

润人徐思远放狠话:已把袁腾飞的言论举报给FBI和美国移民局,对方绿卡不保?

小徐讲八卦
2026-10-18 12:06:23
必须警惕“蔡正元现象”在大陆的泛滥

必须警惕“蔡正元现象”在大陆的泛滥

游文刀
2026-10-17 23:39:34
战友女儿出嫁我随6万,我儿子结婚他转61,5年后快递让我清醒。

战友女儿出嫁我随6万,我儿子结婚他转61,5年后快递让我清醒。

朗威谈星座
2026-10-18 10:48:46
这幅丑书曾卖出4个亿,通篇杀气腾腾,把王羲之都比下去了——黄庭坚草书《砥柱铭》

这幅丑书曾卖出4个亿,通篇杀气腾腾,把王羲之都比下去了——黄庭坚草书《砥柱铭》

幸福娃3790
2026-10-07 12:39:20
生日当天被丈夫羞辱?百亿千金林恬儿已走离婚程序,谢玲玲支招

生日当天被丈夫羞辱?百亿千金林恬儿已走离婚程序,谢玲玲支招

仙味少女心
2026-10-17 23:49:08
懂车帝也太刚了!

懂车帝也太刚了!

胖胖说他不胖
2026-10-09 15:08:05
画面不堪入目,地下人奶交易乱象,成年人躺进怀里吃奶的灰色黑产

画面不堪入目,地下人奶交易乱象,成年人躺进怀里吃奶的灰色黑产

易玄
2026-09-12 10:24:46
雅思停考风波背后:巅峰时内地一天7万人次考试,主办方近5财年累计净亏损1.84亿英镑,欲以藏品抵债!

雅思停考风波背后:巅峰时内地一天7万人次考试,主办方近5财年累计净亏损1.84亿英镑,欲以藏品抵债!

每日经济新闻
2026-10-15 14:59:23
张继科劝大家少接触刘丁硕!后者3大争议曝光:嘲讽樊振东 拒绝道歉

张继科劝大家少接触刘丁硕!后者3大争议曝光:嘲讽樊振东 拒绝道歉

念洲
2026-10-17 19:29:46
荒唐网暴!林诗栋母亲餐馆排骨数量不够?真相曝光:夺冠后被粉丝造谣

荒唐网暴!林诗栋母亲餐馆排骨数量不够?真相曝光:夺冠后被粉丝造谣

念洲
2026-10-18 08:25:52
劝告所有子女:再孝顺,也不要为年过80岁的老父老母,做这五件事

劝告所有子女:再孝顺,也不要为年过80岁的老父老母,做这五件事

枫红染山径
2026-10-06 11:26:52
毛主席脱鞋休息照片,留意他脚上那双袜子,不知穿了多少年?

毛主席脱鞋休息照片,留意他脚上那双袜子,不知穿了多少年?

南书房
2026-10-17 17:15:13
真能飞的特斯拉刷屏了!马斯克很实在:"如果安全是你的首要目标,那就别买"

真能飞的特斯拉刷屏了!马斯克很实在:"如果安全是你的首要目标,那就别买"

起点财经
2026-10-16 17:31:53
大阪街头埃尔法贴着:车内有中国人……

大阪街头埃尔法贴着:车内有中国人……

日本物语
2026-09-12 20:36:48
成都宝妈打人后续!受害者缝18针,鼻骨打歪,曹某婚姻破裂已摆烂

成都宝妈打人后续!受害者缝18针,鼻骨打歪,曹某婚姻破裂已摆烂

陶寻爱说
2026-10-17 22:19:51
美媒眼馋:中国造出了美国人喜欢的车,却不是给美国的

美媒眼馋:中国造出了美国人喜欢的车,却不是给美国的

观察者网
2026-10-15 20:04:24
谢贤前女友Coco直播被说丑,本人回应:“姐都40岁了,把头发往下一放还是迷倒一大片的”

谢贤前女友Coco直播被说丑,本人回应:“姐都40岁了,把头发往下一放还是迷倒一大片的”

韩小娱
2026-09-04 05:54:22
2026-10-18 13:16:49
像素与芯片
像素与芯片
有态度网友ytd
218文章数 80关注度
往期回顾 全部

科技要闻

王江舟院士:6G到底是不是骗局 是不是收割

头条要闻

男子100多万买的车3年修几十次 最严重时高速直接熄火

头条要闻

男子100多万买的车3年修几十次 最严重时高速直接熄火

体育要闻

升级版杨瀚森再闯难关:当上开拓者第三中锋还得拼

娱乐要闻

曝郭麒麟与25岁知名女星已经结婚,女方回应关系

财经要闻

马斯克:美债问题只能靠AI和机器人解决

汽车要闻

星瑞L PLUS限时售价10.97万元起 开启智混3L时代

态度原创

家居
数码
本地
健康
公开课

家居要闻

2026建博会(广州) 公装联探展交流活动

数码要闻

联想P7 AI主机1024开启预约:此芯P1 SoC + 后摩M50 dNPU方案

本地新闻

因新荣记出圈,这座浙东小城才是吃货天堂

看着很健康的人,怎么会突然猝死?

公开课

李玫瑾:为什么性格比能力更重要?

无障碍浏览 进入关怀版