你让本地 AI 打开一个购物网站,只想查订单状态,它却先吞下一整页 HTML:导航栏、广告、样式和重复模板全算进去。模型的“上下文窗口”——一次能读取和处理的文本总量——很快就被塞满,留给任务说明和操作历史的空间反而不够。barebrowse 想解决的就是这笔浪费:先把网页整理成简短、可操作的说明,再交给模型。
不读网页源码,先看语义骨架
据项目作者在 Reddit 的介绍,barebrowse 会把 URL 转成经过裁剪的 ARIA snapshot,并尝试去掉导航、广告和样板内容。
ARIA 可访问性树原本供屏幕阅读器等辅助工具使用。它依据网页语义,突出标题、按钮、输入框等关键元素。把它交给 Agent,就像不给人看商场的施工图,而只给一张标有柜台、入口和电梯的导览图。作者称,这种表示比原始 HTML/DOM 消耗更少 token;token 可以粗略理解为模型处理文字时使用的计量单位。不过项目没有公布测试页面、计算方法或具体降幅,因此目前不能把效果写成确定倍数,也不能推断它适用于所有网页。
借用你已有的浏览器
barebrowse 还避开了 Playwright——一种自动控制浏览器、模拟点击和输入的完整工具链。按作者说法,它不捆绑 Chromium,而是通过 CDP 直接驱动已有的 Chrome、Brave、Edge 或 Chromium。CDP 是 Chrome 系浏览器开放的远程调试协议,相当于一套让程序操控浏览器的接口。
项目还称,它能复用真实浏览器 profile 中的 cookies,让 Agent 访问已登录页面,减少另写登录脚本的需要。它同时提供 MCP server 和 CLI,方便接入 Agent 或从命令行调用;实现采用 Vanilla JS 与 ES modules,要求 Node 22+,有两个依赖,并以 MIT 许可证开源。
为什么值得关注
它的重点不是让 Agent 更聪明,而是让网页入口更节省。对上下文较短的本地小模型来说,少读无关页面内容,就可能给任务指令和连续操作腾出更多位置。这是一种朴素但实用的系统取舍。
局限与未知
- 目前信息只有项目方单一信源,兼容范围、依赖数量和功能完整性尚未独立验证。
- 裁剪是否会误删关键内容,以及 token 实际能节省多少,尚无可复现实验。
- 已登录页面能否直接使用,仍可能受 profile 锁定、认证机制、CDP 配置和安全策略影响。