dsh-tab-watchdog:DeepSeek Harness Web 瀏覽器標籤頁狀態監聽插件

前言

在使用 DeepSeek Harness Web 進行智能體開發或工作流編排時,開發者經常需要頻繁切換標籤頁來檢查工作區是否完成、是否報錯,或者等待審批與提問。dsh-tab-watchdog 作爲一個持久化插件,解決了這一痛點。它通過在瀏覽器標籤頁標題和圖標上顯示視覺反饋,讓開發者無需切換頁面即可掌握工作區狀態。

插件定位

這是一個針對 DeepSeek Harness Web 的客戶端插件,由開發者 andreagosto 維護。它將原本動態插件的邏輯打包爲持久化 bundle,能夠隨 DSH 進程啓動並保持運行。

核心功能

  1. 待處理計數顯示:在瀏覽器標籤頁標題中顯示當前的待處理項目總數。
  2. 視覺閃爍提示:當有狀態變化時,標籤頁標題和圖標會閃爍綠色或黃色。
  3. 持久化運行:插件支持 DSH 重啓和瀏覽器刷新(F5),無需重新激活。
  4. 多事件監聽:監聽工作完成(綠色)、報錯、審批和提問事件。
  5. Favicon 狀態提示:利用 Favicon(鯨魚圖標)提示狀態變化,不破壞原有圖標。

安裝與啓用

該插件通過 npm 包管理。安裝前請確保已安裝 pnpm,或者 dsh plugin 命令會自動處理。

在包含 dsh-tab-watchdog 目錄的終端中執行:

npx @deepseek-ai/dsh@latest plugin --profile web add ./dsh-tab-watchdog

安裝完成後,需要重啓 dsh web 以激活瀏覽器端的邏輯。

移除插件:

npx @deepseek-ai/dsh@latest plugin --profile web remove dsh-tab-watchdog

工作原理

插件採用雙半結構,與官方插件保持一致:

  • Host 半 (index.js):負責將插件註冊爲 Loader 條目,通過 cordis.patch.yml 和 dsh.bundle.patch 配置,將瀏覽器端代碼引入啓動清單。
  • Browser 半 (lib/client.js):通過 window.__ModuleLoader__ 格式加載,訂閱 Host 轉發的事件並處理狀態邏輯。

觸發邏輯:

  • 綠色:當 api-session/status(sessionId, running=false) 觸發,表示工作區完成一輪工作。
  • 黃色:當出現 api-session/error、待審批或待回答(提問/計劃審查)時觸發。
    • 注意:對於審批和提問,黃色閃爍不依賴特定的轉發事件,而是輪詢應用自身的 uiSession.pendingInteractions.getSnapshot() 狀態。
  • 顏色交替:當同時存在“僅完成”和“待處理”狀態時,綠色與黃色會交替閃爍。

Favicon 邏輯:
插件會在加載時捕獲原始鯨魚圖標。當頁面未聚焦且有待處理項目時,原始圖標與綠色/黃色圖標交替顯示,直到用戶回到頁面或待處理項目清零。

注意事項

  1. 無設置界面:該插件不提供 Web 設置頁面,如需禁用,請使用 dsh plugin remove 命令或在配置文件中設置 disabled: true。
  2. 瀏覽器端限制:瀏覽器端僅在頁面打開時接收事件。如果頁面未打開,新事件會被記錄爲“待處理”,直到用戶返回頁面。
  3. 錯誤狀態凍結:如果一個會話報錯,其狀態會凍結在黃色。即使後續該會話狀態變爲 running=true(重啓),錯誤狀態也不會自動降級爲綠色。
  4. 版本兼容性:當前測試版本爲 @deepseek-ai/dsh 0.1.2-rc.1。

鏈接

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

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

小夜