ARTICLE · 1215939
穴居人专治 AI 编程助手话痨病,每次怒省7 万 token
穴居人专治 AI 编程助手话痨病,每次怒省7 万 token
npx skills add,4.1 秒,终端里刷出一整屏绿色对勾,22 个技能文件一次性落地,全部软链接进了 Claude Code。香草今天装的不是什么高冷新模型,是一个专门管 AI 编程助手"说人话"的穴居人。 
它叫 caveman,今天挂在 GitHub Trending 日榜前排,433 颗新增 Star,总数已经冲到 10 万+、Fork 6000+。项目主页第一句话就把立场亮明白了:你的 AI 编程助手按字计费,写起来却完全不知道这件事。Caveman 要让它闭嘴,脑子照样大,嘴巴变小,账单变小。 现在的编程 Agent 有个通病:问它为什么组件重复渲染,它能给你写一整段带起承转合的散文,绕一圈才说到 useMemo。Caveman 的 README 里直接摆了对照——普通 Agent 回答这个问题要 69 个 token,caveman 模式下只要 19 个,诊断和解法一字不差,死掉的只是清嗓子的那部分。 
代码、命令、文件路径、报错信息,caveman 从不碰,只砍包裹在它们周围的人话。 项目其实是两层拼起来的。小石头是技能层,一个规则文件,MIT 协议,永久免费,装完输入 /caveman 就能让 30 多个主流 Agent——Claude Code、Codex、Gemini、Cursor、Windsurf、Cline、Copilot 等——切换成"人话精简版",想要更狠的还有 lite、full、ultra 三档强度,甚至有文言文模式 wenyan-lite/full/ultra,connected 一套 /caveman-commit、/caveman-review 之类的子命令,专门管提交信息和代码审查的简短化。 
大石头是代理层,跑在本机,夹在 Agent 和模型提供商中间,在请求发出去之前先把 Agent 要读的内容按类型分类压缩:JSON 只留键名结构和报错子树,日志只留报错和首尾行,代码只留导入和签名、函数体整体省略但语法保持合法,diff 只留文件头和改动行。原文全部有备份,存在本地 SQLite 里,Agent 随时能用一个恢复句柄把完整版本拉回来,不是单向有损压缩。 香草亲手装的就是小石头那一层,一行命令,4 秒钟,技能文件直接按软链接接进了 Claude Code,零配置零门槛,装完连重启都不用。 项目自己跑了真实 Claude API 的十个编程任务做基准:十题平均下来,输出 token 从 1214 砍到 294,省了 65%。 
最夸张的一条是实现 React 错误边界,从 3454 token 压到 456,省了 87%;最保守的一条是把回调函数改写成 async/await,只省了 22%——本来答案就以代码为主,没多少废话可砍。代理层那边用了 54 轮真实 Claude Code 会话做压测:CSV 异常值排查这类场景,输入 token 从 16.6 万压到 7.4 万,降了 55%;六个场景加总,88.6 万降到 59.2 万,整体降了 33.2%,18 道精确答案检查全部通过,压缩没动准确率一分。 
香草觉得最难得的不是省钱数字,是它把"红的那一行"也原样留在了文档里——Dashboard HTML 告警那个场景,因为没有合适的压缩策略,反而多花了 9.9% 的 token,作者原话是"那一行会一直红下去,我哪天把它藏起来,你就该不再信那些绿的"。这种坦率,在一堆把平均值包装成普适结论的开源项目里挺少见。 大多数做 token 优化的项目,盯的是模型该怎么省着用;caveman 盯的是人该怎么少被啰嗦的回复拖慢节奏。省下来的 token 只是副产品,真正的产品是读起来更快、改起来更顺的回复——项目自己反复提醒:技能层的规则文件本身每轮要吃掉 1 到 1.5k 输入 token,如果你的任务原本就写得很短,套上这层规则反而可能倒贴。 
README 里甚至挂了一条具体 issue 号,说有用户的 Cursor 实测结果方向跑反了,作者复现不出来,干脆原样挂出来让大家自己量过再说。诚实到这个地步的开源项目介绍,香草是第一次见。 
同行对照上,给 Agent 瘦身这条路子这两年不止一家在走,大多数方案把力气花在模型本身——换小模型、裁知识库、做蒸馏。caveman 选了一条更朴素的路:不动模型,只管进出的那层文字怎么写、怎么读,所以能跨 30 多个 Agent 通用,装哪个都是同一条命令,算是把"适配成本"这件事做到了最低。 
更远一点,caveman 还搞了个叫"pixel 模式"的实验——把技能规则文件渲染成 PNG 图片,让模型当图像读而不是当文字读,官方测出能再省 61% 的 token,理由是每次调用都要重新加载一遍的规则文本,图片比文字更便宜。这算是把"自己给自己瘦身"这件事玩到了字面意义上的尽头。 想试试穴居人的嘴能有多小,终端里敲一行就够: npx skills add JuliusBrussee/caveman 装完如果 Agent 没自动切换,手动打一句 /caveman 就行。想卸载同样是一行命令,不留痕迹。你的 Agent 平时话最多的那个瞬间,一般出现在什么任务上?


香草解释核心问题

技术原理:两块石头,分工不同

数据说话,不说模糊的"显著提升"


香草的反直觉洞察



最小上手
参考来源
caveman GitHub 主页:https://github.com/JuliusBrussee/caveman 诚实数据说明文档:https://github.com/JuliusBrussee/caveman/blob/main/docs/HONEST-NUMBERS.md 代理层压测方法与数据:https://github.com/JuliusBrussee/caveman/blob/main/docs/WRAP-BENCHMARK.md 完整安装矩阵(30+ Agent):https://github.com/JuliusBrussee/caveman/blob/main/INSTALL.md GitHub Trending 日榜:https://github.com/trending Product Hunt 产品页:https://www.producthunt.com/products/caveman Trendshift 收录页:https://trendshift.io/repositories/25391 Caveman Cloud 候补名单:https://caveman.so 官方文档快速开始:https://docs.caveman.so/docs/quickstart 同系列浏览器项目 caveman-browse:https://github.com/JuliusBrussee/caveman-browse 实验室方向 cavegemma(压缩能力内化进模型权重):https://github.com/JuliusBrussee/cavegemma skills.sh 收录页:https://skills.sh/JuliusBrussee/caveman















































































