Introduction¶
When developing agents with DeepSeek Harness (DSH), conversations typically run in a browser or terminal. While tasks execute in the background, developers can easily miss important status changes, such as abnormal termination or steps requiring user confirmation. The dsh-niao-message plugin maps DSH’s event stream directly to the macOS Notification Center, ensuring system banners are triggered at three key points: abnormal termination, action required, and normal completion. It also supports click-through to open an application.
What This Is¶
This is a macOS system notification plugin maintained by dsh-niao. It listens to DSH internal events and calls terminal-notifier in specific scenarios to send notifications to the system. Its core value is extending DSH status feedback from the browser/terminal to the system desktop and automatically clearing notifications when the user returns to the DSH page, avoiding interruptions.
Core Features¶
- Independent configuration for three notification groups: Configure switches, sound, and title/message templates separately for the three scenarios: abnormal termination, action required, and normal completion.
- Click banner to launch application: Clicking a notification banner can run the
open -acommand (or Bundle ID) to open a specified application, with automatic scanning of local DSH desktop apps and browsers. - Zero polling and automatic clearing: Uses
visibilitychangeandfocusevent monitoring on the browser tab. When returning to the DSH page, notifications disappear automatically with no persistent background overhead. - Notification throttling and de-duplication: Built-in 3-second throttling mechanism, with deduplication logic based on file markers (marker file + expiration time) to prevent repeated interruptions.
- Zero manual installation: The plugin includes the macOS notification binary (arm64 version); Intel Macs automatically fall back to the built-in
node-notifierversion, eliminating the need to manually install system tools. - Visual settings panel: Provides a Notification Management page in the DSH settings dialog, supporting immediate template editing and notification testing.
Installation and Enabling¶
During installation, specify the DSH profile (for example, web).
dsh plugin --profile web add dsh-niao-message
After installation, restart the dsh web process to activate the plugin.
Typical Usage¶
After installation, open the DSH settings dialog (bottom-left ⚙️). A Notification Management page will appear on the left.
- Test notification: Click Test Notification in the settings panel; a test banner appears in Notification Center.
- Configuration override: The plugin configuration priority is: plugin defaults < patch layer (
cordis.patch.yml) < the configuration file saved in the settings panel. If you want to modify it manually, edit~/.dsh/dsh-niao-message.config.json. - Automatic clearing: After triggering a notification on the DSH page, switch to another app or tab, then return to the DSH page; the previous notification disappears automatically.
Applicable Scenarios and Notes¶
- Platform limitations: macOS only. Click behavior, notification sending, and app scanning all rely on macOS-specific mechanisms such as
terminal-notifierand theopencommand. - Dependencies: Depends on
@deepseek-ai/schemasteryandnode-notifier. - Permissions and security: The plugin runs with the permissions of the current DSH process. Before use, review the plugin source code and license (MIT).
- Configuration priority: Changes made in the settings panel are persisted to
~/.dsh/dsh-niao-message.config.json, overriding plugin defaults and patch layer configuration.
Conclusion¶
By seamlessly integrating DSH runtime status into the macOS Notification Center, dsh-niao-message solves the problem of perceiving background task status. Its zero-polling design and automatic clearing mechanism ensure notifications are both timely and lightweight.