先说说Agent和浏览器之间的「鸿沟」
你用过Agent吧?让它们写代码、跑脚本、分析文档,那都是小菜一碟。但一旦涉及到浏览器,问题就来了。
你想让Agent帮你爬个网页?它可能连登录都搞不定。
你想让它自动填个表单?它可能连那个按钮在哪都找不到。
你想让它截图验证结果?它可能连页面都没加载完就告诉你「任务完成」。
问题出在哪?
出在Agent没有「手」。
Agent有大脑,能思考,能推理,但它没有直接操作浏览器的能力。它需要通过API、需要写爬虫、需要处理各种反爬机制,还得自己维护登录态。
这就像给一个超级大脑装上一双塑料手,看着挺厉害,实际啥也干不了。
所以我想,干脆给Agent装个「真手」
浏览器插件是个好方案。
它天然运行在浏览器里,有完整的DOM访问权限,能操作任何元素,能读取任何内容,还能保持登录态。
但问题是,怎么让Agent和插件对话?
我折腾了几个方案,最后选了三层架构:

CLI是Agent直接调用的命令行工具,native-host是中间桥梁,Extension才是真正在浏览器里干活的那一个。
通信方式用的是Chrome Native Messaging,这是Chrome官方提供的插件和本地程序通信的协议,稳定、安全、性能也不错。
这个工具能做什么?
我把它设计成了一套完整的浏览器自动化工具集。
Tab管理:创建、关闭、激活标签页,就像你自己操作一样。
页面快照:这个功能我觉得特别好用。它会返回页面的可访问性树,给每个可交互元素分配一个ref标识符,比如r1、r2。Agent不用自己去猜CSS选择器,直接说「点r1」就行。
页面内容:能提取原始HTML,也能直接转成Markdown,把导航栏、广告这些乱七八糟的东西都去掉,只留正文。
页面截图:支持全页截图、元素截图,还能指定ref或selector来截取特定区域。
页面交互:点击、输入、选择下拉框、滚动、查询DOM、等待元素出现,应有尽有。
脚本执行:能在页面上下文中执行任意JavaScript,想干嘛都行。
导航:前进、后退、刷新、直接跳转到指定URL。
搜索:内置了百度和Bing搜索,不用自己打开浏览器搜,直接命令行就能搜。
Cookie操作:获取、设置、删除Cookie,登录态管理。
内容抓取:给个URL,它自动打开、提取Markdown、然后自己关闭标签页,一条龙服务。
说几个我觉得「卧槽」的场景
场景一:Agent自动调研竞品
Agent接到任务:「帮我调研一下最近AI行业有什么大新闻」。
它用browser-bridge搜索关键词,打开几个新闻页面,提取Markdown内容,总结报告。整个过程不需要人工干预,Agent自己就能把信息抓回来。
场景二:Agent自动填写表单
你想让Agent帮你注册个账号?给它URL和账号信息,它自己打开页面,找到输入框,填好信息,点提交。
场景三:Agent自动截图验证
Agent执行完一个网页操作后,想知道结果对不对?让它截图,对比一下就知道。
场景四:Agent自动维护登录态
很多网站需要登录才能看内容。browser-bridge能操作Cookie,Agent可以帮你维持登录状态,不用每次都重新登录。
怎么安装?
挺简单的。
class="language-bash">install/install.bat运行这个脚本,它会自动编译、配置、注册。
然后按提示在Chrome里加载extension/dist目录作为unpack扩展就行。
如果你用的是Windows,直接跑bat文件。如果你用的是其他系统,手动编译也很容易,文档里有详细说明。
项目结构
browser-bridge/├── extension/ # Chrome插件,TypeScript├── native-host/ # 中间桥梁,Go├── cli/ # 命令行工具,Go├── install/ # 安装脚本└── docs/ # 文档技术栈也很清晰:Extension用TypeScript,native-host和CLI都用Go。
通信协议用的是Chrome Native Messaging,4字节长度前缀加JSON,简单直接。
我觉得它最大的价值在哪
不是它能做什么,而是它让Agent能做什么。
以前Agent遇到浏览器就废,现在Agent可以像人一样操作浏览器。
它能自己上网查资料,能自己填表单,能自己截图验证,能自己保持登录态。
Agent的边界,一下子就被拓宽了。
但也要坦诚说几个问题
第一,它还在早期。功能基本都有了,但还有很多细节需要打磨。比如某些复杂页面的交互可能还需要优化。
第二,它需要Go环境。编译需要Go 1.23+,构建Extension需要Node.js。如果你没有这些环境,安装会稍微麻烦点。
第三,它是开源的。这意味着你可以自由使用、修改、贡献,但也意味着没有官方支持,遇到问题得自己解决或者提issue。
最后
我写这个工具,不是因为我觉得它有多完美,而是因为我真的遇到了这个问题,而且我真的想解决它。
Agent时代已经来了,但Agent的能力边界还卡在很多地方。浏览器自动化就是其中一个。
我希望这个工具能帮到你,也希望你能用它做出一些有意思的东西。
项目地址:https://github.com/knowwhythat/browser-bridge
欢迎提issue,欢迎提PR,欢迎star。
以上,既然看到这里了,如果觉得不错,随手点个赞、在看、转发三连吧,如果想第一时间收到推送,也可以给我个星标⭐~
谢谢你看我的文章,我们,下次再见。
/ 作者:玄策
夜雨聆风