做了一个浏览器插件,让自己的 Agent 也能直接操作日常使用的 Chrome

49 分钟前
 xyooyx

最近一直在研究 Browser Use ,也尝试了几种让 Agent 操作浏览器的方案。目前来看,主流方案大致有三种:

1. CDP 协议( Playwright / Selenium )

优势是技术成熟、生态完善,基本上各种浏览器操作都能覆盖。

但实际使用中有个比较明显的问题:独立启动的 Chrome 没有日常浏览器的账号登录状态;如果想接管已经在使用的 Chrome ,又需要提前配置远程调试参数,使用起来不够自然。

2. 浏览器插件( Extension )

这是我个人比较看好的方案。

不需要修改 Chrome 启动参数,可以直接复用用户日常浏览器的登录状态,也更适合个人 Agent 的使用场景。

Anthropic 和 OpenAI 的部分 Browser Use 产品也采用了类似的技术路线。

但问题是,这些厂商的浏览器插件通常只服务于自家 Agent ,不会直接开放给第三方 Agent 接入。部分产品的实际可用性也还有待完善,比如今天测试 WorkBuddy 时,就没能正常跑通。

3. WebContentsView + JS 注入

这种方案灵活性比较高,可以自行控制浏览器容器和脚本执行逻辑。

缺点是需要自己维护 WebContentsView 及相关能力,而且和独立 Chrome 类似,也会面临用户日常账号会话无法直接复用的问题。


综合体验下来,我更倾向于浏览器插件这条路线。

但随之而来的问题是:

如果我们自己开发了一个 Agent ,能不能也像这些大厂的 Agent 一样,直接控制用户日常使用的 Chrome ?

为了解决这个问题,最近做了一个小工具:Xtaff Browser。

Chrome 插件地址: https://chromewebstore.google.com/detail/xtaff-browser/ojklapkgpijghmlifajbmldghnhmejfh

它的思路比较简单:通过 Chrome 插件提供浏览器操作能力,再通过 MCP 将这些能力开放给自己的 Agent 。

使用流程基本只有三步:

  1. 在 Chrome 中安装 Xtaff Browser 插件
  2. 给自己的 Agent 配置对应的 MCP
  3. 开始让 Agent 操作浏览器

比如浏览论坛、读取网页信息,或者操作一些已经登录的业务系统,都可以直接复用当前浏览器环境,不需要再单独启动一个 Chrome 。

除此之外,还做了两个辅助功能:

目前插件不涉及向外部服务发送请求,相关数据均保存在浏览器本地。

更完整的图文介绍和实际使用效果放在这里:

https://x.com/qiwiview/status/2118566997126701380

项目还在持续完善中,欢迎交流,也欢迎反馈使用中遇到的问题。

100 次点击
所在节点    分享创造
1 条回复
xyooyx
38 分钟前

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1256238

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX