news 2026/9/3 6:23:18

Caveman浏览器压缩实战:本地Chrome如何节省129倍Token

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Caveman浏览器压缩实战:本地Chrome如何节省129倍Token

Caveman浏览器压缩实战:本地Chrome如何节省129倍Token

【免费下载链接】caveman🪨 why use many token when few token do trick — Claude Code skill that cuts 65% of tokens by talking like caveman项目地址: https://gitcode.com/GitHub_Trending/caveman1/caveman

Caveman 是一个开源 Token 节省工具,它的 Caveman Browse 功能通过连接本地 Chrome 浏览器,把网页的无障碍树压缩成精简结构,让 AI 智能体读取页面时只花 121 个 Token——比 Playwright 基线小 129.8 倍。整个过程无需任何云端服务,数据留在本机。

为什么浏览器操作会吃掉海量 Token?

当 AI 智能体(如 Claude Code)需要操作浏览器时,它必须"看懂"页面。传统的做法有两种:

  • 截图:图片 Token 消耗高,且文字信息无法精确检索;
  • 完整无障碍树(AX Tree):Chrome 原生的Accessibility.getFullAXTree返回的是原始 JSON,一个 200 行的运营后台表格页就有398,494 个 Token

就算用 Playwright 的 ARIA 快照优化后,也要 15,704 个 Token。页面越大,智能体"看到"的成本越高——而其中 99% 的内容跟你当前要做的操作毫无关系。

Caveman Browse 的思路是:别给智能体看整个页面,只给它看它要操作的那几个元素

工作原理:四步压缩流水线

Caveman Browse 是一个本地 MCP(Model Context Protocol)服务器,工作流程如下:

  1. 附着 Chrome:通过 Chrome DevTools Protocol 连接你本机已安装的 Chrome,无需额外浏览器实例;
  2. 读取无障碍树:抓取真实 Chrome 的Accessibility.getFullAXTree
  3. 强制压缩:通过 Caveman 引擎的a11y压缩器(源码位于 browse/session.go 与 engine/compressors/axtree.go),只保留与任务最相关的节点;
  4. 可字节级恢复:原始完整数据先存入本地 CCR 存储,智能体随时可用恢复句柄(recovery handle)取回原始字节。

它对外只暴露 4 个工具:browser_snapshot(快照)、browser_act(点击等动作)、browser_eval(执行 JS)、browser_recover(恢复原始数据)。

实测数据:121 Token 对抗 15,704 Token

基准测试使用 Chrome 151 + 固定版本 Playwright,每个数据为 5 次独立运行的中位数,详见 browse/BENCHMARK.md。

大页面:运营后台 200 行订单表格

表示方式Token 数对比原始 AX 树
原始Accessibility.getFullAXTreeJSON398,494
Playwright ARIA 快照15,704少 96.06%
Caveman 完整结果(含 UID、恢复句柄、精确计数)13,368少 96.65%
Caveman 聚焦查询ORD-0173121少 99.97%(比 Playwright 小 129.8 倍)

关键点在于最后一行:当智能体明确"我要处理订单 ORD-0173"时,Caveman 的query参数只返回最相关的最高分匹配节点及其祖先节点(最多 12 个),最终仅121 个 Token——而 Playwright 基线是 15,704 个。

小页面:诚实的失利

在极小的结账表单页上,Caveman(111 Token)反而比 Playwright(67 Token)更大。这是官方主动披露的:Caveman 额外返回了操作 UID、恢复句柄和精确 Token 计数,而这些能力在微型页面上"不划算"。官方没有宣称"任何页面都赢",这正是这个项目可信的原因。

快速上手:从安装到首次快照

一键安装 Caveman

npm install -g @caveman-ai/cli && caveman setup --install

完整安装说明见 INSTALL.md(支持 Windows/macOS/Linux,需 Node.js 18+)。

用 Caveman Browse 读取网页

caveman browse https://example.com "pricing" # 带查询词的聚焦快照 caveman browse act <uid> click # 对指定元素执行点击 caveman browse eval 'document.title' # 执行 JS 表达式 caveman browse recover <handle> # 恢复字节级原始数据 caveman browse close # 关闭共享 Chrome

也可直接构建独立二进制:

go build ./browse/cmd/caveman-browse

MCP 方式接入任意智能体时,用caveman tools browse <url> "<query>"即可,详见 docs/technical/local-tools.md。

查询聚焦:大页面的黄金用法

对大型页面,永远带上 query 参数browser_snapshot.query是专为大页面设计的 Token 高效路径:它保留最匹配的无障碍节点及其祖先,同时在 CCR 中留存完整原始树。紧凑输出采用[uid] role "name"行格式,只有可操作元素才分配 UID Token。

安全设计:它不会偷偷做坏事

面向普通用户,几个安全细节值得了解:

  • 导航白名单:只允许http(s)about:blank和有界data:text/html,拒绝file:javascript:等特权协议;
  • 失败即关闭:未知句柄或动作会直接报错(cave_snake_code错误),绝不把原始 AX 树倾倒给智能体;
  • 本地优先:快照、CCR 存储全部在本地磁盘(~/.caveman/),不依赖 Caveman 云端账号;
  • 诚实标注:所有节省数据标记为inferred(推断值),因为真实计费数据只有服务商知道。

适用边界:什么时候该用、什么时候别用

场景是否推荐
大型后台页面、长列表、数据仪表盘✅ 强烈推荐,聚焦查询收益最大
同域内可预测控件的自动化操作✅ 官方 Phase 1 覆盖范围
极小表单页⚠️ 可能比裸 ARIA 文本略大,换取的是 UID 与恢复能力
跨源 iframe、下载、弹窗、任意站点操作❌ 明确列为延后功能

写在最后

Caveman Browse 证明了一个思路:智能体浏览器操作的成本瓶颈不在"操作"本身,而在"看到"。把 39 万 Token 的原始 AX 树压缩到 121 Token 的聚焦视图,同时保留字节级恢复能力——这就是"少即是多"在 AI 工具链里的落地。

想深入了解架构,可以阅读 docs/technical/architecture.md 与 docs/technical/engine.md;想看基准测试如何复现,browse/BENCHMARK.md 里附了完整的可执行命令。

【免费下载链接】caveman🪨 why use many token when few token do trick — Claude Code skill that cuts 65% of tokens by talking like caveman项目地址: https://gitcode.com/GitHub_Trending/caveman1/caveman

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/1 10:52:32

C#本地部署RMBG-2.0模型:基于OnnxRuntime的高精度背景去除实践

简介&#xff1a;图像分割是计算机视觉中的基础任务&#xff0c;其核心原理是通过深度学习模型对图像像素进行分类&#xff0c;区分前景与背景。这项技术的核心价值在于实现自动化、高精度的对象提取&#xff0c;广泛应用于电商产品图处理、人像摄影、内容创作等场景。在实际工…

作者头像 李华
网站建设 2026/9/1 5:50:36

两个月前端学习后的首次面试实录:八股文必须背熟

两个月前&#xff0c;我还坐在重庆某所大学的宿舍里&#xff0c;对着B站上的HTML教程一边敲代码一边怀疑人生。两个月后&#xff0c;我已经坐在一家互联网公司的会议室里&#xff0c;面对面试官抛来的“说一下闭包是什么”&#xff0c;沉默了将近十秒。这篇文章就是我的前端面试…

作者头像 李华
网站建设 2026/9/1 12:31:46

MinerU:4GB 显存跑通文档解析,输出 LLM 可用的 Markdown 与 JSON

MinerU&#xff1a;4GB 显存跑通文档解析&#xff0c;输出 LLM 可用的 Markdown 与 JSON 【免费下载链接】MinerU Transforms complex documents like PDFs and Office docs into LLM-ready markdown/JSON for your Agentic workflows. 项目地址: https://gitcode.com/GitHub…

作者头像 李华
网站建设 2026/8/31 9:11:29

彻底搞懂 JavaScript this 绑定:从调用规则到实战避坑指南

1. 从一段“莫名奇妙”的报错说起&#xff1a;this 为什么是 undefined先还原一个我前几天真实遇到过的场景。同事在代码评审群里发来一段代码&#xff0c;满脸困惑地问&#xff1a;“为什么这里 this 是 undefined&#xff1f;我明明在对象里定义的函数啊。”const user {nam…

作者头像 李华
网站建设 2026/9/3 5:40:04

H5与CSS八股文:从布局到微信生态的实战笔记

说实话&#xff0c;整理这份 H5、CSS 的八股文&#xff0c;是我面了好几轮前端之后才痛下决心做的事。以前总觉得背面试题没意思&#xff0c;但真到写项目的时候才发现&#xff0c;很多问题不是 "会不会写" 的问题&#xff0c;而是 "知不知道为什么要这么写&quo…

作者头像 李华
网站建设 2026/8/31 9:09:01

全栈实战:基于SpringBoot+微信小程序+LayUI的失物招领系统设计与实现

简介&#xff1a;全栈开发是构建现代Web应用的核心能力&#xff0c;它要求开发者掌握从前端到后端、从数据库到部署的完整技术链条。其原理在于通过前后端分离架构&#xff0c;实现业务逻辑、数据管理和用户界面的解耦与高效协作。掌握全栈技术对于开发者理解系统整体架构、提升…

作者头像 李华