
이미지: Caveman 화면 갈무리
摘要
- 用于Claude Code的开源技能Caveman,原本通过让智能体回复变短来减少输出令牌,现已扩展为两阶段方案,新增本地代理来进一步减少输入令牌
- 在固定的54次Claude Code基准测试中,该代理将服务商统计的输入令牌减少了33.2%,同时通过了全部18项正确性验证
- 开发者亲自说明,原版技能宣称的65%节省数字中,部分效果仅靠"简洁回答"这一条指令也能达到
- 입력 토큰 절감
- 프록시 적용 시 33.2% (54회 고정 클로드 코드 벤치마크, 18개 정답 체크 전부 통과)
- 출력 토큰 절감(원조 스킬)
- 최대 65%, 단 일부는 '간결하게 답하라' 지시만으로도 나오는 수치라고 명시
- 브라우저 자동화 벤치마크
- 200행 테이블 조회 121토큰 vs Playwright ARIA 기준 15,704토큰 (약 129.8배 차이)
- 스킬 자체 압축
- 설치된 SKILL.md 본문을 PNG로 변환해 1,069→415토큰 추정 (약 -61%)
- 지원 에이전트
- 클로드 코드·Codex·Gemini·Cursor·Windsurf·Cline·Copilot 등 30여개, 이 중 8개는 네이티브 래핑
- 라이선스
- 스킬·CLI·SDK는 MIT, 엔진·프록시·MCP 서버는 BSL-1.1(2030-06-21 또는 출시 4년 후 아파치 2.0 전환)
- 공개 주체
- Julius Brussee, 깃허브 저장소로 공개
开发者每次使用Claude Code这类AI编程智能体时,都要按令牌数量向模型提供商付费。对话越长,智能体读取文件、翻查日志越多,计费的令牌数就越多。最近在GitHub趋势榜上出现了一款旨在降低这项成本的开源工具。它的名字叫Caveman——其思路是让智能体像原始人一样说话简短,以此节省令牌。开发者Julius Brussee于8月20日发布了新版本。
从"说得短"到"读得短"
第一个版本"Caveman 1"是一款改变智能体回答方式的技能。原本像"React组件重新渲染是因为每次渲染都会创建新的对象引用,建议用useMemo包裹"这样的长篇解释,会被压缩成"每次渲染新对象引用。用useMemo包裹"这类简短表达,代码、命令、错误信息则保持原文不变,只压缩说明性文字。但这种方式只减少了智能体"说出"的令牌,却没有触及工具架构、文件、日志、对话记录等每轮都原样往返的"读取"令牌。
这次发布的"Caveman 2"和新的本地代理正是要填补这个空白。在智能体向模型提供商发送请求之前,代理会先压缩内容,必要时再按字节精确还原原文。开发方公布的固定54次Claude Code基准测试显示,与直接调用相比,该代理将服务商统计的输入令牌减少了33.2%,同时通过了全部18项正确性验证。
把文本变成图片的技巧
该代理的核心思路之一是利用计费方式的空隙。文本按令牌数量计价,而图片则采用不同的计算方式。因此代理会把压缩后的JSON工具列表、冗长日志、陈旧对话记录等密集文本块渲染成PNG图片后再发送。据公开的实测案例,一段8622字符的文本被转换为1568×232像素的单张PNG后,约2597个文本令牌被压缩为534个图片令牌。不过说明中提到,这种方式只在内容密集、行较长时才有收益,对于短行代码反而不利,系统会自动过滤此类情况。
同样的原理也被应用到技能本身,这就是"caveman convert"。它将已安装技能文件的正文转换为PNG页面,让模型以图片形式读取,针对Caveman技能自身的测量结果显示,令牌数从1069个降至预估的415个,减少约61%。
浏览器自动化与MCP工具
Caveman作为MCP(模型上下文协议)服务器公开了五个工具——caveman_compress、caveman_retrieve、caveman_stats、caveman_toon_encode、caveman_toon_decode。据介绍,在安装了Chrome的环境下运行的浏览器自动化功能,在查询一个200行运营表格的任务中仅使用了121个令牌,而Playwright基于ARIA的方式在同一任务中使用了15704个令牌。不过开发者也承认,在诸如结账表单这类条目较少的简单任务中,由于Caveman需要同时返回操作UID和用于还原的句柄,其令牌开销有时反而更大。
"诚实数字"65%的陷阱
可以明显看出开发者努力不夸大65%这一节省数字。该技能只减少输出令牌,输入和推理令牌不受影响,而且技能本身每轮还会额外消耗约1000到1500个令牌。开发者表示,在已经设置为简洁回答的工作流中,净节省效果甚至可能为负。仓库说明中写道:"Caveman never makes your agent dumber to make it cheaper"(Caveman绝不会为了降低成本而让智能体变笨)。
如何使用
据介绍,Caveman可在包括Claude Code、Codex、Gemini、Cursor、Windsurf、Cline、Copilot等30多个智能体中运行。使用方式大致分为两种。
- 如果只想使用技能,安装后若智能体未自动启用,可输入
/caveman命令。可通过/caveman lite|full|ultra|wenyan-lite|wenyan-full|wenyan-ultra调节强度,也可用/caveman off或切换回普通模式关闭该功能。 - 若想连输入令牌也一起减少,可用
caveman <agent>命令让本地代理包裹智能体。对于不在仓库列表中的框架,说明中提到可通过将baseURL指向代理地址来连接Vercel AI SDK、LangChain、LiteLLM、OpenAI Agents、CrewAI、PydanticAI等。
若想分析磁盘中积累的历史智能体使用记录,可运行caveman learn。该功能在本地以只读方式运行,无需账户即可使用,并会展示一份按令牌浪费程度排序的"Cave Score"报告。实际修复过的项目可通过caveman learn applied <sink_id>记录下来,下次运行时会提示该项是改善、不变还是恶化。遥测功能默认开启,可通过caveman telemetry off或环境变量DO_NOT_TRACK=1关闭。
开源,但许可证有所区分
技能本体、CLI以及TS、Python SDK采用MIT许可证,可自由使用。而负责实际运算的核心运行时——压缩引擎、代理、缓存引擎、浏览器自动化、MCP服务器——则以BSL-1.1许可证发布。仅限自身流量使用时,即便是商业服务也可免费使用,但若要以第三方托管或托管服务形式提供,则需要商业许可证。该BSL代码附带条款规定,将在2030年6月21日或各版本首次发布4年后(以较早者为准)自动转为Apache 2.0许可证。
基准测试一览
| 项目 | 节省幅度 | 备注 |
|---|---|---|
| 代理输入令牌(54次基准测试) | 33.2% | 全部18项正确性检查通过 |
| 技能输出令牌(原版Caveman) | 最高65% | 部分效果仅靠"简洁回答"指令也可达到 |
| 浏览器200行表格查询 | 129.8倍 | 相较Playwright ARIA基准 |
| 技能正文图片转换 | 约61% | 1069→415令牌(预估) |
编辑视角
这个项目有趣之处,不在于令牌节省本身,而在于它毫不掩饰节省方式的态度。大多数AI工具都把"快了几倍""省了百分之多少"这类数字打在标题上,而把附加条件藏进脚注。Caveman则反其道而行之——它把65%这个亮眼数字摆在前面,同时又在仓库说明里自曝,这个数字里大约一半左右仅靠"简洁回答"这一句提示词也能实现。这种坦诚并不多见。
从实际操作角度来看,这款工具瞄准的方向很明确。对于整天运行智能体编程工具的团队来说,工具架构、文件全文、日志每轮反复传输所累积的输入令牌成本,往往比想象中更高。而对于已经调优为简洁回答的设置来说,技能本身的开销反而可能造成损失,这一警告也值得认真对待。这种把文本转换为图片、钻计费体系空子的像素压缩方式,可能会促使模型提供商重新审视文本与图片令牌的定价政策。接下来几周内,Anthropic或OpenAI是否会就这类规避性压缩方式给出官方立场,还是选择默不作声,值得持续关注。若想亲自体验,可在waitlist页面预先注册。



评论