怎么用 caveman:让 AI 闭嘴,只说重点
AI 每句话都先跟你客套三行。caveman 是一段 50 行的 prompt,把这层废话整个砍掉,技术内容一个字不少。我实测了中英日三种语言:中文能砍掉约 70%。
github.com/mattpocock/skills @2bf7005 1. AI 的客套,是你每天在交的一笔税
你跟 AI 结对写代码,一天几十轮。最烦的是什么?
不是它不懂技术。是它每句话都先跟你客套三行:
当然!我很乐意帮你。你遇到的这个问题,其实很可能是由于……
真正有用的,就最后那一句。前面全是铺垫。
这层铺垫不只是费眼睛。它实打实地烧 token、拖慢响应、把上下文窗口一点点塞满——你跟它聊得越久,这笔”客套税”交得越多。而你其实从来没想要它。
caveman 干的事,一句话就能说清:让 AI 像个聪明的穴居人那样说话。技术内容一个字不少,客套、铺垫、那些模棱两可留余地的话,全砍掉。
它是 Matt Pocock 那套 skills 里最小的一个——整个文件 50 行。但你装上、用一次,大概率就回不去了。
2. 它没什么玄机:一份”闭嘴只说重点”的约定
你可能以为这背后有什么复杂机制。没有。caveman 整个 SKILL.md 就是一份回话风格的约定,核心三条:
砍什么。 砍掉没信息量的虚词(其实、基本上、简单来说)、客套话(当然、我很乐意),还有那些留后路、不把话说死的措辞。能一个词说清就别用一句话。因果关系直接用箭头:X -> Y。
但有一条红线,加粗给你看:
技术名词照旧,代码块原样,报错信息一字不改。
换句话说,它砍的是废话,不是信息。这跟”你给我说简短点”那种粗暴压缩根本不是一回事——后者会把有用的细节一起丢掉,caveman 不会。
一旦开启,就一直生效(skill 里叫 Persistence)。不会聊了几轮又慢慢漂回啰嗦。你不喊停,它就一直这么说话。
危险的时候,它会自己切回正常(skill 里叫 Auto-Clarity 例外)。碰到删库、不可逆操作、要分好几步才能讲清的事,它临时恢复完整表达,把话说明白,再切回去。
这第三条,是 caveman 比”无脑求简洁”高明的地方:省 token,但不在该啰嗦的地方偷懒。 你品品,这个分寸感是有设计的。
3. 三步,立刻看见区别
光说不练没意思。装上,你自己看一眼前后对比。
装。 它是 mattpocock/skills 里的一个 skill,用官方的一行命令装,跟着提示勾选 caveman:
npx skills@latest add mattpocock/skills
(如果你已经把仓库 clone 到本地,也可以直接把那个目录拷进你项目的 .claude/skills/。)
开。 对 Claude Code 说一句 caveman mode,或者敲 /caveman。不想要了就说 normal mode。
对比。 拿同一个问题问它——比如「为什么我的 React 组件,父组件一渲染它就跟着重渲染?」
平时它会给你三四段:默认行为、React.memo、useMemo/useCallback、children、最后再叮嘱你别过早优化。caveman 模式下,是这样(这是我真跑出来的,不是我编的):
默认行为。父组件 render -> 子组件 render,不管 props 变没变。
砍掉重渲染三招:
React.memo(子组件)-> props 浅比较,没变就跳过- 传给子组件的对象/数组/函数:用
useMemo/useCallback包,否则每次新引用 -> memo 失效- 状态下沉,让父组件别因无关 state 变化而 render
排查:装 React DevTools Profiler,看谁在 render、为什么。
React.memo、浅比较、引用稳定、状态下沉、Profiler——一个信息点都没少。但你一眼就读完了。
这就是第一个真结果。不用我吹,你自己跑一遍就信了。
4. 我替你算过账:中文省 70%,但分语言
caveman 的原始说明里写着它「省约 75% 的 token」。
但这是作者自己报的数,没给方法。这种话,听听就行——别人说省多少不算数,得自己量。
所以我量了,而且测了三种语言。我挑了 6 个开发者随口会问的真问题(React 重渲染、连接池、Node 内存泄漏、async/await、git 撤销 commit、JWT vs session),让 AI 分别用普通模式和 caveman 模式各答一遍,数字符。基线我用的是真实、不刻意啰嗦的回答——不是故意注水拿来凑数的稻草人。
结果:
| 语言(各自普通 vs caveman) | 字符降幅 |
|---|---|
| 中文 | 约 70% |
| 英文 | 约 63% |
| 日文 | 约 52% |
约七成、六成、五成——都很可观,信息一个没丢。但你看出来了:降幅随语言差挺多。 中文里的客套和虚词最多、可砍的水分最大;日文哪怕普通模式也相对紧凑,caveman 能挤的空间就小一些。所以**“省 75%“不能当成放之四海皆准的标语**——它跟你说什么语言有关。
把方法摊在这,不假装严谨:我用”无空白字符数”做的代理,不是精确 token 数(测试环境没装 tokenizer)。同一种语言里,字符数比例约等于 token 比例,所以同语言内的降幅可信;但跨语言的绝对字符数不能直接比,我比的是每种语言各自的降幅。样本就 6 题,只为给你一个量级感。
还有个量出来的意外,顺手告诉你:caveman 默认会往英文电报体上漂——它本来就是为英文设计的,你用中文问,它常常用英文极简回你。想要中文,得在开启时明说一句「用中文」。(我第一次测时没按住,数字就混进了”中文→英文”的语言切换,不干净;按住语言重测,才得到上面那张表。)
5. 但别全天开着——它有它的脾气
caveman 很好用,可它不是个”开了就一劳永逸”的开关。几件事先跟你说清:
- 它会往英文漂(上面说了)。要哪种语言,开启时明说。
- 碎句多,容错低。 它砍连词、爱用短句碎句,信息密度高,但你一走神就容易读拧。所以:要给别人看的产出、要发出去的正式文档、复杂的多步推理——别开 caveman。 那种场合,“说清楚”比”省 token”重要得多。(好在 Auto-Clarity 会在危险和多步场景自动恢复,但你心里得有数:它是给”你和 AI 高速对话”用的,不是给”AI 写给别人看”用的。)
- 它是风格,不是能力。 caveman 不会帮你多干一件活,它只改变 AI 跟你说话的方式。把它当成一个常驻的”省流模式”就好,别指望它替你完成什么工作流。
一句话:对话时开它,要正经输出时关掉它。 这点分寸拿捏好,它就一直是你的好工具。
6. 速查卡
安装:npx skills@latest add mattpocock/skills # 跟提示勾 caveman
开启:对 AI 说 "caveman mode" 或 /caveman
关闭:"normal mode" / "stop caveman"
语言:开启时明说「用中文」,否则它往英文漂
砍掉:没信息的虚词(其实/基本上)、客套(我很乐意)、留余地的话
保留:技术名词、代码块、报错原文 —— 一字不动
因果:用箭头 X -> Y
例外:危险操作 / 多步骤 -> 自动恢复完整表达(Auto-Clarity)
别用:正式文档 / 教学 / 给别人看的产出 -> 关掉它
实测:中文省约 70%、英文约 63%、日文约 52%(作者自报约 75%)
7. 延伸
- 这个 skill 的源码:mattpocock/skills · caveman(MIT 许可)
- 喜欢这种”一段 prompt 就改变 AI 行为”的玩法?Matt 那个仓库里还有一堆,这个系列会接着拆。
- 想跟 Matt 本人和几万个开发者一起聊这些 skill,他的 newsletter 是个去处。
本文是 usesuperpowers.com 的原创教学,讲解的 caveman skill 来自 mattpocock/skills(
source_commit: 2bf7005),遵循其 MIT 许可。文中引用的原作规则版权归原作者;我们的拆解、实测与文字为原创。