前言¶
在 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