AI 编程助手跑一个任务要烧多少 Token,已经不是小钱。Claude Code 用 Sonnet 4.6 跑一次 Bug 修复(累计输入 40 万 Token、缓存命中 75%)约 0.54 美元,做一个功能实现约 2.28 美元;如果换成 GPT-5.5,单次功能实现涨到 3.7 美元。一个每天修 5 个 Bug、做 2 个功能的开发者,单在 Claude Code 上每月要花 145 到 236 美元。
更麻烦的是,这笔钱里有相当大一部分并没有花在"写代码"上,而是花在让智能体反复熟悉你的代码库:grep 关键词、cat 文件、沿着 import 追踪、退回来、再试一次。NanoNets 开源的 Graft 想解决的就是这个问题——但它不是唯一选项,更不是所有场景下的首选。当前降低 AI 编码 Token 消耗的方案已经分化成多条路线,本文从"免费优先"的角度,把主流路线摆到一起对比,帮你按自己的仓库规模和预算做选择。
为什么省 Token 是个工程问题
大模型处理上下文是无状态的:每一步推理,都要把前面的整个对话历史重新附加到 prompt 上。加上工具描述(每个 200-500 Token)、完整文件读取、模型自身的冗长输出,一个中等任务在大型代码库上轻松突破几十万 Token。
各家编码智能体的计价结构高度一致——以 Cursor 官方公布的价格为例:
|
模型 |
输入(每百万 Token) |
缓存读取 |
输出 |
|---|---|---|---|
|
Claude 4.6 Sonnet |
3 美元 |
0.3 美元 |
15 美元 |
|
Claude Opus 4.8 |
5 美元 |
0.5 美元 |
25 美元 |
|
GPT-5.3 Codex |
1.75 美元 |
0.175 美元 |
14 美元 |
|
Gemini 3.1 Pro |
2 美元 |
0.2 美元 |
12 美元 |
注:数据来源 Cursor 官方文档。
两个关键事实:
-
输出 Token 比输入贵 4 到 5 倍。让模型重写整个文件,远比让它输出一个 diff 昂贵。
-
缓存命中的输入只有原价的 10% 左右(如 Claude 缓存读取 0.3 美元 vs 输入 3 美元)。所以"让前缀稳定"本身就是最大的杠杆。
理解了这两点,就能看懂下面所有工具在省什么。
免费优先:五条省 Token 路线对比
当前降低 AI 编码 Token 消耗的方案,按省 Token 的环节可以分成五类。每一类下都有免费或开源的代表工具。
路线一:零成本的"使用习惯"优化(免费,无需装任何工具)
不改变工具,只改变用法,往往就能砍掉 30%-50% 的浪费:
-
善用 prompt caching:Anthropic、OpenAI 都对前缀匹配的缓存输入打 1 折。Claude Code 已自动标记断点;关键是别让前缀失效——超过 5 分钟没动、频繁切模型都会触发昂贵重建。
-
任务切换就开新会话:别在超长会话里硬续。
-
精确投喂而非漫读:Cursor 用
@file、@symbol精确指定;Claude Code 用/compact压缩陈旧上下文。 -
用项目规则文件固化约定:把团队规范写进
CLAUDE.md、AGENTS.md、.cursorrules,每轮不用复述。
这条路不花一分钱,却是"单模型会话"场景下杠杆最大的优化。
路线二:仓库打包与一次性摘要(免费开源)
适合"我要把一个仓库扔给 Cursor/ChatGPT/Claude 做分析"的场景:
-
Repomix(yamadashy/repomix,MIT 协议):一行
npx repomix把任意仓库打包成 AI 友好文件。--compress用 Tree-sitter 提取函数/类/接口等关键结构,--token-count-tree找出 Token 大户,--token-budget限制输出大小,可移除注释和空行。内置 Secretlint 防密钥泄露,原生支持 MCP server,Claude Code / Cursor / Cline 可直接调用。体积减少约 70%。 -
Gitingest(coderamp-labs/gitingest,MIT 协议):把 Git 仓库转成 prompt-friendly 文本摘要,输出目录结构、提取大小、Token count,可作为 CLI 或 Python 包使用。支持 include/exclude 模式与文件大小阈值(默认 50KB),公有仓库免费使用,私有仓库通过个人访问令牌临时克隆、用后丢弃。
两者都免费开源,适合一次性任务,不适合"智能体在会话里反复探索"的动态场景。选型上,临时让 AI 看一个小仓库优先用 Repomix;想先估一下仓库多大、会吃多少上下文,Gitingest 更顺手。
路线三:代码库语义检索与符号级理解(免费开源)
-
Continue.dev:开源编码助手(Apache 2.0),IDE 扩展支持 VS Code 和 JetBrains,2026 年 5 月跨过 250 万次 VS Code 安装、33000 GitHub stars。自带 API key 或本地模型(Ollama)按 provider 原价计费,Cursor Pro 不让你调模型层级,Continue 可以让 Qwen2.5-Coder 7B 本地跑补全、Sonnet 跑 Chat,成本可控。它的
@codebase用 embedding 做检索式上下文拉取,只把相关片段送进模型。适合已经用 Continue 或在 IDE 里想要开源方案的用户。 -
Serena MCP(oraios/serena):通过 MCP 接入 Cursor/Claude/Codex,基于 LSP 做符号级理解,大项目里少读文件、少浪费 Token。
这条路线的优势是"按需检索",与代码库图谱的思路相近,但更轻——不需要预先构建完整图。
路线四:输出压缩(免费开源,只省输出 Token)
-
Caveman:面向 Claude Code、Cursor 等 AI 编程助手的轻量级开源插件,核心原理是强制模型采用"极简表达",剔除冗余词汇。社区实测平均节省 65% 输出 Token,最高到 87%,技术准确率 100%;举一个具体对比,普通 Claude 回答 React 重渲染问题要 69 Token(含"我来帮你看"等套话),Caveman 模式下仅需 19 Token 直接给原因和方案。支持 30+ AI 工具,安装后自动生效。支持
/caveman lite/full/ultra强度切换,一条命令安装。
这条路只省输出,不省输入,但安装成本极低、对所有主流编码智能体生效,是个人开发者性价比最高的起点。
路线五:代码库上下文图谱(开源,但深度构建需消耗 Token)
-
Graft(NanoNets/Graft,MIT 协议,无遥测):给代码库建一张"认知地图"。它用 tree-sitter 做零成本的结构层解析,再调用你指定的模型为每个源文件写摘要,生成"Summary(人话摘要)+ Crux(承载逻辑的关键代码)+ Sources(来源文件 + 哈希)+ Links(带类型 wikilinks)+ Notes(你自己写的备注)"的节点。
Graft 官方公布的 162 次受控基准(同一个 Claude Sonnet 智能体、同样的文件工具,只有上下文不同):
|
指标 |
Cold(无 Graft) |
使用 Graft |
变化 |
|---|---|---|---|
|
工具调用 |
4.2 |
2.3 |
减少 46% |
|
未命中缓存的输入 Token |
8,070 |
4,650 |
减少 42% |
|
耗时 |
39.8 秒 |
15.8 秒 |
减少 60% |
|
正确率(SWE-bench) |
65% |
75% |
+10 pts |
注:数据来源 Graft README。"最高 4 倍更便宜、3 倍更快"是 PocketBase、ollama、Excalidraw 等真实仓库 sweep 中单个任务的最好成绩,不是平均值。
Graft 的深度构建要花钱调模型,大仓库首次建图的成本需自行评估;但它接入 Claude Code 后无守护进程、无额外服务,图就是磁盘上的一组 Markdown 文件,每次编辑后后台静默增量重建。
综合对比
|
工具 |
类型 |
免费/开源 |
省 Token 的环节 |
接入成本 |
适用场景 |
|---|---|---|---|---|---|
|
使用习惯优化 |
方法论 |
免费 |
输入(缓存命中) |
零 |
所有用户的第一步 |
|
Repomix |
仓库打包 |
MIT 开源 |
输入 |
低 |
一次性分析外部仓库 |
|
Gitingest |
仓库摘要 |
MIT 开源,公有库免费 |
输入 |
低 |
预估算仓库 Token、快速转交 AI |
|
Continue.dev |
IDE 扩展 |
Apache 2.0 开源 |
输入(检索)+ 输出 |
中 |
想在 IDE 里自带 key/本地模型、按原价计费 |
|
Serena MCP |
MCP Server |
开源 |
输入(检索) |
中 |
Cursor/Claude 大项目 |
|
Caveman |
输出风格插件 |
开源 |
输出 |
极低 |
所有主流编码智能体 |
|
Graft |
上下文图谱 |
MIT 开源 |
输入+工具调用 |
中(首次建图花钱) |
大仓库、智能体反复探索 |
怎么选:按场景的决策路径
个人开发者,预算敏感
第一步:先改使用习惯——稳定前缀让缓存命中、/compact 清理陈旧上下文、任务切换开新会话、用 @file 精确投喂。这一步零成本,通常能砍掉 30%-50% 浪费。
第二步:装 Caveman。一条命令、对所有主流编码智能体生效,输出 Token 平均省 65%,且不影响推理质量。
如果这两步做完还不够,再考虑下一步。
仓库较大(5 万行以上),智能体每次都要重新探索
首选 Graft,它专门解决"Agent 每次任务都从零熟悉代码库"的问题。两条命令装完,Claude Code 会话里多出一行状态栏:402 个节点 / 977 条边 / 79% 已充实 / 已同步。它的图里存的是"意思"不是"地址"——节点里有人话摘要、有承载逻辑的几行关键代码(存代码本身而非行号,避免行号漂移)、有带类型的关系连接。结果是"再打开源文件读一遍"这一步常常根本没发生。
如果只想做轻量的语义检索而非建完整图,可以用 Serena MCP 或 Continue 的 @codebase——它们更轻,不需要预先构建完整图,但每次仍依赖检索质量。
临时要分析一个外部仓库
Repomix 和 Gitingest 二选一:
-
想直接拿到一份 AI 容易读取的上下文包 → Repomix(
npx repomix一行命令,输出结构化 XML/Markdown,内置 Token 计数和安全扫描) -
想先估算仓库规模、Token 量,再决定怎么喂 → Gitingest(把
github.com换成ingest.github.com即可拿到摘要,公有仓库免费)
这两个工具解决的是"这一次喂什么",不负责"下一次怎么记住",所以不适合持续开发的长期项目。
想在 IDE 里控制成本
Continue.dev 的开源 IDE 扩展值得考虑。它的核心优势是"自带 key、按 provider 原价计费"——配置 Qwen2.5-Coder 7B 本地跑补全,Sonnet 跑 Chat,Cursor Pro 做不到这种模型层级分流。2026 年 5 月已跨过 250 万次 VS Code 安装。代价是 agent mode 在长任务上落后于 Cursor Composer,黑盒程度更高。
企业团队,多智能体协作
Graft 明确支持多仓(multi-repo)场景,图的节点可以跨仓库建立联系,团队成员各自 graft build 生成自己的图,共享 .claude/ 里的接线配置。但企业落地前务必自己做基准测试——Graft 的跑分是作者自测(162 次受控任务),企业级结论需要内部验证。
一个容易被忽略的事实
Graft 的 42% Token 减少,是建立在"受控基准、同一个 Sonnet 智能体、两个仓库"上的平均值;"4 倍更便宜"是真实仓库 sweep 里单个任务的最好成绩。两者不是一回事,引用时不要混。
更重要的是:省 Token 的本质是"先搞清楚你的 Token 花在了哪里",再选对应的工具。盲目装 Graft,未必比先改使用习惯收益更大:
-
如果你的 Token 主要花在"输出冗长解释"上,Caveman 这类输出压缩工具的收益比 Graft 更直接;
-
如果你的 Token 主要花在"反复读取大文件"上,prompt caching +
/compact的使用习惯优化可能比装任何工具都管用; -
如果你的 Token 主要花在"每次都要重新熟悉代码库"上,Graft 或 Serena 才真正对症下药;
-
如果你只是临时想让 AI 看一个外部仓库,Repomix 或 Gitingest 就够,不值得为此搭一套长期基础设施。
写在最后
2026 年省 Token 的 AI 编码工具生态已经分化成多条路线,免费开源方案覆盖了从输出压缩(Caveman)、仓库打包(Repomix/Gitingest)、语义检索(Continue/Serena)到上下文图谱(Graft)的完整光谱。Graft 的出现标志着"代码库级基础设施"的成熟——给智能体一张持久的、随代码变动自动更新的认知地图;但它不是起点,也不是所有团队的终点。
建议的演进路径:
-
今天就开始:改使用习惯,零成本省 30%-50%。
-
装 Caveman:一条命令,输出 Token 省 65%。
-
临时分析外部仓库用 Repomix 或 Gitingest:免费、开源、一行命令。
-
当仓库大到智能体每次重新探索成为瓶颈时,再上 Graft 或 Serena。
-
想在 IDE 里精细控制模型成本,Continue.dev 的开源扩展是 Cursor 之外的值得考虑的选择。
这四步走下来,你在"省 Token"上的投入是渐进的、可逆的、每一层都有明确收益。比起一开始就装一套重型基础设施,这种路径更适合大多数个人开发者和中小团队。