Introduction

When using DeepSeek Harness (DSH) for agent development, developers often need to learn the runtime status of the root agent from external systems or terminals, such as task completion, errors, or waiting for human interaction. The dsh-notify plugin pushes the above statuses to a configured endpoint via HTTP requests, making it easy to integrate into existing workflows or monitoring systems.

Plugin Overview

dsh-notify is a notification plugin maintained by Huauauaa. It allows users to configure an HTTP endpoint. When the root agent completes a turn of interaction or requires manual intervention, the plugin sends a POST request to that endpoint.

Core Features

The plugin provides the following capabilities:

  1. Trigger conditions: Supports four trigger conditions: task completion, task error, requires an answer, and awaiting approval.
  2. Request configuration: Supports custom URL, HTTP method, headers, receiver, and authentication information.
  3. Toggle control: Supports being enabled by default globally, while also supporting independent enable/disable of notifications in each session.
  4. Deduplication mechanism: Subagent events and duplicate events within the same session within 5 seconds do not trigger duplicate notifications.

Installation

Before installation, ensure DeepSeek Harness is installed locally and restart dsh web.

Local installation:

dsh plugin --profile web add link:/ABS/PATH/dsh-notify

After publishing to GitHub and adding the dsh-plugin topic:

dsh plugin --profile web add github:OWNER/dsh-notify

Configuration and Usage

  1. Open Settings, then go to the Notifications page under Agent presets in the sidebar.
  2. Fill in the endpoint parameters (URL, Method, Headers, Receiver, Auth), and choose whether to enable Globally enabled by default.
  3. Click Test. The endpoint will receive a Notification test: connectivity check request to confirm connectivity.
  4. Enable the notification toggle for each session in the three-dot menu in the sidebar (below Rename / Fork / Archive). The session toggle takes precedence over the global default setting.

The configuration file is located by default at $DSH_HOME/dsh-notify.json (i.e. ~/.dsh/dsh-notify.json).

Technical Details and Notes

  • Request failure handling: Request failures are only recorded in logs and do not affect normal agent operation.
  • Completion detection logic: The completion detection logic is consistent with the current DSH. If there is no global turn/end, it falls back to polling with agents.list().
  • Feature distinction: This plugin is not the same as aokamoaki/dsh-notify (Windows toast). The former provides a custom HTTP webhook, while the latter is only for Windows popup notifications.

Conclusion

This plugin exposes DSH runtime status to external systems via standard HTTP endpoints, making it suitable for scenarios where DSH needs to be integrated into existing automation pipelines or monitoring systems. For more details, see the GitHub repository.