[开源] 给 agent-browser 做了个 Provider:复用日常 Chrome 登录态,不用调试端口,也不抢焦点

chaimaoyuan 2026-07-30 21:34 1

最近在用 agent-browser 给 Codex 和其他 Agent 接浏览器。

agent-browser 的 CLI 、snapshot/ref 和 MCP 都挺好用,但我一直想让它直接操作自己日常使用的 Chrome:保留现有 Profile 、登录态、扩展和已经打开的标签页,而不是另外启动一个自动化浏览器。

直接通过 remote-debugging-port 连接现有 Chrome 虽然可行,但实际使用时有几个问题:

- 需要用特殊参数重新启动 Chrome
- 某些版本和连接方式下会反复出现授权确认
- 自动化切换 target 时,可能把标签页切到前台、抢走焦点
- Agent 到底能控制哪些页面,不容易向用户解释清楚

所以我做了 Panerelay ,一个给 agent-browser 使用的本地 Provider:

任意 Agent → agent-browser CLI / MCP → Panerelay Bridge
↕ Native Messaging
Chrome 扩展 → 已授权标签页

它的几个主要区别:

- Agent 继续使用原生 agent-browser 命令,不重新实现 snapshot 、refs 、wait 、input 等能力
- 直接复用日常 Chrome 的登录态,不导出 Cookie ,也不需要重复登录
- 只暴露用户明确授权的标签页,控制状态可见并且随时可以撤销
- Agent 选中的标签页是 Agent 会话内的状态,不会切换用户当前正在看的 Chrome 页面
- 本地运行,不依赖 Panerelay 云服务

内部并没有绕开 CDP ,而是通过 Chrome 扩展把 CDP 收窄到明确授权的 target ,再由本地 Bridge 管理连接、权限和控制权。Agent 侧切换 target 只改变当前 Agent 会话的选择,不会改变 Chrome 窗口的前台标签页。

安全边界上,Chrome 网站权限、标签页授权和自动化控制权是三件分开的事情;聚焦页面不会自动获得授权,修改操作需要当前控制租约。Panerelay 默认也不会记录页面内容、Cookie 、凭证、Prompt 、截图或请求体。

简单验证:

agent-browser --provider panerelay tab list

安装方式:

1. 从 Release 下载扩展,在 chrome://extensions 中加载
2. 运行:

npx --yes @panerelay/setup

3. 在扩展中授权当前标签页,然后正常使用 agent-browser

项目目前在准备 0.1.0 ,MIT 开源,支持 macOS 、Linux 和 Windows:

https://github.com/F-loat/panerelay

另外扩展侧边栏也可以发现本机已安装的 Codex / Qoder ,不过这次最想验证的还是 agent-browser Provider 这条链路。

比较想听听大家的意见:对于这类操作日常浏览器的 Agent ,大家更在意能力完整、后台无打扰,还是权限边界和可撤销性?
最新回复 (0)
    没有回复
* 帖子来源V2EX
返回