减少65% AI Token消耗
caveman
通过精简 AI 响应风格,减少 65% 的输出 Token 消耗,同时保持代码准确性。

试试这样做
详细介绍
Caveman
Caveman 是一个用于 AI 编码 Agent 的 skill/plugin,让 Agent 像“穴居人”一样说话:去掉废话,用简短、直接的短句回答,同时保证代码、命令和错误信息逐字节准确。根据 README,同样答案可减少约 65% 的输出 token。
它可用于 Claude Code、Codex、Gemini、Cursor、Windsurf、Cline、Copilot 以及 30+ 个其他 Agent。
需要诚实说明:Caveman 只减少输出 token;输入和推理 token 不会减少,且 Skill 本身每回合会增加约 1–1.5k 输入 token。
适用人群
- 使用 AI 编码 Agent,希望回复更短、更易读,同时不损失技术准确性的开发者。
- 关注输出 token 成本,但理解“真正的收益是可读性和速度,而不是必然省钱”的用户。
- Claude Code、Codex、Gemini、Cursor、Windsurf、Cline、Copilot 及 30+ 个其他受支持 Agent 的用户。
效果预览
普通 Agent — 69 tokens:
你的 React 组件重新渲染,很可能是因为每次渲染都创建了新的对象引用。当你把内联对象作为 prop 传入时,React 的浅比较会认为它是不同的对象,从而触发重新渲染。我建议用 useMemo 来记忆这个对象。
Caveman Agent — 19 tokens:
每次渲染都是新对象引用。内联对象 prop = 新引用 = 重新渲染。用
useMemo包一下。
普通 Agent:
当然!我很乐意帮你解决这个问题。你遇到的情况很可能是由认证中间件没有正确校验 token 过期时间导致的。让我看一下并提出修复方案。
Caveman Agent:
认证中间件有 bug。token 过期检查用的是
<而不是<=。修复:
同样的修复。三分之一的篇幅。技术内容没有丢失。
核心能力
- 兼容 Claude Code、Codex、Gemini、Cursor、Windsurf、Cline、Copilot 等 30+ 个 Agent。
- 把回复压缩成简短的“穴居人”风格,同时逐字节保留代码、命令和错误。
- 只缩小 Agent 的“嘴”,不缩小“脑”——不改变它知道什么,只改变它怎么说。
- 保留你的语言:用葡萄牙语、西班牙语、法语等书写时,Agent 仍用对应语言回复;压缩的是风格,不是内容。
- 提供多个压缩级别:
lite、full(默认)、ultra、wenyan。 - 提供
/caveman-commit、/caveman-review、/caveman-stats、/caveman-compress、caveman-shrink和cavecrew-*子 Agent。 - 可以重写记忆文件(如
CLAUDE.md),让之后的每次会话从更小的上下文开始,长期节省输入 token。 - 无遥测、无分析、无账号、无后端;配置完成后零网络调用。
命令一览
| 命令 | 作用 |
|---|---|
/caveman [lite|full|ultra|wenyan] |
压缩每次回复。级别在会话中保持。 |
/caveman-commit |
生成 Conventional Commit 信息,主题不超过 50 字符。讲“为什么”而不是“是什么”。 |
/caveman-review |
一行式 PR 评论:L42: 🔴 bug: user null. Add guard. |
/caveman-stats |
查看真实会话 token 用量、累计节省量和 USD。--share 可生成可分享的一句话。 |
/caveman-compress <file> |
把记忆文件(如 CLAUDE.md)重写为“穴居人”风格。之后每次会话输入 token 减少约 46%。代码、URL、路径逐字节保留。 |
caveman-shrink |
MCP 中间件。包装任意 MCP server,压缩其工具描述。 |
cavecrew-* |
Caveman 子 Agent(调查员、构建者、审查者)。比普通版本减少约 60% token,让主上下文更持久。 |
在 Claude Code 上,状态栏会显示 [CAVEMAN] ⛏ 12.4k —— 那是你累计节省的 token,每次运行 /caveman-stats 时更新。设置 CAVEMAN_STATUSLINE_SAVINGS=0 可关闭。
压缩级别
随时用 /caveman <level> 切换。级别会保持,直到你修改或会话结束。
| 级别 | 同样一句话的压缩效果 |
|---|---|
| normal agent | 你应该把对象包在 useMemo 里,因为每次渲染都会创建新的引用。 |
lite |
用 useMemo 包裹对象。每次渲染都会创建新引用。 |
full (默认) |
每次渲染都是新引用。用 useMemo 包裹对象。 |
ultra |
每次渲染/引用。useMemo 它。 |
wenyan |
每次渲染都有新引用,所以用 useMemo 包裹——用文言文呈现,更短。 |
说你的语言。 Caveman 会保留你的语言。写葡萄牙语,Caveman 就用葡萄牙语回应;西班牙语、法语也一样。它压缩的是风格,从不翻译。wenyan 模式是有意为之的特例:文言文每个 token 能承载更多含义。
开启 / 关闭
- 开启:输入
/caveman或说 “talk like caveman”。 - 关闭:说 “normal mode”。
- 在 Claude Code、Codex 和 Gemini 上,从第一条消息起默认开启,无需命令。
兼容性与限制
- 受支持的 Agent 包括 Claude Code、Codex、Gemini、Cursor、Windsurf、Cline、Copilot 以及 30+ 个其他 Agent。
- Caveman 只压缩输出 token。输入和推理 token 不会被节省。
- Skill 本身每回合会增加约 1–1.5k 输入 token,因此整个会话的实际节省小于单次回复的输出减少。
- 在已经很简洁的工作负载上,节省可能变成净亏损。
- Skill 保留你的语言;它压缩风格,不压缩内容。
wenyan级别是有意为之的特例。 - README 还提到
caveman-shrink和cavecrew-*作为 MCP 中间件和子 Agent 的附加工具。
基准与真实数据
以下是 README 提供的来自 Claude API 的真实 token 计数。10 个提示平均输出减少 65%(范围 22–87%),对比默认冗长回复。仅计算输出 token。
| 任务 | 普通 | Caveman | 节省 |
|---|---|---|---|
| 解释 React 重新渲染 bug | 1180 | 159 | 87% |
| 修复认证中间件 token 过期 | 704 | 121 | 83% |
| 配置 PostgreSQL 连接池 | 2347 | 380 | 84% |
| 解释 git rebase 与 merge | 702 | 292 | 58% |
| 把 callback 重构为 async/await | 387 | 301 | 22% |
| 架构:微服务 vs 单体 | 446 | 310 | 30% |
| 审查 PR 的安全问题 | 678 | 398 | 41% |
| Docker 多阶段构建 | 1042 | 290 | 72% |
| 调试 PostgreSQL 竞态条件 | 1200 | 232 | 81% |
| 实现 React error boundary | 3454 | 456 | 87% |
| 平均 | 1214 | 294 | 65% |
README 还引用了一篇 2026 年 3 月的论文《Brevity Constraints Reverse Performance Hierarchies in Language Models》,测试了 31 个模型,发现在某些基准上,限制大模型简短回答可使准确率提高约 26 个百分点。
诚实的数字提醒。 Caveman 只减少输出 token。输入和推理 token 不受影响,而且 Skill 本身每回合会增加约 1–1.5k 输入 token。因此整个会话的节省会小于输出数字;在已经很简洁的工作负载上,甚至可能变成净亏损。真正的收益是可读性和速度,成本节省只是额外好处。想了解 Caveman 何时划算、何时不划算,以及如何自己测量,可查看 docs/HONEST-NUMBERS.md。
caveman-compress 实例
真实记忆文件压缩一次,之后每次会话都会更便宜:
| 文件 | 原始 | 压缩后 | 节省 |
|---|---|---|---|
claude-md-preferences.md |
706 | 285 | 59.6% |
project-notes.md |
1145 | 535 | 53.3% |
claude-md-project.md |
1122 | 636 | 43.3% |
todo-list.md |
627 | 388 | 38.1% |
mixed-with-code.md |
888 | 560 | 36.9% |
| 平均 | 898 | 481 | 46% |
之后每次会话,该文件加载时约减少 46% 输入 token。这不是只省一次性回复,而是长久节省输入 token。
工作方式
- Skill 文件被配置到你的 Agent。
- Skill 告诉 Agent:去掉废话、保留实质、使用短语——但绝不碰代码、命令或错误。
- 在 Claude Code 上,hook 会在每个会话写入一个小标记文件,因此从第一条消息起 Agent 就用“穴居人”模式,无需
/caveman。 /caveman-stats读取你的会话日志,统计节省的 token,把数字写入状态栏。/caveman-compress重写记忆文件(如CLAUDE.md),让之后每个会话从更小的上下文开始。节省 token 是长久的,不只是这一次。
隐私
Caveman 不打电话回家。无遥测、无分析、无账号、无后端。配置完成后零网络调用——Skill 是提示词,hook 是本地脚本,/caveman-stats 读取的是本地已有的日志。安装时的网络请求(GitHub 和 Agent 自己的 registry)在 SECURITY.md 中有说明。