dsh-helper:DSH 任務通知與 Windows 原生提示音插件

前言

DeepSeek Harness (DSH) 的插件生態支持通過插件擴展代理行爲。在運行長會話時,開發者往往需要離開電腦,此時需要一個機制來感知會話狀態的變化。dsh-helper 插件通過調用 Windows 原生通知能力,在會話結束、報錯或需要人工確認時提醒開發者。

核心功能

該插件主要解決會話狀態反饋的缺失問題:

  1. 任務狀態通知:監聽 DSH 事件,在代理會話空閒(任務完成)、報錯、需要多選確認或工具權限審批時,彈出原生 Windows Toast 提示。
  2. 完成提示音:會話結束時播放提示音,內置合成提示音,音量支持 0-100 調節,也可指定本地音頻文件。
  3. 設置與測試:在 DSH 設置面板提供開關配置和測試按鈕,可實時預覽三種通知類型。
  4. 零依賴與熱重載:通過 cordis.patch.yml 管理配置,無需重啓 DSH 即可生效,不依賴本地編譯環境。

安裝與啓用

在使用前,請確保已安裝並初始化 DSH 的 Web 配置文件(即運行過 dsh web),且 DSH 版本不低於 0.1.2-rc.1。

執行以下命令進行安裝:

dsh plugin --profile web add dsh-helper@latest

安裝完成後,插件會自動創建 Delivery Identity(AppUserModelID 快捷方式),以確保通知在應用未聚焦時也能正常送達。

配置與使用

  1. 打開 DSH 設置界面,找到 Task Notifications (dsh-helper) 選項。
  2. 根據需求開啓或關閉以下開關:
    • notifyOnComplete:會話完成時通知。
    • notifyOnError:會話報錯時通知。
    • notifyOnConfirm:代理需要多選確認時通知。
    • notifyOnPermission:工具觸發權限審批時通知。
  3. 調整提示音設置,包括音量(0-100)或指定本地音頻文件路徑(支持 wav/mp3/wma)。
  4. 點擊設置面板中的測試按鈕,預覽不同類型的通知效果。

技術原理與限制

  • 平臺限制:通知機制基於 PowerShell WinRT Toast,僅支持 Windows 平臺。在 macOS 或 Linux 上,插件會加載但不執行任何操作(靜默空操作)。
  • 聲音播放:聲音播放依賴 WPF MediaPlayer,若不可用則回退至 System.Media.SoundPlayer(僅支持 wav 格式且忽略音量設置)。
  • 系統干擾:如果 Windows 的“專注助手”或“勿擾模式”處於開啓狀態,通知可能會被系統攔截。
  • 安全性:設置面板的訪問路由 /_dsh/dsh-helper/settings 僅綁定本地地址,防止跨域訪問。

結語

dsh-helper 爲 DSH 用戶提供了一種輕量級的會話狀態感知方案,適合需要長時間運行任務並希望即時獲知結果的開發者。

GitHub 倉庫 | 插件目錄

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

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

小夜