Introduction¶
DeepSeek Harness (DSH) adopts a plugin-based architecture, and developers often need to monitor the runtime status of agent sessions. dsh-session-notice is an online tool plugin that integrates the Bark service. It allows users to toggle the “notify” state in the session interface and automatically pushes a notification to a phone via Bark when a turn in that session stops.
Plugin Information¶
- Name: dsh-session-notice
- Maintainer: Dalcui
- Category: Online tools
- License: MIT
Installation and Configuration¶
Compatible with DSH version 0.1.5 – 0.2.0-rc.2.
- Installation:
dsh plugin --profile web add github:Dalcui/dsh-session-notice
If the plugin entry does not take effect automatically after installation, restart the web profile:
launchctl kickstart -k gui/$(id -u)/io.deepseek.dsh-web
-
Configure Keys:
Go to Plugin Management → Installed → finddsh-session-notice→ expand Settings.- Bark server: Default is the official
https://api.day.app; a self-hosted server can also be used. - Device key: View it inside the Bark App; only the last 4 characters are displayed. The key is stored only on the Host side and is not stored in the browser or written to logs.
- Bark server: Default is the official
-
Test Connectivity:
Click Test Push. The system will check three steps in sequence:- Server reachable (
GET /ping) - Test push delivered (
POST /push) - Diagnose whether the key has been registered (
GET /register/<key>, executed only on failure)
- Server reachable (
Usage Steps¶
Return to any session and click the bell button in the header status bar (monochrome icon, no text). The state is independent and persisted (maintained after a service restart). Once enabled, every turn stop in that session will trigger a push notification.
Behavior Description¶
- Normal End: Push the last text message. If the text is too long, summarize it using “first paragraph + last paragraph” and include the total character count.
- Abnormal Stop: Push the complete error content and necessary information (e.g., token limit, crash).
- User-Initiated Stop: No notification is triggered.
- Summary Length: Default is 200 characters; longer content is summarized according to the rules.
Technical Details and Notes¶
- Version Compatibility:
- dsh 0.2.0: The plugin must declare the compatible dsh runtime version in
peerDependencies; otherwise, it will be skipped at startup. - dsh 0.1.7: The configuration entry was migrated from
settings.plugin.itemtoplugins.bundle.config.
- dsh 0.2.0: The plugin must declare the compatible dsh runtime version in
- Network Transport: Uses
directFetchby default (bypassing environment proxy interception) to avoid push failures caused by Node environment variables. - Message Limit: Protocol-layer JSON ≤ 3900 bytes, timeout of 8 seconds, and no automatic retry by default.
- Collapse ID: Uses the first 16 characters of
sha1(sessionId|turn)for APNs collapsing.