DeepSeek Harness 任務狀態通知插件 dsh-notify

DeepSeek Harness (DSH) 的核心設計理念是「一切皆插件」。在實際開發中,當任務運行時間較長或涉及多輪 Agent 交互時,頻繁刷新頁面或檢查 UI 狀態會消耗額外精力。dsh-notify 插件通過系統通知、瀏覽器 Tab 標題和左側會話列表,爲任務的運行、完成或異常提供明確的狀態提示。

這是什麼

dsh-notify 是一個標準的 DSH Host/Client 插件,不修改 DeepSeek Harness 核心邏輯。它通過監聽 Session 事件、Agent 與 Job 生命週期,在任務收斂時通過多種渠道分發狀態。

  • 維護者:weekitmo
  • 許可:MIT
  • 定位:任務狀態通知

核心功能

插件提供以下狀態反饋機制:

  1. 系統通知:僅在頂層任務全部收斂後發送完成、錯誤、中止、阻塞或 Token 限制結果。可在設置中單獨關閉某一類通知。
  2. 釘釘機器人:配置 Access Token 與 Signing Secret 後,可獨立選擇發送“成功/完成”或“失敗/中止”消息。支持免打擾模式(默認 23:00-08:00)以及結束後錯過消息的彙總功能。
  3. Tab 狀態:
    • 空閒時顯示最近工作區會話標題。
    • 運行中顯示 spinner 和會話數。
    • 完成或異常後顯示未讀結果計數。
  4. 側欄狀態燈:
    • 綠點:會話完成且尚未查看。
    • 紅點:錯誤、中止、阻塞或 Token 限制。
    • 打開會話後清除狀態燈。
  5. 可配置:在 WebUI 的 設置 > 通知 中控制通知權限、Tab 動效、favicon、spinner 和側欄狀態燈。

安裝與啓用

前置條件

安裝前需確保 pnpm 已在 PATH 環境變量中。

安裝命令

macOS、Linux 或其他 POSIX 系統使用以下命令安裝最新穩定版:

curl -fsSL https://github.com/weekitmo/dsh-notify/releases/latest/download/install.sh | sh

Windows 用戶可克隆倉庫後運行批處理安裝器:

git clone --depth 1 https://github.com/weekitmo/dsh-notify.git
cd dsh-notify
install.bat

安裝後刷新 WebUI。若插件未自動加載,請重啓對應的 dsh web 進程。

啓用與配置

  1. 打開 WebUI,進入 設置 > 通知。
  2. 開啓需要的通知功能。
  3. 如需系統通知,點擊 請求授權,並在瀏覽器提示中允許通知。
  4. 如需釘釘通知,在釘釘配置組打開官方文檔創建自定義機器人,填寫 Access Token 與 Signing Secret,選擇需要發送的結果類型後保存。

注意事項

  1. 遷移狀態:本倉庫已遷移至 weekitmo/oh-my-dsh-plugins,本倉庫不再維護。後續開發、Issue 和 Release 請使用 monorepo 中的 @weekit/dsh-notify。
  2. 釘釘配置路徑:釘釘憑據保存在 $DSH_HOME/dsh-notify/settings.json,不會寫入瀏覽器 localStorage。
  3. 子代理通知:子代理獨立完成通知固定爲關閉,僅跟隨父會話顯示運行計數。
  4. 安全限制:釘釘憑據管理接口僅接受本機迴環地址上的同源 WebUI 請求。通過局域網或公網地址訪問 WebUI 時不能修改釘釘配置。

結語

dsh-notify 通過多渠道的狀態反饋,降低了長時間運行任務的管理成本。配合 DSH 的插件化架構,它爲智能體開發者提供了一個輕量級的狀態監控方案。

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

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

小夜