ChenyuHeee/dsh-browser-playwright ↗★ 2
dsh-browser-playwright
Playwright-powered browser capability for DeepSeek Harness: accessibility-snapshot interaction with stable element refs, session-scoped browser sessions, screenshots as attachments.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:ChenyuHeee/dsh-browser-playwright说明文档
阅读完整 README ↗dsh-browser-playwright
Playwright-powered browser capability for 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
dsh plugin --profile 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:
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 fresh snapshot, so refs always come from the latest result.
| Tool | Purpose |
|---|---|
browser_navigate | Open a URL (http/https only) and return the snapshot |
browser_snapshot | Snapshot the current page: URL, title, visible elements with ref= ids |
browser_click | Click the element with a ref from the latest snapshot |
browser_fill | Replace an input's value; selects match by option label |
browser_press | Press a key (Enter, Tab, Escape, ArrowDown, …) on an element |