Local cross-session messaging for DSH agents, with discovery, cold-session wake-up delivery, and auditable message history.
Install
# from npm (prebuilt)
dsh plugin --profile web add dsh-bridge
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:baixianger/dsh-bridge
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).
README
DSH Bridge
Let sessions in one DeepSeek Harness host discover each other and exchange messages. Bridge is the local foundation beneath Chat rooms and trusted Weave delivery.
Three tools, one local host
| Tool | Purpose |
|---|---|
session_list |
Discover sessions and their current state. |
session_send |
Send by exact session ID or human-readable title. |
session_messages |
Read a bounded recent delivery log. |
Quick start
dsh plugin --profile web add dsh-bridge@latest
dsh web
Ask an agent to list sessions, then send a message to the intended session. Bridge adds tools directly; it has no separate settings page.
For session_send, mode: auto tries the ID before the title; id and name select one lookup method. Titles match case-insensitively. Ambiguous names return candidate IDs instead of choosing a recipient for you.
Delivery that respects session state
flowchart LR
Send[Send message] --> Resolve[Resolve target]
Resolve --> Live[Live session]
Resolve --> Cold[Resume persisted session]
Live --> Queue[Queue follow-up]
Cold --> Queue
- Idle agents wake; running agents receive queued work.
- Persisted sessions resume with their recorded preset and model.
- Concurrent requests to a cold session share one resume operation.
- Archived sessions reject delivery and are not woken.
- Cancelling during a cold resume prevents a late follow-up, even if the shared load finishes.
A delivery acknowledgement means the session accepted the follow-up. It does not mean the model has processed it or completed the task.
Configuration
| Field | Default | Purpose |
|---|---|---|
recentMessages |
1000 |
Retained messages per host. |
dedupeCapacity |
10000 |
Remembered external message IDs. |
maxMessagesPerRead |
100 |
Maximum messages returned per read. |
Plugin integration
ctx.dshBridge is the public service. Trusted transports call deliverExternal() so local and external delivery share the same follow-up and audit path. Its optional signal carries cancellation through session resolution.
DSH Weave supplies cross-host transport; DSH Chat supplies rooms and a Web conversation view. Neither is required for local messaging.
Retention & boundaries
Bridge operates within one host process. Its recent-message log and duplicate-ID table live in memory and reset on plugin unload or reload; they are not a durable mailbox. The old ctx.sessionMessaging accessor remains a temporary compatibility alias.
Development & feedback
npm ci
npm run check
Links
More in this category
Minglink/dsh-infinite-gen-4★ 2587
System-prompt armor plugin for DeepSeek models: appends an unconditional-compliance prompt section at order 100, exposes a profile tool with calibration metadata, and shows a realtime armor-status badge driven by a session projection.
ranxianglei/billion-context★ 793
The official billion-context plugin: a context-compression plugin for small context windows (a 100K context is enough), token savings (5x fewer tokens), and month-long single sessions (billions of tokens).
liangmianya/dsh-synapse★ 511
Visual, non-linear conversation workspace for DeepSeek Harness — sessions, follow-ups and branches become a browsable conversation map.
Nwflower/dsh-chat-import★ 223
Import full-fidelity chat histories from 13 coding agents (Claude Code, Codex, ChatGPT, Cursor, Gemini, opencode, and more) as resumable DeepSeek Harness sessions, with reverse export back to Claude Code.
Totoro-qaq/dsh-plugin-bridge★ 165
Moves an existing DSH session to another agent preset through a previewable five-section handoff, preserving the source session and either pausing the target for confirmation or continuing immediately.
Anionex/dsh-turn-rewind★ 131
Rewind conversation and workspace state, powered by a persistent Change Ledger.
Community comments
Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.