Skip to content

Repository files navigation

DSH Notify

DSH Notify

A DeepSeek Harness Web plugin for Windows toasts and a tray badge for turn completion, permission prompts, and questions.

Report an issue · View on npm · 简体中文

Apache License 2.0 npm package DSH Web Plugin Node.js 22 or later

DSH Notify is a community-maintained plugin, not an official DeepSeek AI product.

Features

  • Sends a Windows toast when the root Agent returns from running to idle.
  • Wraps userQuestions.ask so plan reviews and decision prompts also raise a toast.
  • Shows a tray badge for unanswered questions plus completed sessions that have not been opened yet.
  • Uses the Windows default notification sound. Focus Assist is optional.
  • Installs as a native DSH profile plugin. It does not patch built-in DeepSeek packages.

Prerequisites

  • A working DeepSeek Harness Web installation with dsh available in PowerShell.
  • Windows 10/11 for toasts and the tray icon. Other platforms skip those surfaces automatically.
  • Examples use the web profile; replace it with the target profile.
  • Source installation and development require Node.js 22+. npm installation does not require running npm install in an arbitrary directory.

Installation

Install from npm

Run this from any PowerShell directory. Install into the DSH profile through dsh plugin:

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
dsh plugin --profile web add @michengai/dsh-notify
dsh --profile web --dump-config

Restart DSH Web or reload the active Web profile. If a package mirror is behind, append --registry=https://registry.npmjs.org/.

Install from source

Use this for debugging or unpublished changes. The cloned directory becomes the plugin source path:

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
Set-Location D:\Repository\deepseek-harness-plugin
git clone https://github.com/MichengAI/dsh-notify.git
Set-Location .\dsh-notify
npm install
npm test
npm run build
dsh plugin --profile web add .
dsh --profile web --dump-config

Restart DSH Web or reload the active Web profile. Local installation reads and applies cordis.patch.yml; do not copy lib files manually.

Usage

Open Settings → Notifications, then use the panel as follows:

Goal Action Scope
Turn completion alerts Choose Always, Only when unfocused, or Off. Root-agent completion
Permission alerts Toggle Enable permission notifications. Tool and plan approval
Question alerts Toggle Enable question notifications. Decisions that block progress
Follow Focus Assist Toggle Follow system Do Not Disturb. System Focus Assist
Merge completions Combine finishes that arrive within a few seconds. Completion toasts

Environment overrides:

Variable Effect
DSH_NOTIFY=0 Disable the plugin entirely
DSH_NOTIFY_MIN_INTERVAL_MS Toast throttle, default 2500

Privacy and safety

Surface Reads Writes Network
$DSH_HOME\settings.yaml dsh-notify section Yes Yes No
$DSH_HOME\dsh-notify tray state and debug log Yes Yes No
/api/dsh-notify/config Same-origin settings UI Same-origin settings UI Local only
  • The plugin does not send telemetry and does not read credentials.
  • Child-agent completions and armed goal auto-continues do not raise a finish toast.
  • Unpacked Windows apps cannot activate toast buttons, so notifications are informational only.

Development

This repository keeps TypeScript in src and builds to lib:

After changing the source, test, rebuild, and install from the local directory:

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
npm test
npm run check
dsh plugin --profile web add .

PowerShell scripts that contain Chinese text must stay UTF-8 with BOM.

Validation

[Console]::OutputEncoding = [System.Text.Encoding]::UTF8
$OutputEncoding = [System.Text.Encoding]::UTF8
npm test
npm run check

npm run check runs typecheck, tests, and the Host/Web build.

Documentation and license

Project status, usage boundaries, architecture, and iteration records begin at the documentation entry point.

Licensed under Apache License 2.0.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages