dsh-browser:为 Agent 提供有头 Chromium 与可保持会话的浏览器工具

前言

在 DSH 里让模型「看网页、点按钮、填表单」,常见做法是 HTTP 抓取或无头浏览器脚本:前者拿不到完整交互后的 DOM,后者往往和你在桌面里用的浏览器不是同一套运行时,调试也不直观。dsh-browser(@istarry/dsh-browser)走的是另一条路——在 harness home 下安装并复用一套 Chromium,通过 browser_open 与 browser_interact 给 Agent 一个真实的有头浏览器,多次工具调用之间会话状态保持。下面介绍它是什么、怎么装、使用时要注意什么。

这是什么

维护者 iStarryDust 在 GitHub 开源的 DSH 插件,社区目录分类为联网工具。一句话定位:在 DSH 进程里管理 Chromium 运行时,并向 Agent 暴露两个浏览器工具,页面状态在同一会话内可延续。

当前包版本为 0.1.1(见仓库 package.json),许可证 MIT。

核心功能

两个 Agent 工具

  • browser_open:打开页面,返回可交互的页面状态。
  • browser_interact:在同一浏览器会话里点击、输入、滚动、读取;状态在多次调用之间保持。

设置页与 Chromium 管理

插件包含设置 UI(包 @istarry/dsh-client-ui-settings-browser),用于:

  • 控制是否允许 Agent 使用浏览器(配置项 agentUseBrowser)。
  • 编辑自定义请求头(例如特定 UA、Referer)。
  • 查看 Chromium 安装状态。

Chromium 不随 npm 包分发,由插件在运行时检测、安装并复用,安装在用户目录下的 harness home(~/.dsh),不写入系统全局浏览器路径。

包结构(职责拆分)

包 职责
@istarry/dsh-browser Chromium 运行时管理、browser_open / browser_interact 工具、安装/检测 Remote
@istarry/dsh-client-ui-settings-browser 设置页:Agent 使用开关、请求头编辑、安装状态

安装与启用

在 DSH 环境中执行官方安装命令:

dsh plugin add @istarry/dsh-browser

装完后重启 DSH 服务。README 写明:首次使用需要在设置页里安装 Chromium(约 400MB 下载、数百个文件),装好后不会重复下载。

典型用法(工作流)

README 未给出逐条对话示例,可复现的流程如下:

  1. 安装插件并重启 DSH。
  2. 打开插件设置页,完成 Chromium 安装;按需配置请求头,并决定是否开启 agentUseBrowser。
  3. 在会话中让 Agent 调用 browser_open 打开目标 URL,拿到页面状态。
  4. 在同一会话中继续调用 browser_interact 完成点击、输入、滚动或读取内容;无需每次重新开浏览器。

工具名与行为以仓库 README 为准;peer 依赖包括 @deepseek-ai/cordis、@deepseek-ai/dsh-tools、@deepseek-ai/dsh-session 等(见各包 package.json)。

权限、兼容性与适用场景

务必知晓的行为

这部分在 README 里单独强调,安装前应读完:

  • 会下载并安装 Chromium 运行时到 ~/.dsh(首次约 400MB,需要网络)。
  • 会启动有头浏览器进程(不是无头),占用内存并出现窗口。
  • browser_interact 允许模型操作真实网页(点击、输入、提交表单)。只有在设置页明确开放 agentUseBrowser 时,才应让 Agent 使用;模型可能接触到你打开的任何页面。

插件以当前 DSH 进程权限运行;安装前建议查看 源码与 LICENSE,确认符合你的安全策略。

兼容性

  • README 记载实测环境:DSH 0.2.0-rc.2。
  • Chromium 由插件在用户目录安装,与系统已安装的 Chrome/Chromium 相互独立。

适合谁

  • 需要在 DSH 里做可交互网页操作(登录后页面、表单、动态渲染)的智能体开发者。
  • 希望用有头 Chromium 对照页面行为,而不是只靠静态 HTTP 或无头脚本的场景。

不适合只想轻量抓公开 HTML、且不愿在本机多一个浏览器进程与约 400MB 运行时下载的环境。

结尾

dsh-browser 把「真实有头 Chromium + 会话保持」收进 DSH 插件:两个工具覆盖打开与交互,设置页管 Chromium 安装、请求头与 Agent 开关。社区目录与 GitHub 如下,细节以 README 为准。

羽毛球分组比赛记分
小程序二维码

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

Xiaoye