dsh-better-status:DeepSeek Harness 會話統計可視化與餘額監控

前言

DeepSeek Harness(DSH)在底部提供了一個文本統計行,展示輪次、步驟、耗時、tok/s 等信息。這種形式信息密度低,且容易被忽略。dsh-better-status 插件將這一行文本替換爲頁面右側直觀、醒目的圖表面板,並每秒自動刷新。它還增加了本次花費與 DeepSeek 賬戶餘額的顯示。

安裝與啓用

本插件爲正式插件包,安裝一次即出現在 DSH 的插件列表中,每次啓動自動加載。

  1. 找到 DSH profile 目錄(默認 ~/.dsh/profiles/<profile>/)。
  2. 編輯 package.json,加入依賴與 bundle 配置:
{
  "dependencies": {
    "dsh-better-status": "https://github.com/Yaing-Yan/dsh-better-status/archive/refs/tags/v1.0.0.tar.gz"
  },
  "dsh": {
    "profile": {
      "bundles": [
        "@deepseek-ai/dsh-base",
        "@deepseek-ai/dsh-web-app",
        "dsh-better-status"
      ]
    }
  }
}
  1. 在該 profile 目錄執行 pnpm install。
  2. 重啓 DSH。打開任一有會話的界面,頁面右側即出現每秒刷新的圖表。

功能特性

  • 每秒自動刷新:由 timer 服務驅動,強制重渲染並重讀最新投影。
  • 零圖表依賴:全部使用原生 React + SVG + CSS 繪製,無構建步驟。
  • 數據權威:直接讀取會話投影 sessionStats、tokenUsage、contextPressure,與官方統計行同源。
  • 花費與餘額顯示:
    • 花費:按 token 用量 × 單價估算(單價可修改)。
    • 餘額:由 Host 側通過 Typert Remote 調用 DeepSeek /user/balance 讀取(緩存 60s)。
  • 自動降級:當 sessionStats 投影缺失時,回退到本地節點摺疊數據。
  • 主題自適應:顏色使用 --dsw-* 變量,明暗主題自動適配。

圖表內容

面板包含以下可視化組件:
* 輪 / 步:兩個大數字卡片(藍 / 紫)。
* 本次花費 / 賬戶餘額:兩個數字卡片。
* LLM 耗時 vs 工具耗時:SVG 環形圖(donut)+ 圖例。
* 首 token 平均 / 生成速度:漸變進度條。
* 緩存命中:環形進度環。
* 輸入 / 輸出 token:堆疊條形圖。
* 上下文佔用:環形進度環(附加)。

二次開發

插件源碼位於 lib/client.js,包含 Tile、Donut、Ring、Bar、StackedBar、LegendItem 等無 hook 的純展示函數。

  • 改配色:修改 lib/client.js 裏的 C 調色板。
  • 改面板位置/寬度:修改 lib/client.js 的 CSS 裏 .bsb-panel 的 top / right / width。
  • 改花費單價:修改 lib/client.js 頂部的 PRICING(單位 USD/百萬 token)。
  • 改餘額刷新間隔:Host 緩存 60s(lib/index.js 的 60000),Client 每 60 tick 拉取一次(lib/client.js 的 tick % 60)。

注意事項

  • 餘額功能:需要能讀到你的 API Key。在 DSH 的 Models 設置頁配置 DEEPSEEK_API_KEY(或 llm-deepseek 設置裏的 apiKeyEnv)。未配置時餘額顯示「—」,其餘圖表不受影響。
  • 權限與安全:插件以當前 DSH 進程權限運行,安裝前建議閱讀源碼與許可證(MIT)。

倉庫

https://github.com/Yaing-Yan/dsh-better-status

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

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

小夜