Sessions & Messages

dsh-weave

baixianger/dsh-weave · ★ 2

baixianger

Trusted Iroh mesh networking for DSH hosts, with encrypted peer discovery, remote session delivery, and reachability status.

License
MIT
Added
2026-08-21
Maintenance
active
Install kind
github
npm
dsh-weave

No manifest check is available; listing does not imply compatibility or security review.

安装

dsh plugin --profile web add github:baixianger/dsh-weave

GitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试

For install and environment setup, plus plugin development tutorials, see DSH community docs ↗

README

Source README · body: en · Read Chinese README

Table of contents
  1. DSH Weave
  2. What you get
  3. Quick start
  4. One transport, separate responsibilities
  5. Configuration
  6. Cancellation & delivery
  7. Protocol & architecture
  8. Development & feedback

DSH Weave

English · 简体中文

npm License: MIT DSH plugin

Connect explicitly trusted DeepSeek Harness hosts through Iroh. Keep pairing, peer identity, reachability, and the remote session directory in one transport layer.

What you get

Capability Behavior
Persistent identity The same host identity survives restarts.
Explicit pairing Exchange endpoint tickets and trust each peer locally.
Encrypted transport Iroh provides QUIC connections, direct paths, and relay fallback.
Remote directory Discover workspaces and sessions on paired hosts.
Visible state Host reachability is separate from agent idle/running/offline state.
Native settings Grouped identity and pairing controls, copy feedback, and removal confirmation.

Quick start

On each host:

dsh plugin --profile web add dsh-weave@latest
dsh web
  1. Open Settings → Weave on both hosts.
  2. Exchange their tickets through a channel you trust.
  3. Add and explicitly trust the other host's ticket on each side.
  4. Use a higher-level plugin such as DSH Chat to select remote sessions.

Add DSH Bridge when messages should reach local agents on a receiving host. Bridge is optional for transport startup.

One transport, separate responsibilities

flowchart LR
  A[Host A · Bridge] --> WA[Weave]
  WA <-->|Iroh · QUIC| WB[Weave]
  WB --> B[Host B · Bridge]

Iroh owns encrypted connectivity. Weave owns host trust, endpoint refresh, reachability, and authenticated requests. Chat owns rooms, membership, and room capabilities. Knowing a ticket alone does not grant trust or agent access.

Configuration

Field Default Purpose
hostName System hostname Display label for the host.
relayMode default Iroh default relay selection, or disabled.
persistIdentity / persistPeers true Keep identity and trusted peers across restarts.
acknowledgementTimeoutMs 10000 Default acknowledgement deadline.
maxConcurrentInbound 64 Bound concurrent incoming requests.
shutdownTimeoutMs 1000 Bound transport shutdown.

Identity and trusted peers are stored under $DSH_HOME/dsh-weave (~/.dsh by default), with owner-only permissions. identityPath and peersPath can override their locations.

Cancellation & delivery

Outbound requests accept a cancellation signal. Cancellation closes their connection; the receiving listener is also notified when the peer disconnects. Cancelling a request does not mark an otherwise reachable host offline. Chat's longer polling requests use matching acknowledgement deadlines.

The current release is a transport MVP. It provides pairing, directory access, and authenticated request delivery. A general remote task approval workflow and durable transport outbox/reconnect replay are not implemented. Application-level persistence belongs to the consuming plugin.

Protocol & architecture

Architecture · Protocol · Security · Room authority

The design documents include planned capabilities; use this README and the release notes for current behavior.

Development & feedback

npm ci
npm run check

Report an issue · Release notes · MIT license