Skip to main content
Back to plugins
B

dsh-browser

ben7am1n/dsh-browser

Browser automation for DeepSeek Harness: Playwright-powered open/click/type/screenshot/eval tools so the agent can drive real web pages.

Install

dsh plugin --profile web add github:ben7am1n/dsh-browser

README

dsh-browser

Browser automation for DeepSeek Harness: a Playwright-powered browser_* tool family so the agent can drive real web pages — fill forms, click through flows, scrape SPA content, and take screenshots it can then view with read_image.

Install

dsh plugin --profile <name> add dsh-browser

The plugin depends on playwright-core (bundled with the package) and needs a Chromium-based browser. It tries chromium, then chrome, then msedge channels automatically; if none is found:

npx playwright install chromium

or configure launch.executablePath / launch.channel in the plugin config.

Tools

ToolPurpose
browser_openOpen (or reuse) the browser, optionally navigate to a URL
browser_navigateNavigate the current page and wait for load
browser_clickClick an element by CSS selector
browser_typeType text into an input (optionally press Enter)
browser_selectSelect option(s) in a <select>
browser_screenshotCapture a PNG to <workspace>/browser-screenshots/; view it with read_image
browser_evalEvaluate JavaScript in the page, return JSON
browser_get_text / browser_get_htmlRead visible text or outer HTML
browser_waitWait for slow pages / lazy content
browser_closeClose the browser (reopenable by any tool)
browser_installExplain or verify browser availability

The browser persists across tool calls — open once, drive many times, close when done.

Configuration

FieldDefaultMeaning
launch.executablePathAbsolute path to a browser binary (takes precedence)
launch.channelauto (chromiumchromemsedge)Browser channel
launch.navigationTimeoutMsDefault navigation/action timeout
launch.viewport1280×800Page viewport
screenshotDirbrowser-screenshotsScreenshot directory under the workspace
# profile cordis.patch.yml
- id: browser
  config:
    launch:
      channel: chrome
      navigationTimeoutMs: 30000

Notes

  • Runs headless by default; a headed mode may come later.
  • Screenshots land in the calling agent's workspace so the model can read them with read_image.

License

MIT

Related plugins