dsh-notify-interactive:聚焦當前會話時的靜默提醒與 Windows 兜底

前言

在 DSH 裏跑智能體時,權限審批、追問、計劃審覈和一輪任務結束都需要人介入。若瀏覽器開着別的標籤,或只用 CLI/TUI,很容易錯過這些節點。常見做法是頁內通知或系統 Notification,但要麼與當前會話無關時仍刷屏,要麼彈窗不可交互、終端側沒有等價提醒。

下面介紹社區客戶端插件 dsh-notify-interactive(維護者 wuqiuwangtian,MIT,當前版本 0.2.1)。它的核心規則只有一條:你正聚焦於當前會話時不提醒;否則用帶具體內容的 Windows 小窗通知,需要時在 DSH 風格彈窗裏直接作答。

這是什麼

dsh-notify-interactive 是 DSH 的「任務中斷」提醒插件,面向 Web / CLI / TUI profile,目標 DSH 版本線爲 0.2.2-rc.1。

它監聽會話事件(權限審批、提問、計劃審覈、輪次結束),在你不看當前會話時推送提醒;Web 側可選 Document Picture-in-Picture 置頂交互彈窗,無 Web UI 時由宿主通過 PowerShell 拉起原生 WinForms 小窗。插件不寫 session log、不註冊模型工具、不自動作答、不上傳數據。

核心功能

覆蓋的事件

能力 說明
事件類型 權限審批、智能體提問、計劃審覈、任務完成
靜默 聚焦當前會話 → 不提醒
Web 交互彈窗 可選、按需打開;始終置頂,處理完自動關閉
彈窗內操作 審批允許/拒絕;提問單選/多選/自定義/跳過;計劃批准/拒絕;完成回到對話
CLI/TUI 宿主觀察 session 事件,通過 PowerShell 彈 Windows 提醒
Web 關頁 客戶端上報 presence,頁面關閉後宿主接管 Windows 提醒
音效 可選 Web Audio 本地合成;Windows 兜底使用系統提示音

提醒路徑怎麼選

  1. 正在看當前會話:什麼都不發生。
  2. Web 在前臺但事件屬於其他會話,或頁面失焦/隱藏:默認拉起帶內容的 Windows 小窗(只讀提醒);若你已手動打開交互彈窗,則在彈窗內顯示卡片。
  3. Web 頁面關閉,或僅用 CLI/TUI:宿主側 Windows 小窗。

交互彈窗不能由後臺事件自動打開(瀏覽器限制),需在有提醒時手動點「打開彈窗」。Windows 兜底不能在系統小窗裏批准、拒絕或回答問題,需回到 DSH 或終端處理。

安裝與啓用

插件以當前 DSH 進程權限運行。安裝前建議在 GitHub 查看源碼與 MIT 許可證。

Web profile 安裝:

dsh plugin --profile web add https://github.com/wuqiuwangtian/dsh-notify-interactive

或下載 Release 中的 dsh-notify-interactive-0.2.1.tgz 後本地添加:

dsh plugin --profile web add ./dsh-notify-interactive-0.2.1.tgz

CLI/TUI profile 安裝同一個包;沒有 Web UI 時,宿主半區會接管 Windows 提醒。

安裝後刷新 DSH 頁面。交互彈窗不必常駐。從 0.1.x 升到 0.2.x 時,宿主半區新增了 Windows 兜底與 presence 路由,需要重啓一次 DSH 進程;之後日常只需刷新頁面。

典型用法

經過上面的安裝步驟後,可按下面順序自檢。

  1. 刷新 DSH 頁面。
  2. 默認無需打開彈窗:每條待處理消息會拉起帶具體內容的 Windows 小窗。在設置裏點 測試 Windows 提醒 可驗證宿主兜底。
  3. 若要在小窗內直接作答,點 打開彈窗;僅有待處理提醒時可開,處理完自動關閉,無提醒時不會出現空黑框。
  4. 點 測試審批卡 / 測試提問卡 / 測試完成卡:彈窗打開時顯示演示卡片;彈窗關閉時改爲拉起 Windows 演示小窗(本地演示,不響應真實請求)。

設置項

設置保存在瀏覽器 localStorage,鍵名爲 dsh.notify-interactive.settings.v2,按瀏覽器獨立,不跨設備。

設置 默認 說明
啓用提醒 開 總開關
播放提示音 開 Web 音效
音效 清脆鈴音 6 個本地合成預設,含靜音
音量 70% 0–100%

0.2.x 已移除頁內通知卡片、瀏覽器 Notification 通道、系統通知權限及彈窗開關等冗餘配置。

適用場景與注意

適合:在 Windows 或 WSL(能檢測到 powershell.exe)上使用 DSH,且希望「不在看當前會話纔打擾」,並可選 DSH 風格 PiP 彈窗內完成審批/作答。

邊界(見上游 README「已知邊界」):

  • Windows 兜底只讀;原生小窗有「打開 DSH / 關閉」,暫無單選/多選/文本框。
  • 其他非 Windows 環境無 Windows 兜底。
  • 無 GUI 的終端無法顯示桌面彈窗。
  • 多標籤頁各實例獨立;presence 異常時宿主最多約 15 秒後接管。
  • 每個瀏覽器標籤獨立設置,不做 leader 選舉(第二階段計劃)。

同類調研結論:上游稱未找到同時滿足「聚焦靜默 + 可交互 DSH 風格彈窗 + CLI/TUI Windows 兜底」的活躍替代項目;詳見倉庫 docs/research.md。

DeepSeek Harness 生態以「一切皆插件」爲理念;SkillHub 目錄頁 爲社區站點,與 DeepSeek / 幻方無官方從屬關係。

結尾

dsh-notify-interactive 把「要不要打擾」收成一條聚焦規則,並把 Web 可交互彈窗與 CLI/TUI 的 Windows 只讀提醒放在同一套 session 事件鏈上。需要窗口內操作時手動打開 PiP;否則默認每條消息走 Windows 小窗,無需常駐窗口。

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

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

小夜