前言¶
在 DeepSeek Harness 裏,當助手調用 ask_user_question 時會一直等待你回答。如果你正在看視頻、看直播或做飯,很容易把這一輪對話卡住。常見的做法是彈 Windows 原生通知,但實際經常失效:系統通知總開關被關閉時 toast 調用會返回成功但不顯示,專注助手會靜默掉,不少通知類插件用 powershell -File x.ps1 腳本,而 Windows PowerShell 默認執行策略是 Restricted,腳本直接被拒絕,插件靜默失敗。
dsh-ask-alert 是一個 DSH 插件,在助手向你提問、等待審批或一輪任務結束時,在桌面彈出置頂提醒卡片,並閃任務欄、響提示音;如果問題沒回答,會按間隔重複提醒。它不依賴系統通知開關,自己畫一張置頂卡片放在屏幕右下角,不需要通知權限,也不會搶走當前窗口的焦點。
核心功能¶
- 提問提醒:助手調用
ask_user_question時立即提醒,並在未回答期間重複提醒。 - 審批提醒:有操作等待批准/拒絕時提醒(可關)。
- 任務完成提醒:一輪任務結束、助手轉爲空閒時提醒(可關)。
- 重複提醒:提問/審批未回答時,每 20 秒再提醒一次,默認最多 5 次(可調)。
- 置頂卡片:右下角圓角卡片,
ShowActivated=false不搶焦點,13 秒自動消失,點一下即可關閉。 - 任務欄閃爍:
FlashWindowEx+FLASHW_TIMERNOFG,DSH 在後臺時會一直閃到你切回去。 - 提示音:系統通知音 + 獨佔音效,防止專注助手靜音。
- 不堆疊:新提醒會自動關掉上一條卡片。
安裝與啓用¶
在 PowerShell 中執行:
dsh plugin --profile desktop add github:bgfhsnm/dsh-ask-alert
也可以走圖形界面:插件 → 添加插件 → 填 github:bgfhsnm/dsh-ask-alert → 立即啓用。
安裝後無需重啓即可生效(Host 半身只監聽事件,不註冊 service / tool / settings)。
需要 Windows 10/11 與桌面會話。插件本身不依賴 npm 依賴,無需構建。
典型用法¶
插件默認值即可直接使用。需要定製時,在 profile 的 cordis.patch.yml 裏覆蓋對應行:
- id: dsh-ask-alert
config:
askTitle: 'DSH · 有個問題等你回答'
askBody: '助手在等你回覆,請切回 DeepSeek Harness。'
approveTitle: 'DSH · 需要你確認'
approveBody: '有一個操作正在等你批准或拒絕。'
doneTitle: 'DSH · 任務完成'
doneBody: '這一輪任務已結束,可以回來查看結果了。'
repeatSeconds: 20 # 重複提醒間隔,0 = 只提醒一次
maxAlerts: 5 # 最多提醒次數(含第一次)
onApproval: true # 審批提醒開關
onDone: true # 任務完成提醒開關
showProject: true # 在正文前加會話目錄名
修改後重啓 DSH 生效。
只想保留提問提醒、不要「任務完成」打擾:
- id: dsh-ask-alert
config:
onDone: false
適用場景與注意¶
- 適合在多任務場景下使用 DSH,避免對話被遺忘。
- 插件以當前 dsh 進程權限運行,安裝前應檢查源碼與許可證(MIT)。
- 僅支持 Windows;依賴桌面會話(服務/無頭會話裏沒有可顯示的窗口)。
- 任務欄閃爍需要能找到標題包含
DeepSeek的窗口;DSH 窗口標題被改掉時只會彈卡片、不閃任務欄。 - 卡片固定出現在主屏工作區右下角,雙屏/自定義縮放下的位置未做單獨適配。
- 中文
.ps1必須以 UTF-8 with BOM 保存,否則 Windows PowerShell 5.1 會按 GBK 解碼並報假語法錯誤(倉庫內文件已帶 BOM)。
短結尾¶
dsh-ask-alert 通過置頂卡片和任務欄閃爍,解決了 DSH 對話被遺忘的問題,適合需要頻繁切換窗口的開發者使用。插件由 bgfhsnm 維護,可在目錄頁查看更多信息:https://www.skillhub.cn/plugins/bgfhsnm/dsh-ask-alert
參考資料¶
- GitHub:https://github.com/bgfhsnm/dsh-ask-alert