dsh-notify-win:爲 DeepSeek Harness 增加 Windows 原生通知

前言

DeepSeek Harness(DSH)裏的任務可能運行較久,也可能在後臺等待批准、等待回答。如果你習慣用瀏覽器裏的 web profile 使用 DSH,任務結束後再切回窗口查看會比較低效。

下面介紹 dsh-notify-win。它是 DSH 的 Windows 通知插件,在任務完成、上下文壓縮完成、或需要你輸入時,使用 Windows 原生 toast 和任務欄閃爍提醒。

插件定位

dsh-notify-win 是一句定位:Native Windows toast + taskbar flash for DeepSeek Harness when a task finishes or your input is needed。

倉庫維護者爲 Andyqwe44,許可證爲 MIT。源碼地址:

https://github.com/Andyqwe44/dsh-notify-win

核心能力

dsh-notify-win 主要覆蓋三類提醒:

1、任務完成:root agent 變爲 idle 時觸發。
2、上下文壓縮完成:session/event → compaction/end 時觸發。
3、需要你輸入:approval / ask_user_question 時觸發。

它提供的具體行爲包括:

  • Windows 10/11 系統風格原生 toast,顯示在右下角。
  • 當 DSH 在後臺時,使用 FlashWindowEx 觸發任務欄閃爍。
  • Click-to-focus:點擊 toast 後打開 DSH,並切換到對應 session。
  • 單選問題 toast:原生下拉框最多 5 個選項,另附自定義答案文本輸入,以及 Cancel / Send。
  • 超時閃爍 fallback:如果交互式 toast 被系統超時關閉,仍會觸發任務欄閃爍。
  • DeepSeek Harness logo 的 hero banner,並適配深淺色主題。
  • Fire-and-forget:不註冊 service、tool 或 settings namespace。

通知會按 session 去重。dedupMs 默認爲 1500 ms。

安裝與驗證

先確認環境裏有 pnpm。如果沒有,可以先執行:

corepack enable

安裝插件:

dsh plugin --profile web add dsh-notify-win

安裝後檢查配置,確認已經加入 DSH 的 web profile:

dsh --profile web --dump-config

在輸出裏找類似下面的標識:

# == dsh-notify-win
- id: dsh-notify-win

測試通知

重啓 DSH:

dsh web

完成任意任務後,應該看到首次通知。首次通知會自注冊 branded toast identity。

如果 toast header 仍然顯示 DeepSeekHarness,並且沒有圖標,重啓一次 Explorer:

Stop-Process -Name explorer -Force; Start-Process explorer

禁用插件

如果需要臨時關閉通知,在 cordis.patch.yml 中設置:

- id: dsh-notify-win
  disabled: true

安裝或禁用變更後需要重啓。web profile 默認禁用 HMR。

運行環境

已覈實的運行要求如下:

  • Windows 10/11。
  • PowerShell 7,或 Windows PowerShell 5.1;如果只有 5.1,會自動作爲 fallback 使用。
  • 交互式問題 toast 需要 .NET 10 Desktop Runtime (x64)。
  • done / compact 類 toast 不需要 .NET 10 Desktop Runtime (x64)。

限制與注意事項

這些限制來自插件行爲本身:

  • 原生 toast 文本較緊湊,約 4 行顯示空間,長內容會被截斷。
  • 原生選擇下拉框在指針移動到 popup 上時可能收起;如果隨後被系統超時關閉,任務欄閃爍仍會提醒。
  • FlashWindowEx 使用系統 warm-pulse highlight,不能自定義顏色。
  • Windows 不會閃爍前臺窗口;任務欄按鈕只在 DSH 位於後臺時閃爍。
  • 取消正在運行的 turn 也會進入 idle,因此取消後的任務仍會觸發 done toast。
  • 通知按 session 在 dedupMs 窗口內去重,默認 1500 ms。
  • 插件不註冊 service、tool 或 settings namespace。

安全建議

dsh-notify-win 會由 DSH 拉起相關進程,並以當前 DSH 進程權限運行。安裝前建議先查看源碼、許可證和實際觸發行爲,再決定是否加入自己的 web profile。

結尾

dsh-notify-win 的價值比較集中:在 Windows 10/11 上,讓 DSH 的任務完成、上下文壓縮完成和等待輸入這三類狀態更及時地被注意到。它不改變 DSH 的主流程,只作爲一條通知鏈路加入。

源碼與 issue 入口在 GitHub:

https://github.com/Andyqwe44/dsh-notify-win
羽毛球分组比赛记分
小程序二维码

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

小夜