dsh-pocket
shaobeichen
Remote phone access to the DSH Web UI: scan a QR code for LAN or public (cloudflared tunnel) access with real-time sync, a mobile-adaptive layout, and a settings tab.
Installed cleanly when we ran it
THEWOLFWALKER/dsh-notifier
Unified notification & remote control for DSH: one `notify()` API, 25+ channels (Telegram / DingTalk / Feishu / WeCom / QQ bot / WxPusher / PushPlus / ServerChan / Bark / Discord / Slack / ntfy / webhook...), level routing (timeSensitive / active / passive) with tiered retry, multi-channel inbound approval (Telegram buttons, Feishu cards, QQ, WxPusher, WeChat iLink), official QR login for QQ/DingTalk/Feishu, a local web admin console, multi-agent routing, desktop notifications — and a mobile command center: `!status` / `!stop` / `!retry` agent control from your phone plus actionable notifications (view result / retry / logs buttons that call back into the agent). Secrets redacted, tool rate-limited, zero runtime deps — plus an open event source: other plugins can inject the notifier service (ctx.notifier) and subscribe to dsh-notifier/sent events, reusing notification without coupling.
Install
via npm
Resolves a published tarball rather than cloning the repository, and installs without any extra setup. Swap `web` for your profile name if you run another one.
via GitHub · npm package
Installing from GitHub runs the project's build script, which pnpm blocks until you allowlist it — run the command once and pnpm prints the exact key to add under `allowBuilds` in ~/.dsh/profiles/web/pnpm-workspace.yaml.
What happened when we ran it
Installed cleanly when we ran it
Every command here is run in a throwaway container against a clean profile, and the result is whatever the harness recorded — not a guess from the source. Last run yesterday.
Due diligence
What it is — DSH plugin providing notify() API and mobile remote command center.
Who it is for — When using DSH agent for notification push and remote control, this plugin applies. If you do not wish to integrate multi-channel inbound approval, this plugin is unnecessary.
Watch out — Sandbox test shows the plugin can be installed, but the protobufjs@7.6.5 build script is blocked by pnpm, users need to manually allow it to complete registration. No other obvious issues found.
The verdict — I would install it because it provides mobile command center and multi-channel notifications, but the build script must be manually allowed when installing from source.
Generated by grok-4.6, and a starting point rather than a verdict. Where it says a plugin installs or does not, that is from a real run in a clean profile — everything else is read off the repository. Trust the source over this.

dsh-notifier is a DeepSeek Harness plugin that routes agent and session notifications to messaging, push, desktop and webhook channels through one notify() API. DeepSeek Harness can send turn/end, approval/asked and agent/error events automatically, while the model can call the notify tool with a message, channel and title. Each message passes through timeSensitive, active or passive routing, multi-agent bindings, channel adapters and tiered retries. The configuration is added to cordis.patch.yml; other plugins can use the injected notifier service and subscribe to dsh-notifier/sent.
dsh-notifier also accepts inbound actions through supported channels. Telegram buttons, Feishu cards, QQ, WxPusher and WeChat iLink can handle approvals; mobile messages can send follow-ups, inject content, steer a turn, mute a session, or control an agent with !status, !stop and !retry. Long-running sessions can produce heartbeats and stall alerts, with stop actions on Telegram and Feishu cards. A local, loopback-only web console manages channels, bindings, sessions and members.
This is intended for operators who need remote approval, status delivery or agent control across several notification services. It is a poor fit when outbound network messaging or inbound remote control is not wanted, or when existing session notifications are sufficient. The terminal-surface risk comes from remote actions that can steer or stop an agent; those actions operate through the agent’s existing permissions. The README targets Node.js 22+ and states that runtime dependencies are not required.
DeepSeek Harness loads dsh-notifier into a named profile. Add an entry to cordis.patch.yml with a config.channels list. Each channel has a type and channel-specific credentials, such as botToken and chatId for telegram, webhook and secret for dingtalk, or key for bark. The README lists 27 channel types, including Telegram, Slack, Discord, Feishu, DingTalk, WeCom, QQ bot, Bark, ntfy, Gotify, WxPusher, PushPlus, Server酱, webhook, bell and desktop.
Set admin.enabled: true to enable the local web console. The console is loopback-only and provides dashboard, notification, member, binding, session and channel pages. Channel credentials are masked in the console, which also supports test sends and QR scanning for supported login flows.
DeepSeek Harness automatically forwards turn/end, approval/asked and agent/error events. The model can call the notify tool with message, channel and title. Delivery resolves the level (timeSensitive, active or passive), multi-agent routing and channel adapter before applying tiered retries, debouncing, deduplication and rate limits. Long tasks use a default 15-minute heartbeat start; a default 10-minute period without events raises a stall alert.
Inbound messages can answer approvals, send plain-text followup or inject content, and use a ! prefix to steer a turn. !status, !stop and !retry provide mobile agent control. /quiet and /unquiet mute or restore a session’s pushes. Other plugins can inject the notifier service with ctx.inject(['notifier'], …) and subscribe to ctx.on('dsh-notifier/sent'). Source calls are limited to 10 per minute and clamped to 20,000 code points.
The README targets Node.js 22+. Profile-targeted plugin installation requires DeepSeek Harness 0.1.0-rc.6+. The README states that dsh-notifier has zero runtime dependencies.
Written from the project's own documentation and kept in sync with it. Where the two disagree, the source is authoritative — read the README on GitHub
Same category
shaobeichen
Remote phone access to the DSH Web UI: scan a QR code for LAN or public (cloudflared tunnel) access with real-time sync, a mobile-adaptive layout, and a settings tab.
Installed cleanly when we ran it
omdsh-dev
Desktop notifications for turn completions, with per-outcome controls and keyword rules.
Installed cleanly when we ran it
omdsh-dev
Open DSH workspace directories in VS Code directly from the web GUI.
Did not install when we ran it
xmanrui
Connect IM bots to DeepSeek Harness by scanning QR codes (supports Feishu, Weixin, DingTalk, and more).
Installed cleanly when we ran it
whyihaveyou
IM webhook and local notifications on turn completion, errors, or approval (Feishu/WeCom/DingTalk/Slack/Discord/custom).
No one-line install — this plugin lives inside a larger repository and publishes no npm package.
omdsh-dev
Lark/Feishu bot channel for DeepSeek Harness: each chat drives its own agent, and tool approvals, model questions, and plan reviews return as cards answered by a button or a reply. Switch workspace and model from the chat (`/cd`, `/model`, `/new`), and run several bots that keep separate sessions and can hand turns to each other in one group.
Installed cleanly when we ran it