Introduction

The plugin ecosystem of DeepSeek Harness (DSH) supports extending agent behavior through plugins. When running long sessions, developers often need to step away from their computers, creating a need for a mechanism to detect changes in session state. The dsh-helper plugin uses native Windows notification capabilities to notify developers when a session ends, when errors occur, or when manual confirmation is required.

Core Features

This plugin mainly addresses the lack of session status feedback:

  1. Task status notifications: It listens for DSH events and displays native Windows Toast notifications when the agent session is idle (task completed), when errors occur, when multi-select confirmation is required, or when tool permission approval is needed.
  2. Completion sound: It plays a completion sound when a session ends. A built-in synthesized sound is included. The volume can be adjusted from 0 to 100, and a local audio file can also be specified.
  3. Settings and testing: The DSH settings panel provides toggle configurations and a test button, allowing real-time preview of the three notification types.
  4. Zero dependencies and hot reloading: Configuration is managed through cordis.patch.yml. Changes take effect without restarting DSH, and no local build environment is required.

Installation and Enablement

Before using it, ensure that the DSH Web configuration file has been installed and initialized (i.e., dsh web has been run), and that the DSH version is 0.1.2-rc.1 or higher.

Run the following command to install it:

dsh plugin --profile web add dsh-helper@latest

After installation, the plugin automatically creates a Delivery Identity (AppUserModelID shortcut) to ensure that notifications are still delivered when the application is not focused.

Configuration and Usage

  1. Open the DSH settings interface and find the Task Notifications (dsh-helper) option.
  2. Turn the following toggles on or off as needed:
    • notifyOnComplete: Notify when a session is completed.
    • notifyOnError: Notify when a session error occurs.
    • notifyOnConfirm: Notify when the agent requires multi-select confirmation.
    • notifyOnPermission: Notify when a tool triggers permission approval.
  3. Adjust the sound settings, including volume (0-100) or specifying the path to a local audio file (wav/mp3/wma supported).
  4. Click the test button in the settings panel to preview different notification types.

Technical Principles and Limitations

  • Platform limitations: The notification mechanism is based on PowerShell WinRT Toast and supports Windows only. On macOS or Linux, the plugin loads but performs no operations (silent no-op).
  • Sound playback: Sound playback depends on WPF MediaPlayer. If unavailable, it falls back to System.Media.SoundPlayer (wav format only, and volume settings are ignored).
  • System interference: If Windows Focus Assist or Do Not Disturb is enabled, notifications may be blocked by the system.
  • Security: The settings panel route /_dsh/dsh-helper/settings is bound to local addresses only to prevent cross-origin access.

Conclusion

dsh-helper provides DSH users with a lightweight solution for session-state awareness, suitable for developers who need to run long-running tasks and want to be notified of results immediately.

GitHub repository | Plugin directory