dsh-session-insight:DeepSeek Harness 會話健康度洞察

前言

DeepSeek Harness (DSH) 的核心能力之一是投影,用於觀察會話狀態。現有的 sessionStats 提供了基礎計數,但難以直接回答“當前會話是否健康”這一問題。dsh-session-insight 插件通過一條只讀的會話健康度狀態條,補充了步數、工具調用、失敗數、重複數及失敗率等關鍵指標。它以 sessionInsight 投影單元的形式存在,並在輸入框上方展示爲一個卡片。

核心功能

該插件聚焦於會話的實時健康監控,具備以下能力:

  1. 健康度狀態條
    在輸入框上方展示一組只讀數據:步數、工具調用數、失敗數、重複調用數以及失敗率。

  2. 投影單元實現
    實現了 sessionInsight 投影單元,通過 wire.view 將計算結果傳遞給客戶端。

  3. 事件摺疊處理
    內部對以下事件進行摺疊處理,避免向客戶端發送不必要的變化:

    • assistant/message:提取工具調用信息。
    • tool/call:記錄派發調用。
    • tool/result:記錄結果及錯誤狀態。
    • step/end 與 turn/end:會話週期結束事件。
  4. 失敗率計算

    • 公式:失敗率 = 失敗的 tool/result 數 ÷ 已派發的 tool/call 事件數。
    • 邊界:被 ctx.tools.guard() 攔截的調用不計入分母,也不計入分子,反映的是“已派發調用”的健康狀況。
  5. 顯示精度策略
    根據樣本量動態調整顯示格式,避免小樣本下的過度解讀:

    • 樣本量 < 10:顯示原始分數(如 1/3、0/5),保留精確度和樣本量信息。
    • 樣本量 ≥ 10:顯示百分比(如 8.6%),減少位數,便於閱讀。
    • 樣本量 = 0:顯示短橫線(—)。

安裝與啓用

插件通過 GitHub 倉庫發佈,不支持 npm 渠道。

Web Profile

Web Profile 支持標準的 CLI 安裝方式:

& $dsh plugin --profile web add github:Elari39/dsh-session-insight

安裝後,需在 ~/.dsh/profiles/web/package.json 的 dsh.profile.bundles 數組中添加 "dsh-session-insight",然後重啓 DSH。

Desktop Profile

Desktop Profile 由 Electron 獨佔,無法使用 dsh plugin 命令。需運行插件自帶的安裝腳本:

pwsh -File .\install.ps1

驗證加載

重啓應用後,輸入框上方應出現健康度狀態條。也可以通過瀏覽器直接請求測試加載:

/plugins/??dsh-session-insight/client.js&rev=<rev>

若返回 200,說明瀏覽器端加載成功;404 通常意味着 Host 端未正確掛載。

注意事項

  1. Desktop Profile 限制:Desktop Profile 必須通過 install.ps1 安裝,不能使用 dsh plugin 命令。
  2. 進程退出:任何插件安裝或配置修改操作前,必須完全退出 Electron 應用。
  3. 生產環境:建議釘定到固定版本(使用 tarball URL),以避免後續更新導致的不兼容。
  4. 依賴限制:客戶端組件僅允許 require('react'),不能引入其他首方 UI 庫,否則可能導致 Slot 崩潰。插件在 useProjection 不可用時返回 null,確保降級安全。
  5. 發佈狀態:目前該插件僅在 GitHub 發佈,npm 渠道尚未發佈。

總結

dsh-session-insight 提供了一個輕量級的會話健康監控層,通過投影機制將計算邏輯與視圖分離,並針對小樣本場景優化了展示策略。對於需要深入分析智能體運行狀態的開發者,這是一個實用的輔助工具。

插件目錄
GitHub 倉庫

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

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

小夜