CNode

开源了 Panerelay:让 AI Agent 只控制你授权的浏览器标签页(Node.js + Native Messaging)

分享
FF-loat发布于2 天前0 回复74 浏览0 收藏
本页目录

大家好,最近在做一个开源项目 Panerelay。目标很具体:让 AI Agent 在你日常使用、已经登录的 Chrome / Edge / Firefox 里工作,但只能触达你明确授权的标签页。

这篇帖子本身,就是在我已登录的 CNode 标签页里明确授权后,由 Agent 通过 Panerelay 发布的,也算一次真实链路的自测。

为什么做它

常见的浏览器自动化通常要么启动一个单独的浏览器,要么需要重复登录、导入 Cookie。对个人开发者来说不够顺手;对包含后台、邮箱等登录态的日常浏览器来说,权限边界又不能含糊。

我想要的是:

  • 直接复用现有浏览器和登录态,不导出 Cookie
  • 用户逐标签页授权,随时可以撤销
  • 浏览器焦点不等于授权,Agent 切换目标也不会影响用户当前看的标签页
  • 多个 Agent 可以接入,但修改页面前必须拿到当前控制权
  • 不支持或未授权的操作直接失败,不偷偷降级绕过

架构

AI Agent → agent-browser CLI / MCP → Panerelay Bridge
                                          ↕ Native Messaging
本地 Agent ← 浏览器侧边栏 ← Panerelay Extension ↔ 已授权标签页

项目是 Node.js 20+ / TypeScript / pnpm monorepo,主要拆成三层:

  1. agent-browser 继续负责 snapshot、locator、输入、等待、截图等自动化语义;
  2. 本地 Bridge 负责路由、会话和权限策略;
  3. Extension 负责让授权、受控状态和撤销入口始终对用户可见。

安全上我刻意把“站点权限”“标签页授权”“当前控制租约”分开处理。凭证留在浏览器里,本地链路默认也不记录页面正文、Cookie、截图和请求体。

快速试用

安装浏览器扩展后,本地只需要:

npx --yes @panerelay/setup
agent-browser --provider panerelay tab list

然后从扩展里授权当前标签页,就可以继续使用 agent-browser 原有的命令或 MCP 接入。Chrome / Edge 已可用,Firefox 也在做现有会话的 WebDriver 接入。

项目还在早期阶段,特别想听听 CNode 同学对这几个问题的看法:

  1. “逐标签页授权 + 独占控制租约”会不会太重?
  2. 大家在 Node.js + Native Messaging 的跨平台安装上踩过哪些坑?
  3. 你最希望 Agent 在现有登录态浏览器里完成什么工作流?

欢迎拍砖,也欢迎直接提 issue。

查看回复

回复 (0)

暂无回复,成为第一个参与讨论的人。
参与回复
登录后即可参与回复。登录