Foreword

When developing Agent tasks on the DeepSeek Harness (DSH) platform, you often encounter scenarios where a session is waiting for approval, a structured question needs to be answered, or a task has succeeded/failed. If developers are not constantly watching the DSH page, they can easily miss these key events. This plugin uses browser notification mechanisms to solve this problem.

Features

The plugin supports monitoring all sessions, not only the currently open session. It provides four types of notifications: pending session approval, waiting for an answer, task success, and task failure. Features include an independent switch for subagent task notifications, tab whale icon color changes (yellow/red/green priority), foreground suppression (no repeated reminders for the current session), single broadcast across multiple tabs (BroadcastChannel mechanism), click-to-open target session, a standalone configuration module, privacy and security (notifications do not include chat body or parameters), and a bilingual Chinese and English interface.

Installation and Enablement

Before installation, ensure that DSH CLI and pnpm are installed, and keep the DSH page open.

  1. Run the installation command:
dsh plugin --profile <profile> add github:Ycet/dsh-notifications
  1. Restart the web app: dsh web
  2. Open the DSH page and go to Settings → Plugins → Plugin Configuration
  3. Expand the Message Notifications module, click Authorize Notifications, and choose Allow in the browser permission prompt
  4. Click Send Test Notification to verify browser settings

Configuration and Usage

Configuration is stored in the dsh-notifications namespace of the DSH settings service.

Field Default Description
enabled true Master switch
approvalPendingEnabled true Approval pending notifications
questionPendingEnabled true Structured question notifications
taskSucceededEnabled true Task success notifications
taskFailedEnabled true Task failure notifications
subagentTaskEndedEnabled true Subagent task notification switch
faviconEnabled true Master switch for tab icon color changes

Foreground suppression: By default, notifications are sent only when the DSH tab is in the background or the event comes from a session other than the current one.
Click-to-open: Clicking a notification focuses DSH and opens the corresponding session; if the target session no longer exists, only the page is focused.
Icon color logic: The whale icon color is determined by non-subagent session status. Yellow indicates a session is pending approval or waiting for an answer; red indicates a session task failed; green indicates a session task completed. Priority is yellow > red > green. Opening a session can clear that session’s color contribution. Subagent session status does not affect icon color.

Notes

  1. Version compatibility: The plugin is compatible with DSH 0.1.0-rc.6 / 0.1.0-rc.7.
  2. Running state: The DSH page must remain open; notifications cannot be received after the browser is closed.
  3. Browser permissions: Notification permission must be granted for the current DSH address; insecure remote HTTP addresses may be denied.
  4. Icon support: Whale icon color changes rely on the page favicon; Firefox and Safari are not included in the initial acceptance scope.
  5. Feature limitations: Native Node notifications, push notifications after the browser is closed, custom notification sounds, and external message channels are not provided.
  6. Multi-tab mechanism: BroadcastChannel is used; after an extreme browser crash, re-election may take at most about 6 seconds.

Closing

This plugin provides DSH users with intuitive message notifications and status feedback, making it suitable for scenarios that require long-running Agent tasks and continuous attention to status changes. Related documentation and source code can be found in the plugin directory or the GitHub repository.