前言¶
在使用 DeepSeek Harness(DSH)处理长任务时,用户经常需要切换窗口、最小化界面或处理其他事务。如果此时任务完成,用户可能会错过进度提示。dsh-away-notify 插件旨在解决这一问题:它只在用户离开 DSH 界面且任务完成时,才向 Windows 发送系统通知,避免干扰当前操作。
核心功能¶
- 只在离开界面时通知:检测页面可见性状态,仅当用户离开界面时触发通知。
- 任务完成检测:监听代理状态变化,当任务状态从运行转为空闲时触发。
- Windows 原生通知:使用 PowerShell 和 WinRT API,在系统右下角弹出标准 Toast 提示。
- 设置卡片集成:在 DSH 的设置界面提供总开关和测试按钮。
- 可配置:支持通过配置文件和设置卡片调整通知行为。
安装与启用¶
通过官方命令安装插件:
dsh plugin --profile web add dsh-away-notify
安装完成后,需重启 dsh web 服务以使插件生效。
配置¶
插件的配置文件位于 ~/.dsh/plugins/away-notify.json。默认配置如下:
{
"enabled": true,
"includeSubagents": false
}
| 配置项 | 默认值 | 说明 |
|---|---|---|
enabled |
true |
总开关。关闭后停止所有通知。 |
includeSubagents |
false |
是否在子代理会话完成时也发送通知。 |
测试与日志¶
- 设置卡片测试:在 DSH 设置界面的设置卡片中点击“测试”按钮。
- 命令行测试:
Invoke-RestMethod -Method Post http://127.0.0.1:3080/away-notify/test
日志文件保存在 %TEMP%\dsh-away-notify\notify.log,用于排查问题。
注意事项¶
- 环境依赖:需安装 Node.js 版本 >= 20。
- 生效方式:Client bundle 需要拷贝到
node_modules目录才能生效。 - 重启要求:修改配置或代码后需重启
dsh web。
结尾¶
dsh-away-notify 是一个专注于特定场景(任务完成通知)的轻量级 DSH 插件。它通过 Windows 原生通知机制,确保你在处理其他事务时不会错过 DSH 的任务结果。