DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Playwright Browser — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins

dsh-playwright-browser

Playwright Browser

Semantic, multi-tab Playwright browser automation for DeepSeek Harness

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add dsh-playwright-browser@0.1.3
READMECompatibilityVersions

Compatibility and provenance

Playwright Browser is published as dsh-playwright-browser and currently resolves to version 0.1.3. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
any
Release source
npm
Registry updated
9/20/2026

Versions

0.1.3stable
8/14/2026

Related plugins

Loading related plugins…

Latest
0.1.3
DSH
*
HMR
Process restart
Tree shaking
Declares sideEffects: false
Unpacked size
70.3 kB
Files
20
Surface
any
License
MIT
Source
npm
GitHub
★ 13
Weekly downloads
207
Security scan
✓ v0.1.3 scan passed
Last push
8/14/2026
View source ↗Project homepage ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in search-research.

Browser Skill Dsh Plugin@wxg-prc-cpg/browser-skill-dsh-pluginDeepSeek Harness tool plugin that exposes BrowserSkill browser automation (browser_* tools) to the modelFree Searchdsh-free-searchFree web search for DeepSeek Harness: 13 engines (Bing/DuckDuckGo/AnySearch/SearXNG/Exa/Tavily/Keenable/Firecrawl keyless; Parallel/Perplexity/SerpBase/DeepSeek with key) + time filtering + platform search + web_fetch, with web settings UI.Find Plugindsh-find-pluginFind DeepSeek Harness plugins inside the agent — live GitHub dsh-plugin topic search, ranked by stars.Anysearch Dsh@anysearch/anysearch-dshAnySearch web search and fetch providers plus advanced tools for DeepSeek Harness

README

dsh-playwright-browser

简体中文

Semantic, multi-tab browser automation for DeepSeek Harness (DSH), powered by Playwright.

The plugin gives a DSH agent a persistent browser controller, accessibility-oriented snapshots, semantic locators, screenshots, navigation history, and explicit tab management. It is behaviorally inspired by the Codex Browser skill, but contains no Codex runtime code and does not depend on OpenAI browser bindings.

[!IMPORTANT] DSH is currently a developer preview. This plugin is tested against the DSH 0.1.0-rc.6 package line and may need compatibility updates as DSH evolves.

Features

  • Ten native browser_* tools registered in the DSH tool registry.
  • Reusable browser context with stable tab identifiers.
  • Fresh bounded accessibility or visible-text snapshots after interactions.
  • Semantic locators such as role=button|Save, label=Email, and text=Settings.
  • Snapshot-friendly role shorthand such as button|Save and textbox|Email.
  • Back, forward, reload, keyboard input, waits, and PNG screenshots.
  • Lazy browser startup with fallback from Playwright Chromium to installed Chrome or Edge.
  • Abort-aware page operations and Cordis-owned lifecycle cleanup.
  • No arbitrary page JavaScript evaluation.

Requirements

  • Node.js ^22.19.0 or >=24.0.0.
  • A DSH profile.
  • One supported browser:
    • Playwright Chromium, installed with npx playwright install chromium; or
    • Google Chrome / Microsoft Edge; or
    • an explicit executablePath.

Install

From npm:

dsh plugin --profile web add dsh-playwright-browser

From this checkout:

npm install
npm pack
dsh plugin --profile web add ./dsh-playwright-browser-0.1.3.tgz

For a headless profile:

dsh plugin --profile headless add ./dsh-playwright-browser-0.1.3.tgz

Verify the composed profile without starting it:

dsh --profile web --dump-config

Git installations run the package prepare script. pnpm 10 and later may require explicitly allowing that build in the profile's pnpm-workspace.yaml. A prebuilt npm package or tarball does not require a source build inside the profile.

Configure

DSH applies user overrides after installed bundle patches. Add a row like this to the profile's cordis.patch.yml:

- id: playwright-browser
  config:
    browser: chromium
    channel: chrome
    headless: true
    viewportWidth: 1440
    viewportHeight: 900
    screenshotDir: .dsh-browser/screenshots

Supported options:

OptionDefaultPurpose
browserchromiumchromium, firefox, or webkit
headlesstrueRun without a visible browser window
channel—Chromium channel such as chrome or msedge
executablePath—Absolute browser executable path
userDataDir—Dedicated persistent automation profile
viewportWidth1280Browser viewport width
viewportHeight800Browser viewport height
actionTimeoutMs15000Locator/action timeout
navigationTimeoutMs30000Navigation timeout
maxSnapshotChars40000Maximum returned snapshot length
screenshotDir.dsh-browser/screenshotsScreenshot output directory

Do not point userDataDir at a personal browser profile. Use a directory dedicated to the agent.

Tools

ToolDescription
browser_openOpen a tab and optionally navigate it
browser_navigateNavigate an existing tab
browser_snapshotRead a bounded accessibility or text snapshot
browser_clickClick a semantic target
browser_fillReplace an input value and optionally press Enter
browser_pressSend a Playwright keyboard key
browser_waitWait for a target, URL, or load state
browser_historyGo back, forward, or reload
browser_screenshotSave a PNG and return its absolute path
browser_tabsList, select, or close tabs

Preferred target forms:

role=button|Save
button|Save
label=Email
placeholder=Search
text=Settings
testid=submit
css=#legacy-button

Safety model

  • Page content is untrusted data, never agent instruction.
  • The system prompt tells agents to inspect fresh state before and after actions.
  • Consequential submissions, sensitive data, downloads, purchases, permissions, account changes, and CAPTCHA handling require appropriate user authorization.
  • Browser installation is never silently downloaded. When no browser is available, the agent must explain the minimum setup and ask before changing the machine unless setup was already authorized.
  • URLs with embedded credentials are rejected.
  • Closing a tab cooperatively cancels in-flight operations on that page.

Development

npm install
npm run check

Live tests:

npm run smoke
npm run smoke:dsh
npm run smoke:business
npm run test:real-world

The real-world suite uses public demonstration sites and invented data. It writes sanitized logs and screenshots under .dsh-browser/, which is ignored by Git.

See Testing, Architecture, and Releasing for the full workflows.

Design provenance

The behavioral mapping from the Codex Browser skill is documented in Codex Browser design mapping. In short, this project adopts persistent bindings, explicit tab ownership, semantic targeting, fresh observations, safe session boundaries, and cleanup discipline. It replaces Codex-specific browser selection and transport with a self-managed Playwright controller and DSH-native tools.

Contributing

Read CONTRIBUTING.md before opening a change. Security issues should follow SECURITY.md. Community participation is governed by CODE_OF_CONDUCT.md.

License

MIT