stuarthu/dsh-chrome

Chrome side panel that embeds the dsh web UI and lets the agent read the current page, capture HTTP traffic, and drive the browser.

dsh-chrome is a Chrome side panel that embeds the full dsh web UI (sessions, settings, approvals, tasks, goals, workspaces) while letting the dsh agent perceive and drive your browser. It injects the current page (URL, title, body text capped at 1,000,000 chars; http(s) tabs only) into your most recently active session automatically on tab switches and SPA navigations. On request it records the active tab's HTTP traffic via Chrome DevTools Protocol (browser_start_capture / browser_capture_requests, secret-shaped values masked by default) and exposes browser_navigate / browser_click / browser_open_tab. State-changing actions only run when your real message contains explicit browser intent words (open/navigate/click/visit/tab/go to page) — approval-free with tool-level intent unlock; a refusal quotes the exact words that would unlock the tool.

Tools & Capabilities ★ 0 updated 2026-08-22
View on GitHub ↗

Install

dsh plugin --profile web add dsh-chrome

npm dsh-chrome 0.1.3 verified 2026-09-04 (repository field → github.com/stuarthu/dsh-chrome; README EN primary w/ zh edition). Two halves: (1) host plugins — dsh plugin --profile web add dsh-chrome; (2) Chrome extension — npx dsh-chrome install, then load the unpacked extension at chrome://extensions (Developer mode). Requires dsh web running locally (default http://127.0.0.1:3080) and Chrome 118+. Uninstall: npx dsh-chrome uninstall + dsh plugin --profile web remove dsh-chrome.

Compatibility

DeepSeek Harness dsh web (default http://127.0.0.1:3080, configurable); Chrome 118+ for the extension half; host half hot-applies (browser refresh only).

Details

Recent updates

Extension installed via npx dsh-chrome install to a stable per-user directory; re-run after upgrading the package, then reload the extension.

FAQ

What does the agent see automatically?
The current http(s) tab's URL, title and body text (capped at 1,000,000 characters) is injected into your most recently active session after tab switches or SPA navigations.
Can a webpage drive the browser on its own?
No — state-changing actions (browser_navigate / browser_click / browser_open_tab) run only when your real message contains explicit intent words like open, navigate, click, visit or tab. A blocked action returns a refusal quoting the exact words that would unlock it.
Does it capture all my traffic?
Only when you ask: the agent must start a capture (browser_start_capture) and read it back (browser_capture_requests); secret-shaped values are masked by default, and Chrome shows a 'debugging this browser' banner while capture runs.

Alternatives

stuarthu/dsh-hot-reload · stuarthu/dsh-update-notifier

More plugins in Tools & Capabilities

Browse more in Tools & Capabilities

Guides for Tools & Capabilities plugins