DSH Plugins Marketplace

DSH Plugins

Plugins

/

Tools & Capabilities

/

dsh-cdp-browser

d

dsh-cdp-browser

Manifest valid

CDP bridge to an already-running Chrome/Edge for DSH: screenshots, pixel assertions, DOM/CSS checks, and page JS evaluation over HTTP + WebSocket, with zero child processes, zero npm dependencies, and

hasBundlePatch

dsh-cdp-browser

Zero-spawn browser automation + pixel-level visual verification as a DeepSeek Harness plugin. Drives an already-running Chrome/Edge over CDP using Node built-ins only: global fetch + global WebSocket (Node ≥ 22) + zlib PNG decode. No child_process, no npm dependencies, no per-use approval.

Why zero-spawn

Plugins that spawn an engine and pipe its stdio (e.g. modlens) collide with the harness sandbox's pipe ban (EPERM/EINVAL) on every call. Connecting to a browser the user started themselves is plain network I/O — allowed in confined mode. The one manual step (launching the browser) happens outside the harness, so the model never needs approval again for visual checks.

Setup (once)

  1. Install into the profile (done via dsh plugin --profile web add file:<path>).

  2. Start your browser with CDP (the provided edge-debug.cmd does this):

    msedge.exe --remote-debugging-port=9222 --remote-allow-origins=* --user-data-dir=<dir> <url>
    
  3. Restart the Web GUI. The cdp_* tools appear in the next session.

Tools

ToolWhat it does
cdp_statusList tabs/targets of the CDP browser + browser version
cdp_openOpen (or reuse) a tab for a url; returns target id
cdp_evalEvaluate JS in a page (awaitPromise, returnByValue)
cdp_shotNavigate + PNG screenshot, saved to an absolute path
cdp_assertScripted interaction + deterministic checks (pixel / css / dom / js) with a pass/fail report

cdp_assert check shapes

checks: [
  { type: 'pixel', x: 0.5, y: 0.96, color: '#245edb', tolerance: 16 },  // relative coords 0..1 or absolute px
  { type: 'css', selector: '#taskbar', property: 'background-color', equals: 'rgb(36, 94, 219)' },
  { type: 'css', selector: '.xp-window', property: 'border-radius', matches: '^\\d+px' },
  { type: 'dom', selector: '.xp-desk-icon', text: 'My Computer' },
  { type: 'js', expression: 'window.__XP.selfTest()', equals: { ok: true } },
]
// every check accepts click: '#start-btn' | { selector } | { x, y } and waitMs

Development

node plugins/dsh-cdp-browser/test/e2e.mjs   # needs dev server + CDP Edge, starts nothing

Determinism notes (learned from the XP app's first plugin e2e):

  • Reload the page per test run. A long-lived tab accumulates state across scripted sweeps (windows, dialogs, menus) and can wedge openApp; a fresh navigate + skipBoot per suite is deterministic. probe-apps.mjs bisects per-app hangs when an app regresses.
  • Synthetic clicks toggle state. el.click() runs the real handlers — clicking a toggle twice flips it twice. One click per assertion.
  • Gradient surfaces need stop-aware sampling. Sample where a gradient stop dominates (flat zones or edges), not mid-gradient blends, or use tolerance-aware nearColor against computed-style values.

The package exposes ./cdp (targets, openTarget, withPage, Cdp, decodePng, samplePixel, nearColor, runChecks, savePng) for reuse outside the harness.

Comments

Loading…

Similar plugins

dsh-browser-cdp

by drscrewdriver

DSH 浏览器插件(原 dsh-ego-browser):让 Agent 通过 CDP 接入真实 Chrome —— 远程目标序列与激活、实时视频/截图回传、登录导入。Remote-CDP agent browser for DeepSeek Harness.

Workflow & AutomationTools & CapabilitiesDevelopment & InfrastructureTerminal & ClientsManifest valid

★ 18

↓ 6.2k/wk

NOASSERTION

TypeScript

Oct 28, 2026

dsh plugin --profile web add dsh-browser-cdp

by Aurora-Lucas

Model-facing Google Chrome tool: drives the installed Chrome over the DevTools protocol so front-end work can navigate, screenshot, inspect, and interact without per-call shell approval.

Tools & CapabilitiesManifest valid

★ 0

MIT

JavaScript

Oct 12, 2026

dsh plugin --profile web add @local/dsh-chrome-browser

by zengxiaolou

Annotation browser in the DSH sidebar: a real Chrome page streamed over CDP with input forwarded, where picking an element or selecting text attaches its source location, component stack, styles and a

Tools & CapabilitiesDevelopment & InfrastructureManifest valid

★ 1

MIT

JavaScript

Oct 26, 2026

dsh plugin --profile web add dsh-annotate-browser

by stuarthu

DeepSeek Harness (dsh) browser companion: Chrome side panel embedding the full dsh web UI + host plugins for page reading, HTTP capture, and browser control.

Tools & CapabilitiesManifest valid

★ 10

MIT

JavaScript

Aug 22, 2026

dsh plugin --profile web add dsh-chrome

by snow-The

Browser interaction for DeepSeek Harness: drive local Chrome/Edge via playwright-core (CDP). Open, snapshot, click, type, scroll, evaluate, screenshot. Real browser, local-only.

Manifest valid

★ 0

MIT

JavaScript

Oct 27, 2026

dsh plugin --profile web add @snow-the/dsh-browser

Chrome DevTools Protocol Plugin for DeepSeek Harness. Use chrome-remote-interface to connect to and control Chrome via CDP. The connection includes a graphical interface.

Tools & CapabilitiesManifest valid

★ 0

dsh plugin --profile web add dsh-chrome-cdp