
ChenyuHeee/dsh-browser-playwright
30最近提交 2026年8月14日
dsh-browser-playwright DSH 插件
该插件通过 Playwright 为 DeepSeek Harness 智能体提供真实的浏览器控制能力。它使用无障碍快照和稳定的元素引用进行交互,避免了脆弱的 CSS 选择器。提供了17个工具,包括导航、点击、填表、标签管理、截图、结构化提取以及可配置的 JavaScript 执行。
如何安装 dsh-browser-playwright DSH 插件
dsh plugin --profile <name> add dsh-browser-playwright来源命令需要人工核对。复制不会执行命令。
dsh-browser-playwright DSH 插件数据来源
dsh-browser-playwright DSH 插件快照日期:2026年8月16日
discovered
dsh-browser-playwright DSH 插件能做什么
- 打开 URL 并返回含有稳定元素引用的无障碍快照
- 点击、填写、按键、滚动以及管理浏览器历史
- 管理标签页:列出、打开、切换、关闭
- 截取屏幕截图并作为持久化图片附件存储
- 通过自然语言指令从页面中提取结构化数据
- 在页面中执行 JavaScript 表达式(默认关闭)
- 可配置的浏览器启动选项、超时、域名白名单和快照预算
dsh-browser-playwright DSH 插件适合哪些场景
- 在 AI 智能体工作流中自动填写和提交网页表单
- 抓取需要 JavaScript 渲染的动态内容
- 跨多个标签页测试多步骤用户流程
- 截图网页进行视觉验证
- 通过自然语言查询提取结构化数据(如产品价格、表格行)
dsh-browser-playwright DSH 插件适合谁
- 使用 DeepSeek Harness 构建需要与网页交互的 AI 智能体的开发者
- 希望将浏览器自动化集成到 AI 驱动测试流水线中的 QA 工程师
- 研究原型化自主网页智能体、避免 CSS 选择器脆弱性的研究人员
dsh-browser-playwright DSH 插件的限制
- 仅支持 Chromium 系列浏览器(Chrome、Edge、Chromium);不探测 Firefox 和 WebKit
- 跨域 iframe 显示为无引用的叶子节点,无法交互
- browser_evaluate 默认关闭,需显式配置,并信任智能体执行任意 JavaScript
- browser_extract 需要单独配置 LLM 路由,未配置时会报错
- JS 驱动的导航(如按钮的 location.href)可能绕过 allowedDomains;需要外部网络防护实现硬隔离
dsh-browser-playwright DSH 插件的仓库 README 摘录
以下文字摘自 dsh-browser-playwright DSH 插件的上游仓库 ChenyuHeee/dsh-browser-playwright 的 README,版权归原作者,仅作引用。
Playwright-powered browser capability for [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness): the agent drives a real browser through **accessibility snapshots with stable element refs** — no CSS-selector guessing, no full-DOM dumps. One browser session per harness session, tabs, screenshots as durable image attachments, structured extraction, and gated JavaScript evaluation. ## Install ```sh dsh plugin --profile <name> add dsh-browser-playwright ``` The bundle mounts three rows: the `ctx.browser` seam (`service`), the Playwright provider (`playwright`), and the model-facing tool family (`tool`). ### Browser binary The provider probes `chromium` → `chrome` → `msedge` → `edge` channels automatically; any installed Chromium-family browser works with **zero download**. To use Playwright-managed Chromium instead: ```sh npx playwright-core install chromium # Restricted networks (e.g. mainland China): PLAYWRIGHT_DOWNLOAD_HOST=https://cdn.npmmirror.com/binaries/playwright npx playwright-core install chromium ``` Or pin a binary: `launch.executablePath` / `launch.channel` in the plugin config. ## Tools The default `toolPrefix` is `browser_`. Every action returns a
阅读完整 README仓库许可: MIT
dsh-browser-playwright DSH 插件常见问题
如何安装 dsh-browser-playwright 插件?
在终端中运行 `dsh plugin --profile <name> add dsh-browser-playwright` 即可将插件添加到你的 DeepSeek Harness 配置文件中。请确保已安装基于 Chromium 的浏览器(Chrome、Edge 或 Playwright 管理的 Chromium)。
支持哪些浏览器?
该插件仅支持 Chromium 系列浏览器。它会自动探测 `chromium`、`chrome`、`msedge` 和 `edge` 的顺序。你也可以通过 `npx playwright-core install chromium` 安装 Playwright 管理的 Chromium。不支持 Firefox 和 WebKit。
如何启用 JavaScript 执行(browser_evaluate)?
在配置文件的 `browser-tool` 部分设置 `allowEvaluate: true` 即可。注意这会使智能体能够执行页面中的任意 JavaScript,请谨慎使用,并考虑结合 Harness 的审批/权限策略。
为什么 browser_extract 会报错?
`browser_extract` 工具需要单独配置 LLM 路由。你需要在 `browser-tool` 配置中设置 `extract.provider` 和 `extract.model`,例如 `extract.provider: deepseek-official` 和 `extract.model: deepseek-v4-flash`。未配置时会报错并给出可操作的提示。
如何处理延迟加载的动态内容?
你可以使用 `browser_wait` 工具等待一段有界的时间,让懒加载内容渲染。等待后调用 `browser_snapshot` 将返回更新后的页面状态。插件还会处理导航过程中的快照,等待新文档稳定后再返回。