dsh-local-browser-search:本地浏览器驱动的网页搜索与抓取插件

前言

DeepSeek Harness (DSH) 的插件生态允许开发者为智能体扩展能力。在进行网络搜索或网页抓取时,公共搜索 API 通常需要密钥、受区域限制或存在频率上限。这个插件通过 Chrome DevTools Protocol (CDP) 直接控制你本地已安装的浏览器,为 DSH 智能体提供无需 API Key 的搜索与抓取能力。

插件定位

  • 插件名称:dsh-local-browser-search
  • 维护者:YUANMINGXUE
  • 开源协议:MIT
  • 核心功能:为 DSH 智能体注册两个工具——browser_search(网页搜索)和 browser_fetch(页面抓取)。

安装与启用

使用 DSH 的 CLI 安装该插件。安装后需要重启 web 进程,工具才会生效。

dsh plugin --profile web add dsh-local-browser-search

安装完成后,重启 dsh web。插件会在智能体的工具集中注册上述两个工具。

配置项

插件默认配置保存在 cordis.patch.yml 中。你可以根据网络环境调整以下参数:

配置项 默认值 说明
headless true 是否无头运行(false 会打开可见窗口)。
engine bing 默认搜索引擎:bing、duckduckgo 或 google。
maxResults 8 单次搜索返回结果的上限。
timeoutMs 30000 工具调用的超时时间(毫秒)。
browserPath null 浏览器可执行文件路径。未设置时自动检测(Edge → Chrome → Brave)。

此外,你可以在环境变量中设置 DSH_BROWSER_PATH 来强制指定浏览器。

工作原理

插件运行在 DSH 进程上下文中,通过 Node.js 内置模块调用本地浏览器:

  1. 检测并定位本地已安装的 Chromium 浏览器(Windows 上默认为 Edge)。
  2. 以无头模式启动浏览器,并附加 --remote-debugging-port,同时挂载一个临时的用户配置文件。
  3. 利用 Chrome DevTools Protocol (WebSocket JSON-RPC) 驱动浏览器:
    • 访问搜索引擎,执行提取逻辑。
    • 读取返回的 JSON 数据(标题、URL、摘要)。
  4. 任务结束后,关闭浏览器进程并清理临时配置文件。

安全与权限说明

  • 数据隐私:插件不会使用任何已保存的用户配置文件、Cookie 或浏览历史。每次调用都会使用全新的临时配置文件。
  • 权限范围:作为 DSH 插件,该代码在 DSH 进程中运行,拥有与当前 DSH 进程相同的权限。它调用的浏览器是你本地已经在运行的浏览器。
  • 安全建议:在使用前建议检查源码,确保符合你的安全策略。

参考资料

  • 插件目录:https://www.skillhub.cn/plugins/YUANMINGXUE/dsh-search
  • 源代码:https://github.com/YUANMINGXUE/dsh-search
羽毛球分组比赛记分
小程序二维码

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

小夜