dsh-plugin-winnotify:DeepSeek Harness 的 Windows 原生 Toast 通知

前言

DeepSeek Harness(DSH)采用插件化架构,所有功能均通过插件扩展。在使用 web profile 运行时,系统消息通常仅在浏览器页面内显示。dsh-plugin-winnotify 插件通过桥接机制,将 DSH 的关键事件(如审批、异常、任务状态变更)转换为 Windows 原生的系统 Toast 通知。这能让开发者在切换窗口或使用其他应用时,也能及时响应来自智能体的请求或异常信息。

插件概况

  • 名称:dsh-plugin-winnotify
  • 维护者:Maple-Bamboo-Team
  • 许可证:MIT
  • 核心价值:将 DSH 的 Web 消息流映射为 Windows 原生桌面通知,确保关键事件不遗漏。

环境要求

安装前需满足以下条件:
* 操作系统:Windows 10 或 Windows 11
* 运行环境:已安装的 DeepSeek Harness (dsh)
* Node.js 版本:22.19 或更高版本

安装

在 PowerShell 中执行以下命令进行安装:

dsh plugin --profile web add https://codeload.github.com/Maple-Bamboo-Team/dsh-plugin-winnotify/tar.gz/refs/heads/main --ignore-scripts

安装完成后,需重启 dsh web 进程并刷新浏览器页面以加载插件。

通知内容

插件会根据事件类型生成不同的通知。通知标题为对应的对话名。

事件类型 通知正文示例
审批 / 权限提升 等待处理:写入文件——需要工作区外的写入权限
提问 等待回答:状态探测——是否继续?
异常 未经处理的异常:具体内容
任务完成 任务已完成
任务中断 任务中断:执行已取消

插件启动时,还会根据当前时段发送问候和一言(Yiyan)。若获取一言失败,将显示固定文本:「不诱于誉,不恐于诽。」

点击通知会直接打开对应的会话。

配置

插件通过 profile 的 cordis.patch.yml 进行配置。默认情况下,以下选项均开启:welcome、approval、question、error、completed、interrupted 和 sound。

例如,若要关闭启动时的问候和声音提示,可配置如下:

- id: winnotify
  config:
    welcome: false
    sound: false

卸载与清理

若需卸载插件,请执行:

dsh plugin --profile web remove dsh-plugin-winnotify

卸载后需重启 dsh 服务生效。若需清除系统通知来源和图标,需在本地插件目录(通常为 ~/.dsh/plugins/dsh-plugin-winnotify)运行:

npm run unregister

开发与测试

插件的源码位于 GitHub 仓库。如需参与开发或本地测试,可执行以下命令:

npm ci
npm run check
npm test
npm pack

npm test 会先执行构建,再运行单元测试。提交源码前应一并提交更新后的 lib/ 目录。若需预览系统通知效果,可运行:

npm run preview

结语

dsh-plugin-winnotify 通过原生 Toast 通知,解决了 DSH 在桌面端运行时消息被动查看的问题。该插件遵循 MIT 许可证,图标资源取自 DeepSeek Harness 官方项目。更多细节可参考插件目录或 GitHub 仓库。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜