dsh-turn-notify:DSH 會話本輪結束時的 Windows 系統通知

前言

在 DSH 裏跑長任務時,窗口最小化或切到別的應用後,很難知道某次對話的「一輪運行」什麼時候結束。DSH 本身若沒有後臺消息通道,只能反覆切回客戶端看狀態。dsh-turn-notify 是社區維護的客戶端插件,在 Windows 上於會話本輪運行結束時彈出系統通知,並可點擊通知嘗試把 DSH 窗口拉回前臺。

這是什麼

@99galaxy/dsh-turn-notify(GitHub:99galaxy/dsh-turn-notify)由維護者 99galaxy 發佈,分類爲客戶端插件。定位是:Windows 系統通知,在 DSH 會話本輪運行完成時提醒你(README 英文簡介:Windows system notifications for DSH turn completion)。

插件以 DSH 桌面客戶端提供的 dsh 命令安裝,通過包內 dsh.bundle(cordis.patch.yml)自動註冊,無需手動追加 insert。當前 npm 包版本爲 1.0.4(MIT 許可證)。

核心功能

下面介紹 README 中已說明的行爲,均需在 Windows、DSH 客戶端保持運行且 系統允許 DSH 發通知 的前提下才生效;DSH 完全退出後無法提醒。

  1. 回合結束通知:會話本輪運行結束後發送系統通知,標題和正文都會標明完成的是哪個對話。正文默認以「本輪已完成」爲前綴,下一行顯示「對話:\<會話名稱>」;若觀察到開始時間,會同時顯示耗時。
  2. 點擊行爲:點擊通知會嘗試將 DSH 窗口切回前臺;Windows 的前臺鎖定策略可能阻止強制置頂。
  3. 打擾策略:默認前臺、後臺均提醒;可將 notifyWhenFocused 設爲 false,在窗口在前臺且正在查看該會話時不提醒。
  4. 子代理:默認 skipSubagents: true,跳過子代理會話,避免重複打擾。
  5. 檢測方式:結合狀態訂閱、完成標記和兩秒輪詢檢測回合結束,並對同一完成周期去重。

說明:「本輪已完成」表示運行已結束,不區分成功、失敗或取消。僅靠輪詢且沒有完成標記時,兩次採樣之間結束的短回合仍可能漏報。

可選隱私:maskTitle: true 時,標題和正文中的會話名稱都顯示爲「會話已完成」。

安裝與啓用

需要 Windows、DSH 桌面客戶端,以及客戶端提供的 dsh 命令。

先做 npm 包安裝(桌面 profile 使用 desktop):

dsh plugin --profile desktop add @99galaxy/dsh-turn-notify

也可直接從 GitHub 安裝:

dsh plugin --profile desktop add github:99galaxy/dsh-turn-notify

再做客戶端側確認:重啓 DSH,並確保 Windows 允許 DSH 發送系統通知。安裝器通過包內的 dsh.bundle 自動註冊插件,無需手動追加 insert。

如需修改默認設置,在該 profile 的 cordis.patch.yml 頂層數組末尾添加配置覆蓋:

- id: dsh-turn-notify
  config:
    enabled: true
    notifyWhenFocused: true
    skipSubagents: true
    maskTitle: false
    message: 本輪已完成

配置項說明(默認值以 README 爲準):

配置項 默認值 作用
enabled true 是否啓用通知
notifyWhenFocused true 設爲 false 時,窗口在前臺且正在查看該會話則不提醒
skipSubagents true 是否跳過子代理會話
maskTitle false 設爲 true 時,標題和正文中的會話名稱都顯示爲「會話已完成」
message 本輪已完成 通知正文前綴

配置需要 profile 提供 webServer 服務。修改配置後重啓 DSH,使客戶端重新讀取。

典型用法

經過上面的步驟安裝並重啓後,無需額外命令:在 DSH 中正常發起對話並等待一輪運行結束,即可在 Windows 通知中心看到提醒。

若希望「正在看這條會話時不彈窗」,在 cordis.patch.yml 中將 notifyWhenFocused 設爲 false 並重啓 DSH。

若不希望通知裏出現真實會話名,將 maskTitle 設爲 true,並視需要調整 message 文案。

從源碼本地打包安裝時(需 Node.js ≥ 22.19、Git;本地裝到 DSH 時還需 pnpm),在項目目錄執行 npm pack 得到 99galaxy-dsh-turn-notify-<version>.tgz,再執行:

dsh plugin --profile desktop add <插件壓縮包的路徑>

每次修改源碼後,需重新打包、安裝,再重啓客戶端。

適用場景與注意

適合在 Windows 上使用 DSH 桌面版、且經常後臺或最小化跑任務的開發者。不適合非 Windows 環境(插件面向 Windows 系統通知)。

安裝前建議瀏覽 GitHub 倉庫 源碼與 MIT 許可證;插件隨 DSH 客戶端進程運行,權限與客戶端一致。

DeepSeek Harness 生態強調「一切皆插件」;社區插件目錄託管在獨立站點,與 DeepSeek / 幻方無官方從屬關係。目錄頁:https://www.skillhub.cn/plugins/99galaxy/dsh-turn-notify。問題反饋可走 GitHub Issues。

結尾

dsh-turn-notify 用 Windows 系統通知補齊「本輪跑完」這一環的可見性,並支持前臺免打擾、子代理過濾和點擊回窗。倉庫:https://github.com/99galaxy/dsh-turn-notify。

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

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

小夜