zljr/dsh-share
Share the current session over the LAN as a read-only, token-guarded HTML snapshot with session stats and Markdown rendering.
dsh-share adds a Share button to the DeepSeek Harness session header. One click freezes the current conversation into a self-contained, read-only HTML snapshot and prints a LAN URL (http://192.168.x.x:3081/s/<token>) that any device on the same network can open. The main harness keeps listening on 127.0.0.1 only; a separate read-only HTTP server serves nothing but GET /s/<token> for a valid token — no RPC, no writes, no live session reads. Snapshots are frozen at share time, protected by revocable 128-bit random tokens with optional 1h/24h/7d expiry, render Markdown safely (raw HTML escaped, javascript: URLs blocked), fold long messages and tool-call groups, show session stats (turns, steps, duration, tokens, context occupancy), persist across restarts in ~/.dsh/dsh-share.json, and follow prefers-color-scheme.
Install
dsh plugin --profile web add @zljr/dsh-sharenpm @zljr/dsh-share 0.1.1 verified 2026-09-04 (repository field → github.com/zljr/dsh-share; README EN primary w/ zh docs). Install from npm: dsh plugin --profile web add @zljr/dsh-share — the published package ships built lib/, no build step. Source: pnpm install && pnpm build, then dsh plugin --profile web add /absolute/path/to/dsh-share.
Compatibility
DeepSeek Harness web profile (session header Share button slot); separate read-only node:http server on 0.0.0.0:3081 (configurable via DSH_SHARE_HOST/PORT); Windows firewall prompt on first listen.
Details
- Repo: zljr/dsh-share
- Category: Sessions & Messages
- Stars: 0
- Version: npm @zljr/dsh-share 0.1.1
- Last push: 2026-08-16
- First seen: 2026-08-15
Recent updates
Smart LAN address detection filters virtual adapters (WSL/Hyper-V/Docker/VPN) and probes the default route.
FAQ
- Is the shared page live?
- No — the transcript and stats are captured at share time; later edits or compactions never change an already-shared page.
- Is it safe to expose on a LAN?
- The share server is read-only and isolated: only GET /s/<token> exists, tokens are 128-bit random, revocable and optionally expiring, and the page contains no JavaScript or external assets.
- Does sharing expose the harness?
- No. The main harness stays on loopback; only the frozen snapshot server is reachable, and it never reads the session store after creation.
Alternatives
bill9109/dsh-conversation-share · hellodigua/dsh-share · ChuanTianML/dsh-local-share