@alvinlui-hk/dsh-browser-bridge:让智能体读写右侧 Sidebar 浏览器里的页面

前言

在 DeepSeek Harness(DSH)里做需要「看网页」的任务时,常见做法是另开浏览器、复制链接,或让智能体通过通用联网工具拉取页面。那些方式往往拿不到你已在侧边栏登录后的画面,也无法像真人一样点选、输入。dsh-browser-bridge 把 Harness 右侧 Sidebar Browser 里当前打开的标签页接进智能体工具链:在你自己的会话里读正文、执行脚本、点击与滚动,桌面版还可截图。

下面按定位、能力、原理、安装与注意点说明该插件;安装命令与工具名均来自项目 README 与 package.json。

这是什么

  • 名称:@alvinlui-hk/dsh-browser-bridge(GitHub:alvinlui-hk/dsh-browser-bridge)
  • 维护者:alvinlui-hk
  • 分类:联网工具(社区目录 SkillHub 插件页 中的归类)
  • 许可证:MIT(见 npm 包元数据)
  • DSH 要求:engines.dsh 为 >=0.2.2-rc.1

启用后,智能体会多出一组 browser_* 工具,操作对象是你聊天窗口旁边 Sidebar 里正在浏览的标签页——使用你的 cookie、登录态和当前可见内容,而不是隔离的无会话抓取。

核心功能:browser_* 工具

README 中列出的工具如下,一步对应一种操作:

工具 作用
browser_status 列出 Sidebar 中已打开的标签(frame id、URL、标题、是否可读)
browser_open 在 Sidebar 新开一个 URL
browser_read 读取页面可见文本(含已登录视图)
browser_evaluate 在页面内执行 JS 表达式,返回 JSON 结果
browser_click 按 CSS 选择器或可见文本点击(HTML、SVG)
browser_type 向输入框输入并触发原生 input/change,可选回车
browser_press 向焦点元素发送按键(Enter、Escape、方向键等)
browser_scroll 上下滚动或跳到页顶/页底
browser_screenshot 保存页面 PNG(桌面版),再配合读图工具查看

每次调用仍受 DSH 常规模型工具审批规则约束;browser_evaluate 会在你打开的页面里执行任意 JavaScript,需把返回内容当数据处理。

工作原理与运行环境差异

插件拆成两半协作:

  1. Host(index.js):在 Harness Web 服务上注册 browser_* 工具,并提供同源路由 /browser-bridge/*。
  2. Client(client.js):运行在 GUI 页面,查找 Sidebar 浏览器 frame([data-sidebar-browser-frame]),轮询命令、在 frame 上执行并回传结果。

桌面版(Electron):Sidebar 为 <webview>,可 executeJavaScript、读 URL/标题、截图;跨域页面也可读写与脚本化。若数值回传通道异常,client 会通过页面 <title> 通道自动中继结果。

Web 版(普通浏览器打开 GUI):Sidebar 为沙箱 <iframe>。跨源页面无法读取或脚本化,这是浏览器安全边界,插件无法绕过。同源页面(例如挂在 GUI 主机后的本地 dev server)可完整使用;打开 URL 与导航在两种环境下均可用。

中文 README 还提到 v2.1.0 起桥接路由置于 DSH connection 防护栏之后(Host 绑定 loopback、Origin 检查、浏览器登录 cookie),命令 ID 使用随机 token,title 通道带 per-command nonce,以降低 DNS rebinding、跨站调用与伪造页面的风险。

安装与启用

推荐从 npm 安装,无需 git:

plugin_manager install_bundle @alvinlui-hk/dsh-browser-bridge

已安装 git 时也可从仓库安装:

plugin_manager install_bundle https://github.com/alvinlui-hk/dsh-browser-bridge.git

既无 git 也无 npm 时,可下载 GitHub Release 附带的 .tgz,再执行:

plugin_manager install_bundle <release 中 .tgz 资源的 URL>

或下载源码 ZIP,解压后用解压目录的绝对路径执行 plugin_manager install_bundle。

经插件市场索引(实验性 Discover):先在 Settings → Plugins 启用官方可选包「Plugin Market / 插件市場」,再添加索引 URL:

https://raw.githubusercontent.com/alvinlui-hk/dsh-plugin-index/main/index.json

索引会安装 npm 包 @alvinlui-hk/dsh-browser-bridge,更新时可能显示 update-available。

安装或更新后若桥接未连上,可将插件条目先关再开(set_plugin include:browser-bridge false → true),仍无效则刷新 GUI(F5)。若出现 ERR_PNPM_EPERM ... rename ...dsh-browser-bridge,README 建议先 remove_bundle,再删除 profile 下残留的 node_modules\@alvinlui-hk\dsh-browser-bridge 目录或 junction 后重装。

典型用法(可复现流程)

文档未给出固定「一键脚本」,但可按工具能力自行编排。常见顺序如下:

  1. 用 browser_status 确认 Sidebar 里有哪些标签、哪一页 readable。
  2. 需要新页时用 browser_open 打开 URL。
  3. 读内容用 browser_read;要从 DOM 取结构化数据时用 browser_evaluate。
  4. 表单或按钮操作用 browser_click、browser_type、browser_press、browser_scroll 组合。
  5. 桌面版需要视觉确认时,先 browser_screenshot,再用 Harness 读图能力查看 PNG。

在 Web + 跨域站点 场景下,第 3、4 步对目标站可能失败,应改用桌面版,或只操作与 GUI 同源的页面。

适用场景与注意

适合:需要在 DSH 对话旁同步浏览、并让智能体基于「你正在看的页面」做提取、轻量自动化或验收(内网控制台、已登录 SaaS、本地文档站点等)。桌面版适合跨域读写与截图;Web 版适合同源 dev 页面或仅需导航打开链接。

安全与权限:桥接仅接受 GUI 页面发起的同源请求,POST 须为 application/json。插件以当前 DSH 进程与 GUI 用户环境运行;安装前应查看 GitHub 仓库 源码与 MIT 许可。不要把未经验证的工具输出直接当作可执行指令。

社区目录站点与 DeepSeek / 幻方无官方从属关系,插件归属维护者仓库与 npm 包,不是「官方应用商店」内置能力。

结尾

dsh-browser-bridge 把右侧 Sidebar 浏览器变成智能体可编排的「现场网页」:一组 browser_* 覆盖列表、打开、阅读、脚本、交互与(桌面版)截图。选型时先分清 Desktop 与 Web 下跨域限制,再按 README 安装并处理桥接连接问题即可。

  • 目录页:https://www.skillhub.cn/plugins/alvinlui-hk/dsh-browser-bridge
  • GitHub:https://github.com/alvinlui-hk/dsh-browser-bridge
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye