Skip to content

dsh-notifier

⭐ 79 · ✅ active · plugin

Type plugin Category Search & research
Stars ⭐ 79 Status ✅ active
Author THEWOLFWALKER Updated —
Subcategory 🌐 Web search Capabilities coding

One-liner

Unified notification and remote-control plugin for DeepSeek Harness (DSH): one zero-dependency notify() API across 27 channels, with phone-friendly approvals/questions, six inbound control channels, and a loopback web console.

About

English · 简体中文 Package metadata: dsh-notifier@0.9.0 · 1352 automated contract tests (1351 pass + 1 skip) · MIT licensed. Bring your DeepSeek Harness agent to the places you already use. dsh-notifier puts one minimal notify() API in front of 27 channels, then adds phone-friendly approvals, questions, session controls, and a calm local console — with no second runtime to deploy. Get started · Upgrade guide · Plugin integration Your agent and the harness itself both push through it: session events (turn/end · approval/asked · agent/error) auto-notify, the model calls a notify tool directly, and six inbound channels bring approvals and conversatio

📦 Install

dsh plugin add dsh-notifier --profile <profile-name>

🚀 Quick Start

insert:
  - id: dsh-notifier
    name: dsh-notifier
    config:
      channels:
        - type: telegram
          botToken: "123456:ABC-DEF..."
          chatId: "987654321"
        - type: dingtalk
          webhook: "https://oapi.dingtalk.com/robot/send?access_token=..."
          secret: "SEC..."
        - type: bark
          key: "your-device-key"

📚 Learn more

Screenshots

The web admin console (admin.enabled: true, loopback only, mobile-friendly since v0.5) — all six pages (demo data). The browser opens in personal mode: first configure, pair, test, then use; bindings and sessions stay behind an explicit advanced-settings toggle. Open the exact loopback URL printed by the Web 管理台已就绪 startup line instead of guessing port 8104:

Quick start

dsh plugin add dsh-notifier --profile > --profile is required (DSH 0.1.0-rc.6+): plugin installs target a named profile — use the one you run (e.g. web). Add channels to your profile patch (cordis.patch.yml): insert: - id: dsh-notifier name: dsh-notifier config: channels: - type: telegram botToken: "123456:ABC-DEF..." chatId: "987654321" - type: dingtalk webhook: "https://oapi

Configuration

All channels live under config.channels. Key example: insert: - id: dsh-notifier config: channels: - type: telegram botToken: "123456:ABC-DEF..." chatId: "987654321" - type: feishu webhook: "https://open.feishu.cn/open-apis/bot/v2/hook/..." - type: wxpusher appToken: "AT_..." uids: ["UID_..."] - type: serverchan sct: "SCT..." Optional blocks each opt in under their own key: v0.5 status line defa

Architecture

src/ adapters/ 27 channel adapters (resolve(cfg) + send(msg)) + declarative spec engine config.mjs channel registry + config schema — single source of truth for the matrix index.mjs plugin assembly: patch, tools, event listeners, admin wiring event-listener.mjs auto-push line (debounce, dedup, level routing) + v0.5 status wiring status/ v0.5 turn tracker (heartbeat / stall detection, pure logic) a