关于节省 token,究竟应该从哪个环节入手?这个问题我已经被问了不下十次。直到最近,一款名为 ca veman 的插件冲上 GitHub 日榜(单日狂揽 2800 多 star),号称能够大幅削减 token 消耗,这促使我决定深入探究。我实际安装使用了一周,账单确实有所下降——但降幅远没有某些标题党宣称的“省 97%”那么夸张,甚至在某些天还出现了不降反升的情况。
ca veman 是一款专门针对 Claude Code 以及 30 多种 AI 编码 Agent 的 Skill 插件。其核心机制简洁明了:它让 AI 采用“原始人式”的极简语气回应,摒弃客套话、过渡语和解释性废话,但绝不改动代码、命令和报错内容。它压缩的是 AI 的表达风格,而非其思考过程。理解这一区别,是判断该插件是否值得安装的关键前提。

首先了解:Claude Code 的 Token 究竟消耗在哪里
要评估一款“省 token 插件”的实际效果,首先需要搞清楚 token 是如何被消耗的。在一次 Claude Code 会话中,token 消耗主要分为三部分:
- 输入 token(Input):包含你的提示词、系统提示、附带的文件上下文以及历史对话。会话越长,这部分耗用越大。
- 输出 token(Output):模型生成的回答文本。冗长的解释和大段总结都消耗在此。
- 推理 token(Reasoning):模型进行“思考”时消耗的隐式 token,用户虽然看不到,但同样会被计费。
ca veman 只作用于其中一部分——输出。根据其官方基准数据,在 10 条测试提示下,输出 token 平均减少了 65%(范围 22%–87%),而输入 token 完全没有变化。请注意,这是 65%,并非某些转载标题中声称的“97%”。97% 只是压缩最激进档位下单条 prompt 的极端情况,并非整体平均值。
ca veman 的安装与使用方法
安装只需一条命令(需要 Node ≥ 18):
# macOS / Linux / WSL
curl -fsSL https://raw.githubusercontent.com/JuliusBrussee/ca veman/main/install.sh | bash
# Windows PowerShell
irm https://raw.githubusercontent.com/JuliusBrussee/ca veman/main/install.ps1 | iex
在 Claude Code 中,它通过一个 hook 在会话启动时自动激活。日常用到的命令并不多:
| 命令 | 作用 |
|---|---|
/ca veman [lite|full|ultra|wenyan] |
设定压缩级别 |
/ca veman-commit |
生成精简的 conventional commit 信息 |
/ca veman-review |
输出简短的 PR 评论 |
/ca veman-stats |
查看 token 用量与节省报告 |
/ca veman-compress |
重写记忆文件(约省 46% 输入 token) |
四个压缩等级中,full 为默认档,ultra 更为激进,wenyan(文言文)压缩率最高——用文言文回话虽然简短,但可读性也大幅下降。建议从 full 档开始尝试。
号称最省 token 的插件,却可能让账单不降反升
这是经过一周实测后最反直觉的发现。ca veman 本身也是一段提示词,它在每一轮对话中会额外向输入里塞入大约 1–1.5k 个输入 token(用于告诉模型“请用原始人语气回答”)。对于输出本来就短的任务——比如你只是问“这行报错是什么意思”——它节省的输出 token 还不足以覆盖自己增加的输入 token。最终,净账单反而上升了。
README 中其实白纸黑字写着这条警告:“整个会话的节省幅度会比输出数字小得多。”但大多数转载文章只截取了“省 65%”“省 97%”这样亮眼的数字,忽略了这个注意事项。
那么,如何才能有效节省 token?
ca veman 解决的是“输出冗余”这一个切面。真正有效的 token 优化需要组合拳,按性价比排序:
- 压缩上下文:长会话中,输入 token 是主要消耗。定期使用
/ca veman-compress或手动精简CLAUDE.md,及时清理无关历史,收益比压缩输出大得多。 - 控制附带文件:不要将整个目录塞给模型。只提供相关文件,输入 token 瞬间下降。
- 选对模型档位:简单任务使用轻量模型,复杂任务才启用旗舰模型。模型单价的差异,往往比省几百输出 token 的影响大一个数量级。
- 压缩输出(ca veman 的领域):作为补充手段,对长输出任务有效。
第 3 点尤其容易被忽略。与其在单个模型上抠输出 token,不如让不同任务走不同价位的模型。国内开发者若希望在一个平台内按任务切换多款主流大模型、避免为每个模型单独配置接入,可以使用七牛云 AI 多模型统一接入方案——国内可直接访问,将“选对模型档位”这件事的成本降下来。这比单纯压缩输出更接近成本问题的根子。
相关工具与生态系统
ca veman 并非孤例,围绕“AI 编码降本”已经形成了一个小型生态:
- Claude Code:Anthropic 的终端编码 Agent,ca veman 的主要宿主。
- 上下文压缩类 Skill:如 ca veman 自带的
/ca veman-compress,专门瘦身记忆文件。 - 多模型网关 / 路由:本周 GitHub 上 OmniRoute 等“AI 网关”项目同期走热,思路是从“切换模型”层面省成本,与压缩输出互补。
- Token 统计工具:如
/ca veman-stats,以及 Claude Code 自带的用量面板,用来量化到底省了多少。
FAQ
Q:ca veman 说的“省 97%”是真的吗?
不完全是。官方基准是输出 token 平均省 65%(区间 22%–87%),97% 是最激进压缩档下单条 prompt 的极端值,不是会话平均。而且它只省输出、不省输入,整个会话的净节省会明显小于这个数字。
Q:装了 ca veman 会影响代码质量吗?
不会直接影响。它明确规定不改动代码、命令、报错内容,只压缩自然语言解释部分。但如果你依赖 AI 的详细解释来理解方案,ultra 和 wenyan 档可能让回答简短到难以读懂——这是可读性与成本的权衡。
Q:有人说省 token 就该压缩输出,有人说该压缩输入,到底听谁的?
这是分歧最大的一个问题。判断很简单:长会话优先压缩输入(上下文),短输出任务压缩输出基本没意义。因为长会话里输入 token 的绝对量通常远大于输出,而 ca veman 这类工具自身还要占用输入。两派其实都对,只是没说清各自的适用场景——盲目跟风只压缩输出的人,很可能省了个寂寞。
Q:什么样的任务最适合用 ca veman?
文档生成、代码大段解释、长回答型任务——这些输出 token 占比高,压缩收益最明显。反过来,纯短问答式调试用它意义不大甚至倒亏。
Q:/ca veman-compress 和直接删 CLAUDE.md 内容有啥区别?
前者是让 AI 智能重写、保留关键信息的前提下压缩(约省 46% 输入),后者是无脑删可能丢掉重要上下文。想省输入 token 又不想丢信息,用前者更稳。
结论与一个尚未解开的疑惑
以目前的理解,ca veman 这类“输出压缩”插件对长输出、文档生成型任务净收益为正,对短问答、调试型任务净收益为负甚至倒亏——这个判断我给 75 分把握,主要依据是它“只省输出、自身占输入”的机制,但如果未来它把 skill 提示词进一步压薄,这个结论就得更新。
真正值得做的省 token,是把上下文压缩、模型档位选择和输出压缩当成组合拳,而不是指望一个插件解决所有问题。
有一个问题到现在还没想清楚:当“省 token”逐渐变成一门需要记一周账才能看懂的玄学,到底该把精力花在优化模型的输出行为(装插件、调提示词),还是花在优化调用方式本身(选对模型、压对上下文、走对网关)?我倾向于后者更治本,但前者见效快、有即时反馈,反而更容易让人上瘾。如果你也在为 Claude Code 的账单头疼,我很想听听这个月你是怎么省下来的。
参考资料
- ca veman 项目 GitHub 主页:https://github.com/JuliusBrussee/ca veman
