DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Playwright — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins

dsh-playwright

Playwright

与您的 DeepSeek Harness AI 一起使用一个共享的 Playwright 浏览器。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add dsh-playwright@0.1.0
README兼容性版本

兼容性与来源证明

Playwright 以 dsh-playwright 发布,当前版本为 0.1.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
npm
Registry 更新时间
2026/9/20

版本

0.1.0stable
2026/8/15

相关插件

正在加载相关插件…

最新版
0.1.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
2.3 MB
文件数
16
Surface
web
许可证
MIT
发布源
npm
GitHub
★ 1
周下载
156
安全扫描
✓ v0.1.0 扫描通过
最近提交
2026/8/15
查看源码 ↗项目主页 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 search-research 分类下经过校验的插件。

Browser Skill Dsh Plugin@wxg-prc-cpg/browser-skill-dsh-plugin向模型提供 BrowserSkill 浏览器自动化(browser_* 工具)的 DeepSeek Harness 工具插件Weknora@wxg-prc-cpg/dsh-weknora适用于 DeepSeek Harness (dsh) 的 WeKnora 知识检索工具:通过自有知识库进行语义搜索、文档阅读以及 RAG/代理回答。Free Searchdsh-free-searchDeepSeek Harness 的免费网页搜索:13 个引擎(Bing/DuckDuckGo/AnySearch/SearXNG/Exa/Tavily/Keenable/Firecrawl 无需密钥;Parallel/Perplexity/SerpBase/DeepSeek 需要密钥),支持时间筛选、平台搜索和 web_fetch,并提供网页设置界面。Find Plugindsh-find-plugin在代理中查找 DeepSeek Harness 插件——实时搜索 GitHub 上的 dsh-plugin 主题,并按星标数排序。

README

dsh-playwright

English | 中文

Use a real browser together with your DeepSeek Harness AI. You and the model share one isolated Playwright page per DSH session: you watch and interact in the Browser Use panel while the model reads, sees, clicks, types, and navigates the same live page.

A user and AI operating the same Playwright browser in DSH

What you and the AI can do

The Browser Use panel and the model tools operate on the same page state.

  • Watch together: Chrome CDP pushes repaint frames through a loopback-only binary WebSocket into a stable canvas. The panel shares width with the conversation and has a draggable percentage divider.
  • Navigate: open HTTP(S) URLs and reload the current page.
  • Read pages: get the URL, title, visible text, and temporary ids for visible links, buttons, inputs, and other interactive elements.
  • Use the pointer: target a visible element id or screenshot coordinates; move the pointer; click, press, and release the left, right, or middle button.
  • Drag: send down, one or more move actions, then up with the same mouse button.
  • Use the keyboard: type text; press keys and chords such as Enter, ArrowUp, Control+A, or Meta+K; hold a game key with down and release it with up.
  • See screenshots: return a durable PNG image block to an image-capable model.
  • Confirm clicks: optionally draw a post-processed RGB square at the last successful click. The user has an independent 显示上次点击 switch in the panel.
  • Work by session: every DSH session owns a separate BrowserContext and Page. The plugin restores the last top-level URL after an unexpected Chrome exit.

Model tools

browser_navigate

Open a URL and return a semantic snapshot.

{"url":"https://example.com"}

browser_snapshot

Return bounded page text plus ids such as e1. Ids are valid only for that snapshot; take another snapshot after navigation or dynamic UI changes.

browser_click

The default is a left click. Target either element_id or both x and y.

{"element_id":"e1"}
{"action":"click","button":"right","x":640,"y":400}

Move without clicking:

{"action":"move","x":640,"y":400,"steps":20}

Drag:

{"action":"down","button":"left","x":200,"y":200}
{"action":"move","x":600,"y":400,"steps":30}
{"action":"up","button":"left","x":600,"y":400}

Supported buttons: left, right, middle. Supported actions: click, down, move, up.

browser_type

Replace the value of a visible editable element and optionally submit with Enter.

{"element_id":"e3","text":"DeepSeek Harness","submit":true}

browser_keyboard

Simulate keyboard events on the current focus or focus one element first.

{"action":"type","value":"hello","element_id":"e3","delay_ms":50}
{"action":"press","value":"Control+A"}
{"action":"down","value":"ArrowRight"}
{"action":"up","value":"ArrowRight"}

Supported actions: type, press, down, up.

browser_screenshot

Return a PNG through DSH's native attachment and image-block pipeline. A model route must declare image input.

Optionally mark the last click without modifying the page DOM:

{
  "show_last_click": true,
  "marker_r": 0,
  "marker_g": 255,
  "marker_b": 0,
  "marker_size": 60
}

RGB channels are integers from 0 to 255. show_last_click is optional and defaults to false.

Requirements

  • DeepSeek Harness 0.1.0-rc.6.
  • Node.js ^22.19.0 or >=24.0.0.
  • Google Chrome or Chromium installed on the Host.
  • An image-capable model route for browser_screenshot.

Install

After publication:

dsh plugin --profile web add dsh-playwright
dsh web --port 3081

For local development:

pnpm install
pnpm run verify
dsh plugin --profile web add link:/absolute/path/to/dsh-playwright
dsh web --port 3081

Use the Browser Use button on the right edge to open or close the panel. Drag its left divider to change the Browser Use share from 10% to 80%. Above 55%, the plugin collapses DSH's left Workspace/session selector while preserving the conversation; below 48%, it restores only a selector it collapsed itself.

Multimodal model configuration

For a configured llm-pi-ai route, declare image input:

llm-pi-ai:
  providers:
    my-provider:
      models:
        - id: my-vision-model
          name: My Vision Model
          input:
            - text
            - image

Declaring image input is a claim about the endpoint. The provider rejects the request if the endpoint does not actually accept images.

Configuration

  • browserExecutablePath: explicit Chrome/Chromium executable; omitted uses common macOS/Linux locations.
  • viewportWidth / viewportHeight: shared page viewport.
  • navigationTimeoutMs: Playwright operation timeout.
  • actionSettleMs: delay before returning post-action state.
  • screencastQuality: CDP screencast JPEG quality from 30 to 90; default 60.
  • maxSnapshotChars / maxSnapshotElements: semantic snapshot bounds.
  • allowPrivateHosts: permits localhost/private-network targets when true; default false.

Security and lifecycle

The RPC and screencast endpoints accept loopback same-origin clients only. HTTP(S) requests to localhost, literal private addresses, and hostnames resolving to private addresses are blocked by default, including subresources. Enable allowPrivateHosts only for trusted tasks.

The plugin launches Chrome lazily. Each DSH session receives a separate BrowserContext and Page. On teardown, queued actions settle before Chrome closes. If Chrome exits unexpectedly, the next operation launches a replacement browser and restores affected sessions to their last top-level URL.

Browser sessions do not reuse the user's Chrome profile, cookies, or login state. Popups and downloads are not exposed. Private-host blocking is a network guard, not a complete sandbox for untrusted websites.

Model Experience

Semantic tools return bounded text into durable tool results. browser_screenshot stores its PNG through DSH attachments and returns a native image block, so it is available only to a route that declares image input. The prompt contribution teaches the model to refresh stale element ids, use screenshot coordinates for canvas pages, release held mouse/keyboard inputs, and request a marked screenshot when it needs to verify a click.

License

MIT