Introduction¶
In DeepSeek Harness (DSH), agents often run in the background. When a task requires user intervention (such as a model question, an authorization request, or a plan review), users may easily miss the opportunity to act if the page is unfocused or hidden. The dsh-tab-alert plugin aims to solve this visibility issue while providing a unified event data stream for external tools.
Features¶
The plugin provides two core capabilities:
Taskbar Alert
When dsh requires user action, the plugin triggers a system notification through Web Notification and flashes the icon in the operating system taskbar (orange flashing on Windows; a notification and Dock pulse on Linux). It triggers only in the following scenarios:
1. A model question
2. An authorization request
3. A plan review
4. Goal completion/failure
5. Background task completion/failure
6. A session completed elsewhere
7. dsh completing the current turn
Real-time Event Source
The plugin maintains a real-time state machine for each session and exposes normalized state data through a WebSocket endpoint for external consumers.
- Endpoint: ws://127.0.0.1:<port>/tab-alert/stream
- Typical use cases: the dsh-pet desktop pet plugin, status panels, or custom monitoring tools.
Installation¶
Before installing, ensure the dsh CLI is available and the target profile (e.g., web) has been initialized.
- Run the installation script:
powershell -ExecutionPolicy Bypass -File .\install.ps1
- Uninstall the plugin:
dsh plugin --profile web remove dsh-tab-alert
Configuration¶
Defaults can be overridden using dsh’s line-level configuration. The following configuration options can be used to control notification behavior:
- id: dsh-tab-alert
config:
enabled: true
kinds:
question: true
approval: true
planReview: true
goalComplete: true
goalBlocked: true
jobCompleted: true
jobFailed: true
sessionCompleted: true
silent: true # 静音模式:只闪烁不响铃
requireInteraction: false # 通知常驻直到手动关闭
debug: true # 控制台调试日志
Notes¶
- Alerts trigger only for scenarios that require user intervention (questions, authorization, etc.); ordinary replies do not trigger alerts.
- On first use, notification permission is requested. If the user denies permission, the plugin remains silent and does not fall back to in-page notifications.
- The plugin depends on the following peerDependencies:
@deepseek-ai/cordis(^4.0.1)@deepseek-ai/dsh-client-runtime(^0.1.0-rc.6)- After uninstalling the plugin, related subscription snapshots and notification settings are cleaned up automatically.
Conclusion¶
dsh-tab-alert solves the visibility problem of background tasks through system notifications and taskbar flashing. It also provides a unified event stream interface for external tools via WebSocket. The project is released under the MIT license; its source code and documentation are available in its GitHub repository.