Caveman 实测:99k Star 的洞穴人 skill,砍掉 65% 输出 token,代理输入也省 33%

Caveman 实测:99k Star 的洞穴人 skill,砍掉 65% 输出 token,代理输入也省 33%

AI 编程代理的账单正在失控。一个中度使用 Claude Code 的开发者,日均消耗 50 万 token,按 Claude Sonnet 5 定价月费约 $150。重度用户日均 200 万 token,月费突破 $600。而这些 token 里,至少 40% 是”废话”——客套话、填充词、重复解释、格式修饰。

JuliusBrussee 在 2026 年 4 月发布的 Caveman skill,用一个激进的思路解决了这个问题:让 AI 说”洞穴语”。去掉所有修饰,只留技术实质。结果?输出 token 平均减少 65%。这个 skill 在 4 个月内拿到 99,628 颗星,成为 GitHub 上增长最快的 AI skill 之一。

但输出压缩只是故事的一半。2026 年 8 月发布的 Caveman 2.0 新增了本地代理(Proxy),可以压缩 Agent 读入的内容——包括工具返回的日志、JSON 配置、代码文件。在官方基准测试中,代理输入 token 减少了 33.2%,且所有 18 个精确答案检查全部通过。

Caveman 怎么工作的?

Caveman 分两层运作:输出 skill(原始功能)和输入代理(2.0 新增)。

输出 Skill:让模型少说话

核心机制是一份 ~5KB 的系统提示词(SKILL.md),注入到 Agent 的上下文中。这份提示词定义了一套”洞穴语”写作规则:

  • 删除冠词(a/an/the)、填充词(just/really/basically)、客套话(sure/certainly/happy to)
  • 允许片段句、短同义词(big 代替 extensive)
  • 禁止工具调用前的解说、装饰性表格、冗长错误日志
  • 保留全部技术实质:代码块、API 名、错误信息、数字原样不动
  • 支持 6 种强度:lite / full(默认) / ultra / wenyan-lite / wenyan-full / wenyan-ultra

例如,解释”React 组件为什么重渲染”:

普通回答(69 token):

The reason your React component is re-rendering is likely because you’re creating a new object reference on each render cycle. When you pass an inline object as a prop, React’s shallow comparison sees it as a different object every time, which triggers a re-render. I’d recommend using useMemo to memoize the object.

Caveman 回答(19 token):

New object ref each render. Inline object prop = new ref = re-render. Wrap in useMemo.

同一个修复方案,token 消耗减少 72%。

输入代理:让模型少读东西

Caveman 2.0 的核心创新是本地代理(Caveman Proxy)。它以 sidecar 模式运行在你的机器上,Agent 的所有 API 请求都经过它转发。代理对不同类型的载荷(payload)执行针对性压缩:

载荷类型 保留内容 压缩目标
JSON 键、结构、错误子树;折叠重复数组 70–90%
日志 错误、堆栈、首尾行;丢弃 INFO 和进度噪声 85–95%
代码 import、签名、类型;省略函数体 40–70%
Diff 文件/块头和变更行;省略重复上下文 60–80%
搜索结果 顶部/底部命中 + 诊断/安全命中 80–95%
文本/HTML 标题、首尾上下文、重要段落 50–80%

关键安全机制:CCR(Content-Addressed Recovery)。原始字节在任何有损变换之前,先存入本地磁盘的内容寻址存储。Agent 通过 caveman_retrieve 随时取回原始数据。解析失败或压缩后更大时,直接透传原始字节。

还有一个大胆的功能:Pixel 模式。将密集文本渲染成 PNG 图片,让视觉模型直接”看图”而非读文本。在 63.7k 字符的 JSON 工具目录上,55,413 个文本 token 被压缩为 11,402 个图片 token,减少 79%。

功能拆解

1. 输出 Skill(原始功能)

一句话:让 AI 用洞穴语回答,输出 token 平均减 65%。

  • 6 种强度级别,从轻度去修饰(lite)到中文文言文(wenyan)
  • 代码块、命令、错误信息完全保留,不压缩技术内容
  • 支持 30+ Agent:Claude Code、Codex、Gemini CLI、Cursor、Windsurf、Cline 等
  • 附带子命令:/caveman-commit(简洁提交信息)、/caveman-review(一行审查)

适用场景:日常编码对话、代码审查、文档生成——所有”输出长、重复多”的场景。

2. Caveman Proxy(2.0 输入压缩)

一句话:本地代理压缩 Agent 读入的所有内容,输入 token 减 33.2%。

  • 基于 Go 的本地代理,零云端依赖
  • 8 个原生 wrap 配置:Claude Code、Codex、Gemini CLI、Aider、opencode、Hermes、OpenClaw、Pi
  • caveman learn 扫描历史会话,输出 token 消耗排名和优化建议
  • caveman learn implement 让 Agent 自己修复发现的问题,逐个确认

适用场景:长会话、大量工具调用、日志密集型任务——所有”输入 token 爆炸”的场景。

3. Pixel 模式

一句话:把文本渲染成 PNG,用视觉 token 替代文本 token。

  • 只在长行密集内容上有利(JSON 工具目录、长日志)
  • 短行稀疏代码不划算,PNG 开销超过节省
  • 通过 caveman convert 可以将 SKILL.md 本身转为图片,省 61%

适用场景:大量 JSON/日志处理、工具 schema 注入。

4. 辅助工具集

工具 功能
caveman learn 扫描真实历史,输出 Cave Score + token 浪费排名
caveman shrink 压缩命令输出,可恢复
caveman browse 本地 Chrome 的压缩 a11y 树,121 token vs Playwright 的 15,704 token
caveman mem 持久化记忆,支持原始字节恢复
caveman trial A/B 测试真实会话
caveman stats 查看实际压缩统计

实测数据

输出压缩:官方 Benchmark

Caveman 仓库提供了 10 个标准化任务的对比数据:

任务 普通输出 (token) Caveman 输出 (token) 节省
解释 React 重渲染 1180 159 87%
修复 auth 中间件 704 121 83%
PostgreSQL 连接池 2347 380 84%
Git rebase vs merge 702 292 58%
回调重构为 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%

诚实数字警告:输出 skill 本身每次对话增加 ~1–1.5k 输入 token(SKILL.md 注入成本)。如果输出本身已经很简洁,净节省可能为负。官方建议:对你的实际工作负载做 A/B 测试。

输入压缩:Wrap Benchmark

在 6 个确定性工具输出负载上,54 次运行(每个 arm 18 次)的对比:

指标 数值
直连 Claude Code 输入 token 885,793
Caveman 代理输入 token 591,673
减少比例 33.2%
95% 置信区间 14.6% – 48.5%
精确答案通过率 18/18(100%)

分负载看,日志压缩最猛(50.2%),JSON/YAML 次之(26–46%),HTML 因无压缩变换反而微增(-9.9%)。

成本估算

以 Claude Sonnet 5 定价(输入 $3/M,输出 $15/M)计算:

场景 日均 token 无 Caveman 月费 有 Caveman 月费 月省
轻度(50万输入+10万输出) 60万 $195 $145 $50
中度(200万输入+50万输出) 250万 $750 $525 $225
重度(500万输入+200万输出) 700万 $1,800 $1,260 $540

注:以上为理想情况。实际节省取决于输出长度、会话长度、负载类型。如果输出已经很简洁,skill 的固定输入成本可能超过节省。

一个真实例子

Before(无 Caveman):

I’d be happy to help you debug that race condition. The issue you’re experiencing is likely caused by multiple concurrent writes to the same database record without proper locking. Let me walk you through the fix step by step. First, we need to add a mutex lock around the critical section…

After(Caveman full):

Race condition: concurrent writes without lock. Add mutex around critical section:
mu.Lock()
defer mu.Unlock()
Check isolation level — READ COMMITTED may still allow phantom reads.

同样的诊断,从 5 行客套变成 3 行干货。

安装 + 适用场景 + 结语

安装

输出 Skill(最简单):

npx skills add JuliusBrussee/caveman

一行命令,立即生效。Claude Code 用户也可以:

claude plugin marketplace add JuliusBrussee/caveman && claude plugin install caveman@caveman

输入代理(完整安装):

npm install -g @caveman-ai/cli && caveman setup --install
caveman claude        # 你的 agent 名

谁最适合用?

  • 高频 AI 编程用户(日均 >100 次对话):输出 + 输入双压缩,月省 $50–500+
  • 长会话重度用户(单会话 >50 轮):输入压缩效果随会话长度递增
  • 日志/JSON 密集型任务:代理对这类负载压缩 50–95%
  • 成本敏感的团队:统一部署到所有开发者,集体省钱

谁不需要?

  • 短问答为主的轻度用户:skill 固定输入成本可能吃掉节省
  • 按请求计费的平台(如 GitHub Copilot):缩短回答不减少请求数
  • 输出已经很简洁的 Agent:净节省可能为负

对不同角色的意义

  • 个人开发者:每月省 $50–200,相当于免费用一个月 Claude Pro
  • 技术团队:10 人团队年省 $6,000–60,000,够雇一个初级工程师
  • AI 产品经理:理解 token 经济学,优化 Agent 的成本结构

结语

Caveman 从一个 meme 级的”洞穴语”提示词,演变成了一个完整的 token 优化系统。输出压缩 65%、输入压缩 33%、Pixel 模式 79%——这些数字背后是扎实的工程:内容寻址恢复、按类型压缩、A/B 基准测试框架。

它不是银弹。短会话、简洁输出、按请求计费的场景下可能净亏损。但对于日均百万 token 级别的重度用户,Caveman 可能是目前 ROI 最高的 AI 成本优化工具。

GitHub 仓库:JuliusBrussee/caveman(99,628★,MIT + BSL 双许可)

延伸阅读:

本文数据来源:JuliusBrussee/caveman GitHub 仓库 README、docs/HONEST-NUMBERS.md、docs/WRAP-BENCHMARK.md。所有基准测试数据均为官方发布,未独立验证。作者使用过 Caveman skill 进行实际编码工作。