dsh-web-attention-badge-enhanced:給 DSH Web UI 補上三重會話提醒

前言

用 DeepSeek Harness(DSH)的 Web UI 跑任務時,常見的工作方式是把會話丟在後臺,切去別的標籤頁做別的事。問題在於回來的時候:你不知道哪些會話在等一個 ask_user 的回答、一個審批確認,或者哪些已經跑完但還沒打開。瀏覽器原生對這類狀態沒有感知,只能逐個會話點開確認。

DSH 的理念是「一切皆插件」,客戶端這類缺口同樣可以交給插件補。本文介紹 nbfys/dsh-web-attention-badge-enhanced:它是 Luaphes/dsh-web-attention-badge 的增強 fork,在上游「角標 + 標籤頁標題 + favicon」三重提醒的基礎上,新增了當前會話完成追蹤與已確認提醒。

這是什麼

一句話定位:DeepSeek Harness Web UI 的注意提醒徽章插件,任一會話需要用戶關注時,同時在三個位置給出提示。

倉庫由 nbfys 維護,原始作品是 Luaphes/dsh-web-attention-badge(MIT,© Luaphes)。fork 保留全部原始行爲,相對上游 v0.3.2 的改動全部集中在 lib/client.js,具體見下文。

三重提醒如何工作

1、左上角角標。統計「等待用戶輸入」或「已完成但未打開」的會話數,形如 (1) 的數字角標。角標可點擊穿透,不會遮擋側欄。

2、瀏覽器標籤頁標題前綴。任一會話等待用戶輸入時顯示 [Waiting](最高優先級),否則在存在完成提醒時顯示 [Done]。這一項是 fork 的修改,取代了上游的 (N) 計數。

3、鯨魚 favicon 重着色。作爲第三重提醒,顏色規則與角標一致。

顏色含義:

  • 琥珀色:等待用戶輸入的會話,包括 ask_user 提問、審批提示、計劃模式審覈;對應標籤頁標題 [Waiting]。
  • 綠色:離開期間完成且未打開的會話,以及當前選中會話回合剛結束(running → idle);對應標籤頁標題 [Done]。

實現上,三項提醒共享內置 sessions store 的同一計數,沒有 host 代碼,也沒有額外 transport。

相對上游的三處改動

改動全部位於 lib/client.js:

1、標籤頁標題前綴。把上游的 (N) 計數換成 [Waiting] / [Done]:任一會話等待用戶輸入時顯示 [Waiting](最高優先級),否則存在完成提醒時顯示 [Done]。

2、當前會話完成追蹤(currentDoneIds / prevRunningById)。host 的 completed 標誌只對未選中的會話生效,插件在客戶端鏡像了當前選中會話的 running→idle 邊沿,因此你正在查看的會話回合結束也會觸發 [Done]。出現新的 running 邊沿或該會話不再是當前會話時清除,由 host 接管。

3、已確認提醒(acknowledgedDone)。host 的 completed 標誌只在新 running 邊沿時清除,回到一個已完成的會話會殘留 [Done]。現在訪問該會話會把提醒標記爲已見並隱藏,直到下一次 running 邊沿重置。

安裝與啓用

目錄頁給出的安裝命令:

dsh plugin --profile web add dsh-web-attention-badge

dsh plugin 會自動註冊 bundle,無需手動配置。

升級與卸載:

dsh plugin --profile web update dsh-web-attention-badge
dsh plugin --profile web remove dsh-web-attention-badge

關於從 GitHub 直接安裝:README 中給出的命令指向的是上游倉庫,不是本 fork:

dsh plugin --profile web add "github:Luaphes/dsh-web-attention-badge#v0.3.1"

如果想使用本文介紹的增強行爲,請使用前面的目錄安裝命令;本 fork 自身的 GitHub 安裝命令在資料中未給出。

調優

調優常量位於 lib/client.js 頂部:

TAB_TITLE_ENABLED                    # [Waiting]/[Done] 標籤頁標題前綴開關
FAVICON_ENABLED                      # 鯨魚 favicon 重着色開關
AttentionBadge / Pill 的 style 映射   # 膠囊顏色與位置

修改後的生效方式:bundle 修改在頁面刷新後生效;manifest 修改需要重啓 dsh web。

另外注意倉庫元數據:package.json 中 name 仍爲 dsh-web-attention-badge、version 爲 0.3.2,repository/bugs/homepage 均指向 Luaphes 上游,fork 自身的版本號未單獨標註。查閱代碼時以 lib/client.js 中的實際改動爲準。

適用場景與注意

適合的場景:

  • 同時跑多個會話、經常把 Web UI 標籤頁切到後臺。
  • 需要在回合結束的瞬間得到可見提示,尤其是你正盯着看的那個會話。

注意:

  • 插件以當前 dsh 進程的權限運行,安裝前建議先檢查源碼與許可證。
  • 許可證爲 MIT:原始作品 © Luaphes,本 fork 的修改同樣按 MIT 條款授權,原始版權聲明見上游倉庫。

小結

這個插件解決的是一個小而具體的問題:Web UI 切到後臺後,會話在等輸入或剛完成時能立刻被看到。角標、標籤頁標題、favicon 三個渠道同時提醒,fork 在此之上補齊了當前會話的 [Done] 觸發與已確認邏輯,改動集中在 lib/client.js,安裝只要一條命令。

  • 目錄頁:https://www.skillhub.cn/plugins/nbfys/dsh-web-attention-badge-enhanced
  • GitHub:https://github.com/nbfys/dsh-web-attention-badge-enhanced

順帶說明:skillhub.cn 是社區維護的獨立插件目錄,與 DeepSeek、幻方無官方從屬關係。

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

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

小夜