前言¶
在 DeepSeek Harness(DSH)里,agent 的 todo_write 任务清单会记录当前要做什么、做到哪一步。如果希望任务状态变化能在桌面看到,可以先安装一个监听 todo/write 事件的插件。dsh-task-progress-notifier 用于跟踪 agent 的 todo_write 任务进度,并在任务完成时在电脑右下角弹出原生桌面提醒。
这是什么¶
dsh-task-progress-notifier 是一个 DeepSeek Harness 插件:跟踪 agent 的 todo_write 任务清单,并在任务完成时弹出原生桌面提醒。
它运行在 dsh profile 中,许可证为 MIT,仓库地址为 https://github.com/sjscy05/dsh-task-progress-notifier。
核心功能¶
这个插件主要做四件事:跟踪 todo_write 状态迁移、按状态弹提醒、提供主动提醒工具,以及调用平台原生通知。
跟踪 todo_write 状态迁移¶
它会监听持久化的 todo/write 会话事件,并为每个会话维护最新的完整任务清单快照。每次写入都会与上一次快照做差分,只播报真正的状态迁移,而不是每次重写都播报。
按状态弹提醒¶
支持三个提醒配置:
notifyOnComplete:任务变为completed时弹提醒。notifyOnStart:任务变为in_progress时弹提醒,默认关闭。notifyOnAllDone:全部任务完成后弹汇总提醒。
主动提醒¶
插件注册 notify 工具,让模型可以主动弹提醒,例如提醒用户休息或活动。
跨平台通知¶
通知实现依赖平台原生方式:
- Windows:PowerShell 托盘气泡(右下角)。
- macOS:
osascript通知。 - Linux:
notify-send。
安装¶
先确认当前机器已安装 dsh,并且满足 Node 22.19+ / 24+ 的要求。然后把插件加到目标 profile:
dsh plugin --profile <name> add github:sjscy05/dsh-task-progress-notifier
其中 <name> 是目标 profile 名称。
如果是本地 checkout,也可以使用:
dsh plugin --profile <name> add ./task-progress-notifier
配置¶
可以通过 profile 的 cordis.patch.yml 覆盖 task-progress-notifier 的配置:
- id: task-progress-notifier
config:
title: 'DeepSeek Harness'
notifyOnComplete: true
notifyOnStart: false
notifyOnAllDone: true
配置含义:
title:弹窗标题。notifyOnComplete:每完成一个任务时弹提醒。notifyOnStart:每开始一个任务时弹提醒。notifyOnAllDone:全部任务完成后弹汇总提醒。
使用 notify 工具¶
notify 是插件注册出来的工具。模型可以在运行过程中主动调用它,典型用途是提醒用户休息或活动。
适用场景与注意¶
这个插件适合在 DSH profile 中运行 agent 任务,并希望把 todo_write 状态变化变成桌面提醒的开发者。安装前注意:
- 需要在装有
dsh的机器上运行,并且运行在dshprofile 中。 - 要求
Node 22.19+ / 24+。 - 仅导入
@deepseek-ai/dsh-tools和@deepseek-ai/schemastery,无需额外安装依赖。 - 通知依赖平台原生方式:Windows PowerShell、macOS
osascript、Linuxnotify-send。 - 插件以当前
dsh进程权限运行,安装前应检查源码和许可证。
参考¶
- 目录页:https://www.skillhub.cn/plugins/sjscy05/dsh-task-progress-notifier
- GitHub:https://github.com/sjscy05/dsh-task-progress-notifier