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.

Remote Access — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
R

@sysit/dsh-remote-access

Remote Access

Out-of-tree dsh web-profile bundle: serve the Web UI on all interfaces (env DSH_WEB_HOST) behind the built-in ?token= BrowserAuth and auto-print the LAN URL. Single webserver row — no auth fork, stays composable with built-in BrowserAuth.

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

npx -y @deepseek-ai/dsh plugin --profile web add github:sysit/dsh-remote-access#4b88afefd62c1f42c8240cc67abbb4cf138e0e01
READMECompatibilityVersions

Compatibility and provenance

Remote Access is published as @sysit/dsh-remote-access and currently resolves to version 0.1.1. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
any
Release source
github
Registry updated
8/30/2026

Versions

0.1.1stable
8/30/2026

Related plugins

Loading related plugins…

Latest
0.1.1
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
any
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
9/4/2026
View source ↗
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 security-access.

Doctor@linxin666/dsh-doctorTransactional rescue mode for DSH profiles with a supervised launcher, isolated recovery capsule, deterministic repairs, health monitoring, and a local Web recovery consolePocketdsh-pocketPut DeepSeek Harness in your pocket: one package, one settings page, and scan a QR code on your phone to access DSH on your computer in sync (LAN + public network, real-time screen mirroring).DSCODE@toddzheng024/dscode-bundleA complete DeepSeek coding agent with persistent shell, Ultra collaboration and automatic permission review.Auto Reviewdsh-auto-reviewSecond-model AI auto-review for DeepSeek Harness approval requests: a read-only reviewer subagent decides allow/deny on the approval answerer chain, with fail-closed fallback and full session-log audit.

README

dsh-remote-access

Out-of-tree deepseek-harness web-profile bundle that lets the dsh --profile web GUI listen on all interfaces (0.0.0.0) so you can open it from another device — while keeping the built-in ?token= BrowserAuth and never touching authentication.

It is intentionally tiny: one webserver row. Unlike earlier plugins, it does not fork web-startup / webserver / connection and does not invent its own token gate. That is precisely why it survives dsh upgrades: the auth and the LAN ?token= URL printing already come from dsh itself; this bundle only lets host be non-loopback.

How it works

  • dsh's BrowserAuth (client/connection) issues a host-bound cookie (dsh-auth-<sha256(authority)>) when you open the printed ?token= URL. It already works for a LAN bind.
  • web-app prints the LAN URL (LAN: http://<ip>:<port>/?token=...) whenever the server binds 0.0.0.0.
  • The only blocker in stock dsh is web-startup refusing --host 0.0.0.0. This bundle does not unblock that flag; instead it overrides the webserver row's host from an env var, so you never pass --host.
  • Result: zero third-party, zero plugins that own the auth, and a profile-level patch the loader re-reads on every boot — so it needs no re-apply after a dsh upgrade.

Install

# from a git checkout
dsh plugin --profile web install github:sysit/dsh-remote-access

# or from a local path (e.g. while developing)
dsh plugin --profile web install file:/Users/xiphis/projects/dsh-remote-access

That adds @sysit/dsh-remote-access to the profile's dsh.profile.bundles (after dsh-web-app, so its webserver override wins).

Use

WantCommand
Remote (default when set)export DSH_WEB_HOST=0.0.0.0 && dsh --profile web --no-open
Loopback onlyunset DSH_WEB_HOST, or DSH_WEB_HOST=127.0.0.1 dsh --profile web
launchd/KeepAliveadd export DSH_WEB_HOST="\${DSH_WEB_HOST:-0.0.0.0}" to the launch script

On a remote bind the startup log prints both:

dsh web: http://127.0.0.1:3080/?token=eqeU… (LAN: http://192.168.1.5:3080/?token=eqeU…)

Open the LAN: URL on another device — no 401, no plugin auth, no relay. The token is per-process (changes each restart); the browser cookie is valid up to cookieMaxAgeDays (default 30 days), so an already-open tab keeps working across restarts.

Upgrade handling

Nothing to re-apply. The patch is a declarative layer in ~/.dsh/profiles/<profile>/ (outside the dsh repo), re-read on every boot. After a dsh upgrade, smoke-check:

launchctl kickstart -k gui/$(id -u)/com.deepseek-ai.dsh-web   # restart your web service
tail -5 ~/Library/Logs/dsh/web.out.log                        # expect `?token=` + `(LAN: ...)`

If dsh ever renames the webserver row id or its config keys, regenerate the row from the current official patch:

dsh --profile web --dump-config                              # current webserver keys
cat packages/bundle/web-app/cordis.patch.yml                  # official webserver row

Security notes

  • 0.0.0.0 exposes the harness to your network. The ?token= gate + host-bound cookie are the auth; treat the printed token as a secret and use --no-open when remote.
  • Cross-site/DNS-rebinding defense stays on (dsh api-request-trust); trustedHosts still pick up LAN literals automatically.
  • The /api RPC surface is only as exposed as you make it — prefer SSH forwarding or a VPN if the network is not trusted.

License

MIT