前言¶
DeepSeek Harness(命令名 dsh)把智能體跑在本地 Web 界面裏。一輪編碼或排查經常要等很久:工具要你點審批、模型突然提問、或者這一輪已經寫完了,這些提示都停在前臺標籤頁。瀏覽器一切走,請求就默默等着,人回頭才發現 DSH 卡在確認框上。
DeepSeek 官方把 Harness 的設計寫成「一切皆插件」:模型、工具、會話、沙箱、循環和 UI 都是可替換插件,不必改 Harness 源碼。社區目錄 deepseek-harness-plugin.com 收錄了不少第三方擴展,它是獨立站點,與 DeepSeek / 幻方沒有官方從屬關係,不能當成官方應用商店。
dsh-web-ui-notify 是「通知與集成」分類裏的一款 Web UI 客戶端插件。它不給模型加工具,只在你離開當前標籤頁時,用瀏覽器的系統通知把審批、提問和輪次完成搬到桌面,點擊通知還能跳回對應會話。本文按目錄詳情頁、倉庫 README / README.zh.md、package.json、CHANGELOG 和 DeepSeek Harness 官方說明覈對後整理。
這是什麼¶
dsh-web-ui-notify 由 bill9109 維護,npm 包名是 @bill9109/dsh-web-ui-notify,許可證 BSD-3-Clause,主要語言 TypeScript,當前倉庫版本爲 0.1.3(2026-08-14)。社區目錄 2026-08-03 收錄;寫作當日(2026-08-17)GitHub 倉庫顯示 17 stars,目錄頁仍顯示 12 stars,星標數以倉庫頁面爲準。
它解決的問題很具體:Web UI 是 DSH 向你提問的唯一前臺。人在看別的頁面時,工具審批、DSH 提問或一輪幹完了都不會主動找你。這個插件把這些時刻變成原生系統通知,標題帶會話名,點一下打開那條會話。
package.json 把它聲明成 DSH bundle(dsh.bundle + dsh.client),client 平臺是 web。倉庫 README 寫明:通過標準 dsh plugin 裝進 web profile 即可,無需修改 DSH 源碼、無需手寫 patch。倉庫已提交構建產物 lib/,裝完不用再構建。運行時沒有額外 npm 依賴,瀏覽器側對 react、react/jsx-runtime、ui-slots 的 require 走 DSH 前端自己的模塊表。
目錄同一分類裏還有 dsh-notification 等回合完成通知插件。dsh-web-ui-notify 的側重點不同:審批和提問也會響,後臺會話同樣通知,並且點擊會跳到對應會話,而不是隻把窗口拉到前臺。不要把兩套安裝命令混用。
核心功能¶
當前會話需要你介入時通知¶
工具審批和 DSH 提問會彈出通知,正文帶上下文:審批顯示越權原因,提問顯示問題原文。標題帶會話名,例如「重構數據庫 · 需要審批」。
後臺會話同樣通知¶
沒在看的會話需要審批或提問時,也會彈同樣帶上下文的通知;整個後臺會話幹完也會提醒。點通知會直接打開那條會話,而不是隻回到當前正在看的那一條。
當前會話每輪幹完都通知¶
當前會話每一輪結束都會通知。正文是這一輪最終回答的開頭(80 字以內);純工具輪沒有最終回答時,顯示輪次號。正常結束、被中斷、出錯都會通知。
只在離開標籤頁時響,同一件事只響一次¶
頁面在前臺時,DSH 自己已經有提示,插件不會再彈一遍。同一件事只通知一次:斷線重連不會重複響,打開帶歷史記錄的會話也不會把舊輪次全刷一遍。通知不會幾秒後自動消失,會一直等到你處理。
設置行跟 DSH 語言走¶
開關在 設置 → 通用 → 桌面通知,中英文跟隨 DSH 界面語言。設置存在 profile 的 Settings provider 裏,升級插件不會丟掉。
設置行有四種狀態:
| 狀態 | 含義 |
|---|---|
| 已開啓 | 正常工作 |
| 未授權 | 點按鈕向瀏覽器申請權限 |
| 已被瀏覽器阻止 | 以前拒絕過,要去瀏覽器的站點設置改回允許,只點按鈕無效 |
| 瀏覽器不支持 | 當前環境沒有 Notification API |
安裝與啓用¶
插件以當前 dsh 進程的權限運行,安裝時可能執行代碼。裝之前應先看倉庫源碼和 BSD-3-Clause 許可證。
社區目錄頁給出的安裝命令是:
dsh plugin add github:bill9109/dsh-web-ui-notify
這是目錄頁的原文寫法。該插件的 client 平臺聲明爲 web,倉庫 README 因此要求裝進 web profile:
dsh plugin --profile web add github:bill9109/dsh-web-ui-notify
命令內部會在 profile 目錄執行 pnpm add,並把聲明瞭 dsh.bundle 的包追加進 dsh.profile.bundles。目錄頁還提示:如需可復現安裝,可固定 commit 哈希:
dsh plugin add github:bill9109/dsh-web-ui-notify#<commit>
開發調試也可以先 clone,再用本地路徑安裝:
dsh plugin --profile web add /path/to/dsh-web-ui-notify
package.json 要求 Node.js ^20 或 >=22。CHANGELOG 記載:0.1.2 起適配 dsh 20260812 快照,並把包名從 @dsh-external 改成 @bill9109。README 還說明,profile 體系之前的舊版 DSH 用 pnpm --filter @deepseek-ai/dsh add 加 config.yaml;20260806 快照起改爲上面的 profile 方式。若你的 DSH 仍是舊版,要用 git 歷史裏的舊 README,不要套現在這條命令。
裝完後按你平時啓動 DSH Web UI 的方式重啓 Web UI,再硬刷新瀏覽器頁面,插件纔會出現。之後還要授權瀏覽器通知權限,否則插件是靜默的:
- 打開 設置 → 通用 → 桌面通知,點開啓桌面通知
- 瀏覽器彈出詢問時選允許,狀態變成「已開啓」
- macOS 還要在 系統設置 → 通知 裏允許你的瀏覽器
升級:
dsh plugin --profile web update github:bill9109/dsh-web-ui-notify
卸載(注意包名帶 scope):
dsh plugin --profile web remove @bill9109/dsh-web-ui-notify
卸載後同樣要重啓 web 並硬刷新瀏覽器。本地路徑安裝則對替換後的 checkout 重新執行 add。
典型用法¶
- 確認設置行是「已開啓」,瀏覽器對該 DSH 站點的通知權限是「允許」。
- 切到別的標籤頁,讓當前會話跑一輪,或故意觸發一次工具審批 / DSH 提問。此時應彈出系統通知,標題帶會話名。
- 點通知,瀏覽器應回到 DSH 頁面並打開通知裏的那條會話,而不是停在你剛纔看的其他會話。
- 再開一條後臺會話,切走後等它需要審批或整段幹完,確認後臺會話也會響,並且點擊能跳過去。
- 回到 DSH 標籤頁前臺再跑一輪:按 README,此時不應再彈桌面通知,頁面上的原有提示即可。
裝完後如果設置裏沒有這一項,README 建議先確認已經重啓 Web UI 並硬刷新,再用下面這條檢查 bundle 是否寫進了 web profile:
dsh --profile web --dump-config | grep web-ui-notify
沒有通知出現時,按倉庫的故障排查表逐項看:開關是否「已開啓」、站點權限是否「允許」、macOS 是否允許瀏覽器發通知,以及你是否已經切到別的標籤頁。狀態顯示「已被瀏覽器阻止」時,必須到瀏覽器站點設置改回允許。顯示「瀏覽器不支持」則當前環境沒有 Notification API,桌面通知無法工作。重啓後通知突然沒了,多半是瀏覽器重置了站點權限,需要重新授權。
適用場景與注意事項¶
比較適合這些情況:
- 已經在用
dsh web,人會切去看文檔、郵件或別的倉庫,但工具審批和提問仍卡在原標籤頁。 - 同時開着多條會話,需要知道後臺那條在等你,並且點通知能直接跳過去。
- 不只想知道「跑完了」,還想在模型提問、工具越權審批時被叫回來。
使用前要清楚邊界,這些都寫在倉庫 README 裏:
- 只覆蓋 Web UI。
dsh.client.platform是web,不要指望它給終端 TUI 或無界面 profile 彈系統通知。 - 標籤頁要開着,人要離開前臺。頁面在前臺不重複通知;標籤頁關掉之後,瀏覽器也不會再替你彈。它不是操作系統級的常駐守護進程。
- 必須授予 Notification 權限。沒授權時瀏覽器直接禁止彈通知;曾經拒絕過的站點,只能去瀏覽器設置改,插件按鈕幫不上。
- macOS 還有一層系統開關。瀏覽器允許了,系統設置裏如果攔了該瀏覽器,仍然看不見橫幅。
- 沒有按結束原因拆開關,也沒有關鍵詞規則。當前會話每輪結束(含中斷和出錯)都會通知。需要按 completed / error 過濾、或用包含 / 排除規則壓噪音時,目錄裏的
dsh-notification是另一條路,兩者不要混裝命令。 - 點擊會打開對應會話。這是它和部分只聚焦窗口的通知插件的差別,但也要求 Web UI 仍在跑。
目錄頁的安全提示同樣適用:插件以當前 dsh 進程權限運行,安裝時可能執行代碼。這款插件聲稱自己是 Web UI 客戶端 bundle、零運行時依賴、不改 DSH 源碼,但仍應自行覈對源碼和許可證後再裝。可復現安裝請固定 commit 哈希。
小結¶
dsh-web-ui-notify 把工具審批、DSH 提問和輪次完成從 Web 前臺挪到系統通知欄,標題帶會話名,點擊跳回對應會話,並且只在你離開標籤頁時響。它走標準的 web profile 安裝,不改 Harness 源碼。適合已經在用 DSH 網頁界面、又經常把標籤頁切走的人。
目錄頁:https://deepseek-harness-plugin.com/zh-CN/plugins/dsh-web-ui-notify/
GitHub:https://github.com/bill9109/dsh-web-ui-notify