前言¶
在 DeepSeek Harness(DSH)的开发与使用中,Agent 经常需要调用浏览器执行任务。常规做法中,浏览器每次启动都是全新的环境,无法复用之前的登录态。这导致 Agent 每次都需要重新进行登录流程,降低了效率。DSH 插件生态强调“一切皆插件”,下面介绍 dsh-uni-browser 插件,它为 Agent 提供了持久化的浏览器配置文件方案。
插件介绍¶
dsh-uni-browser 是一个为 DeepSeek Harness 提供持久化、可审计的 uni-browser 配置文件的插件。它由用户 baixianger 维护,旨在解决 Agent 在浏览器操作中无法保留本地状态的问题。通过该插件,Agent 可以使用独立的、带有特定登录信息的浏览器配置文件进行后续操作。
核心功能¶
该插件主要包含以下能力:
- 命名配置文件:支持创建独立的 Chromium 或 Camoufox 浏览器配置文件,支持 Unicode 名称,便于区分不同的使用场景。
- 持久化登录:能够保留本地 Cookies、localStorage 和 IndexedDB 数据,实现登录态的持久化。
- Agent 动作:通过提供的 API,Agent 可以执行导航、读取无障碍快照、点击、输入文本和按键等操作。
- 托管运行时:插件可以按需启动私有的本地守护进程来管理浏览器。
- 清晰的控制:提供“打开”、“停止”和“忘记”等操作。打开和停止仅控制浏览器进程,不删除本地状态;忘记操作则会确认后永久删除本地数据。
安装与启用¶
在安装之前,请确保当前运行环境在支持的系统范围内(详见下方注意事项)。安装命令如下:
dsh plugin --profile web add dsh-uni-browser@latest
安装完成后,可以通过以下命令访问浏览器:
dsh web
典型用法¶
使用该插件通常需要经过以下步骤:
- 打开 Settings → Uni Browser,创建一个配置文件。
- 对于需要手动登录的配置文件,保持 headless(无头模式) 禁用。
- 选择 Open,在可见的浏览器窗口中完成登录操作。
- 指令 Agent 在后续的浏览器任务中使用该配置文件。
- 执行
dsh web以启动浏览器服务。
运行时与环境¶
插件通过安装匹配的 uni-browser daemon 来管理浏览器进程。npm 会根据当前系统自动安装对应的运行时包,支持的系统包括 macOS ARM64/x64 和 Linux ARM64/x64。
- 浏览器引擎:运行时包默认复用系统已安装的 Chrome 或 Chromium。如果需要使用 Camoufox,可以通过环境变量指定其可执行文件路径。
- 环境变量:
UNI_BROWSER_CHROMIUM_BIN:选择 Chromium/Chrome 的可执行文件。UNI_BROWSER_CAMOUFOX_BIN:选择 Camoufox 的可执行文件。UNI_BROWSER_SOCKET或UNI_BROWSER_BIN:用于连接外部管理的守护进程。
注意事项¶
在使用过程中,需要注意以下几点:
- Windows 不支持:当前捆绑的运行时矩阵不包含 Windows 系统。
- 引擎安装:运行时包本身不安装浏览器引擎,需要依赖系统环境或手动指定。
- 版本独立:插件和运行时版本独立演进,新发布的上游运行时不会强制更新已安装的插件。
- 安全与数据:密码和 Cookies 不会作为配置或工具参数直接传递,而是保存在配置文件的本地存储中。
- 守护进程管理:卸载插件会停止由该插件启动的守护进程;如果使用外部管理的守护进程,卸载不会影响它。
总结¶
dsh-uni-browser 通过提供命名配置文件和持久化存储,简化了 DSH Agent 在浏览器环境下的操作流程。它将复杂的浏览器上下文管理封装为可控的工具,适合需要在 DSH 中处理登录态和本地数据交互的场景。