Foreword¶
When running long tasks or complex workflows with DeepSeek Harness (DSH), agent execution often takes a long time. Developers may need to leave their screens to handle other matters, which can cause them to miss subtask completion points or prevent them from responding in time to instructions after the full task run finishes.
dsh-plugin-task-notify aims to solve this pain point. It uses browser-based audio notifications to play a brief “beep” when a subtask completes and a “ding” when the full task run ends after exceeding the configured time limit, reminding developers to return to take action.
Feature Overview¶
This plugin is implemented using the Web Audio API, requires no external audio resources, and is independent of the backend AI model.
- Subtask completion “beep”: Monitors the finalization status of sub-agent tool calls (such as
subagent,subagent_fork, etc.). Plays a brief notification sound when a subtask completes. Supports a merge window to reduce noise from rapid consecutive completions. - Full task end “ding”: Starts a timer when the full task run begins. If the task duration exceeds the configured threshold (default 5 minutes), plays a rising two-tone “ding” when the session becomes idle. Option: title bar flash or TTS announcement.
- Global monitoring across multiple sessions: By default monitors all sessions; can also be configured to monitor only the current session.
- Self-contained audio: Synthesized entirely with native browser APIs; no dependency on external files.
- TTS announcement support: Optionally enable text-to-speech, with support for custom announcement templates.
Installation and Enablement¶
Installing from the official plugin marketplace is the fastest way:
dsh plugin add dsh-plugin-task-notify
After installation, restart dsh web. The settings card for this plugin will appear under Settings → Plugins.
Configuration Options¶
The plugin supports the following configuration options, all adjustable in the settings interface:
| Field | Description | Default |
|---|---|---|
enabled |
Master switch | true |
thresholdMinutes |
Threshold for full task end reminder (minutes) | 5 |
subReminderEnabled |
Subtask completion notification sound switch | true |
mergeMs |
Merge window duration for consecutive subtask notifications (milliseconds) | 500 |
masterVolume |
Volume for full task end “ding” (0.0 - 1.0) | 0.6 |
subVolume |
Volume for subtask “beep” (0.0 - 1.0) | 0.5 |
ttsEnabled |
Enable text-to-speech announcement | false |
ttsTemplate |
TTS announcement template, using {time} to represent actual duration |
任务完成,用时约 {time} 分钟 |
titleFlash |
Flash the title bar when the full task run ends | true |
globalSessions |
Monitor all sessions | true |
batchSingleBeep |
Merge all subtask notifications into a single sound when the full task run ends | false |
Typical Usage¶
1. Set the full task run threshold
If you want the notification to sound only after a task exceeds 10 minutes, adjust the configuration:
thresholdMinutes: 10
2. Customize the TTS template
Use the {time} variable to announce the actual elapsed time automatically:
ttsTemplate: '任务已完成,总耗时为 {time} 分钟'
3. Adjust volume
Adjust the two notification sounds according to ambient noise:
masterVolume: 0.8
subVolume: 0.4
Notes and Compatibility¶
- User gesture dependency: Browser security policies require user interaction with the page before audio playback. Before first use, click the page or send a message to activate the audio context.
- Browser limitations: TTS may be limited in background tabs. Keep the tab in the foreground or minimized to receive immediate feedback. Sound stops when the page is closed.
- Compatibility version: The plugin is compatible with the DSH
0.1.0-rc.8client contract. It includes an adaptation fix for the snapshot shape changes in version0.1.2-rc.1, ensuring it also works correctly on older versions.
Summary¶
dsh-plugin-task-notify provides DSH users with a non-intrusive task status feedback mechanism. With simple configuration, long-running tasks can be turned into visual and audible reminders, effectively reducing the risk of missing critical milestones.
- Project address: https://github.com/DearMrChai/dsh-plugin-task-notify