dsh-token-monitor:DSH Web 的大模型餘量與用量監控插件

前言

同時接幾家模型供應商是 DSH 用戶的常態:Kimi For Coding 是訂閱額度,DeepSeek 官方按量扣餘額,OpenRouter 看積分。想知道「還剩多少、這個月花了多少」,通常要分別登錄各家控制檯,來回切換,查完一圈,手頭的工作早被打斷。

dsh-token-monitor 把這件事搬進了 DSH Web:會話頭部常駐餘量徽標,主區多一個「用量」頁籤,本地 SQLite 記錄每次調用的 token 與估算費用。下面介紹它的功能、安裝與配置。

這是什麼

dsh-token-monitor 是 DeepSeek Harness(DSH)Web 界面的大模型餘量與用量監控插件,作者 licyer,當前版本 1.0.2,MIT 許可證。它解決的問題很具體:用量與餘量數據散落在各供應商控制檯,在 DSH 裏看不到。

插件做三件事:

1、在會話頭部即時顯示當前模型供應商的餘量;
2、在主區提供與「對話 / 軌跡」並列的「用量」頁籤,統計 token、估算費用與使用趨勢;
3、自動採集 DSH 會話日誌,把每次調用的 token 與費用落進本地 SQLite(token-monitor.db)。

核心功能

餘量徽標

徽標顯示當前模型供應商的餘量,形如 k3 · 5h 剩 82%。兩類供應商的展示邏輯不同:

1、訂閱制供應商(如 Kimi For Coding):顯示滾動窗口與周額度百分比;
2、按量付費供應商(如 DeepSeek 官方):顯示賬戶餘額。

點擊徽標彈出詳情層,包含當前提供方指標、本會話 token 用量(可切換會話)、全部提供方摺疊區、cc-switch 數據同步提示條、更新時間與手動刷新。

用量頁籤

「用量」頁籤與「對話 / 軌跡」並列。頂部是篩選(客戶端 / 供應商 / 模型級聯,供應商按廠商歸併)和時間窗(當天 / 昨天 / 7 / 30 / 90 天 / 全部),統計卡給出總消耗、請求次數、預估費用、平均 TTFT、新增輸入、緩存命中、輸出、緩存命中率。往下依次是:

  • 使用趨勢:漸變面積圖,左軸 token 構成,右軸可切換預估費用 / 請求次數;當天視圖爲分鐘級刻度(2~60 分鐘自適應、至少 12 桶,補桶不跨天),懸浮提示顯示桶區間(如 15:00~15:30);
  • 供應商消耗統計:X 軸供應商、柱內按模型堆疊,右側可切換費用 / 次數;
  • 年度消耗熱力圖:GitHub 日曆風格,覆蓋近 12 個整月,色深對應當日 token,首尾按周補齊;
  • 使用排行:模型 / 供應商 / 客戶端三個維度聚合,默認按總消耗降序;
  • 請求記錄:分頁明細表,時間倒序,頁碼跳轉,每頁條數可選 10/20/50/100。

自動採集與存儲

插件自動採集 $DSH_HOME/sessions 下的會話日誌,增量寫入本地 SQLite(token-monitor.db)。採集由後臺定時器、手動刷新和打開頁籤時觸發,頁面查詢直接讀庫。數據不出本地。

歷史導入與跨設備同步

兩處補數據的入口:

1、cc-switch 歷史記錄導入,重複導入不產生重複數據;
2、JSON 快照導出 / 導入(含明細與聚合),可把不同設備的使用記錄合併到一臺設備,冪等不重複。

兩個入口都在「用量」頁籤底部的「數據來源」。

語言跟隨

界面文案跟隨 DSH 的中文 / 英文切換,不需要單獨設置。

安裝與啓用

前置條件:Node.js ≥ 22(依賴內置的 node:sqlite),且僅支持 DSH Web 端(platform: web)。從 npm 安裝(推薦方式):

dsh plugin --profile web add dsh-token-monitor

也可以從 GitHub 安裝:

dsh plugin --profile web add github:licyer/dsh-token-monitor

安裝即自動註冊,寫入 profile 的 package.json bundles 與依賴,不需要手動改配置。經過上面的步驟,重啓 dsh web 進程後生效,會話頭部應出現餘量徽標,主區多了「用量」頁籤。

憑證配置

餘量查詢讀取 DSH 已有憑證,寫在 ~/.dsh/.credentials.yaml,或通過環境變量提供,如 DEEPSEEK_API_KEY、KIMI_CODING_API_KEY。憑證沒配時徽標會提示「未配置 API Key」,配置後自動恢復。

插件配置

配置文件位於 $DSH_HOME/storages/token-monitor/config.json。設置入口在 DSH 設置面板(左下角齒輪)→ Token Monitor 頁,表單保存後即時寫回該文件。共三個設置項:

字段 默認值 含義
defaultDays 1 用量頁籤默認時間窗天數,0 表示全部
pollMs 60 頭部餘量輪詢間隔,設置頁與 config.json 均存秒,需要毫秒時由前端單獨 ×1000,取值 5–86400
retentionDays 60 請求記錄保留天數,超期記錄定期清理但不影響聚合統計,設置頁提供 30/60/90

設置頁下方還附有已適配供應商清單,標明哪些提供方已適配、開發者是否用真實憑證驗證過。

遇到端點漂移(供應商 API 地址變更,常見 404)時,可在插件配置裏用 providers.<id>.url 覆蓋端點地址。

供應商適配

提供方 類型 展示內容 驗證狀態
kimi-coding 訂閱額度 5h / 7d / 權益等級(百分比與重置倒計時) 已驗證
moonshotai-cn 按量餘額 可用餘額(CNY)+ 現金 / 代金券明細 已驗證
deepseek 按量餘額 賬戶餘額(按幣種賬戶顯示) 已驗證
opencode-go 訂閱額度 5h / 7d / 30d(百分比與重置倒計時) 已驗證
openrouter 按量餘額 積分餘額(1 積分 = $1)+ 本月 / 總消耗 已驗證
minimax / minimax-cn 訂閱額度 5h / 7d 用量百分比(剩餘%) 待真實 key 驗證
zai / zai-coding-cn 訂閱額度 5h / 7d 用量百分比(窗口自動識別,含重置時間) 待真實 key 驗證

後兩組已通過 mock 測試,但未用真實 key 校準;若實際響應結構與參考實現有出入,可提交接口返回的 raw 原文協助校準。

常見問題

徽標沒顯示或提示「查詢失敗」

先看文案:「未配置 API Key」說明憑證沒配,按上面的憑證配置補齊即可;「查詢失敗」說明憑證已配置但餘量接口查詢失敗,按條排查:網絡不通或超時、端點漂移(用 providers.<id>.url 覆蓋)、響應字段結構異常無法解析。若提示「插件未適配該提供方」,則是適配範圍問題,與以上無關。

用量頁籤沒數據

用量來自會話日誌採集:先確認 $DSH_HOME/sessions 下有會話日誌,再點頂部「刷新」(先採集再查詢);cc-switch 數據需在「數據來源」手動導入。

費用準不準

費用按 pi-ai 本地刊例價估算,僅供參考、非實際賬單;訂閱制不產生真實扣費;未定價模型計入 token、不計入費用。

本地開發

克隆倉庫後用本地路徑掛載:

git clone https://github.com/licyer/dsh-token-monitor.git
dsh plugin --profile web add link:/path/to/dsh-token-monitor

改前端(lib/client.js)走 HMR 熱替換,刷新即生效;改服務端(lib/index.js / lib/util/)需重啓 dsh web 進程。

適用場景與注意事項

適合同時使用訂閱制與按量付費供應商、想在 DSH Web 裏直接看餘量和用量明細的開發者,也適合需要本地留存調用記錄、做跨設備合併的人。

使用前注意:

1、插件以當前 dsh 進程的權限運行,安裝前建議檢查源碼與許可證(MIT);
2、費用爲本地刊例價估算,不要當賬單對賬;
3、minimax 與 zai 兩組適配未經真實 key 驗證,結果以實際爲準;
4、僅支持 Web 端,Node.js 版本必須 ≥ 22。

相關鏈接

DSH 的理念是「一切皆插件」,dsh-token-monitor 把餘量查詢和用量統計收進同一個界面,數據留在本地,安裝只需一條命令。

  • GitHub 倉庫:https://github.com/licyer/dsh-token-monitor
  • 社區目錄收錄頁:https://www.skillhub.cn/plugins/licyer/dsh-token-monitor (社區目錄爲獨立站點,與 DeepSeek / 幻方無官方從屬關係)
羽毛球分组比赛记分
小程序二维码

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

小夜