dsh-plugin-dosage:在 DSH 側邊欄集中查看餘額與峯谷成本

前言

在 DSH 的插件化客戶端場景裏,開發者經常需要同時看多個 provider 的賬號狀態、token 統計,以及每次調用的峯谷成本。已有做法是分別掛載賬號監控和 per-call billing,入口分散,也可能出現重複入口。

下面介紹 dsh-plugin-dosage。它把多供應商餘額/賬號監控和峯谷 per-call 計費放到一個側邊欄 Usage/Balance 彈層裏,減少在多個入口之間切換。

這是什麼

dsh-plugin-dosage 是一個 DeepSeek Harness 社區插件,由 qingfeng200410 維護,許可證爲 MIT。

它的定位是在 DSH web profile 中提供一個側邊欄入口,用來查看多 provider 的餘額/賬號狀態、token 統計,以及按峯谷時段計算的 per-call 成本。入口是 sidebar 底部的 Usage/Balance popover,而不是額外增加一個 tab。

這是社區插件,與 DeepSeek 無官方從屬關係。

核心功能

下面列的是插件提供的能力,均圍繞“一個入口看用量和成本”:

  • 入口是 sidebar 底部的 Usage/Balance popover,而不是額外的 tab。
  • 支持多 provider 餘額/賬號監控:DeepSeek、OpenRouter、Moonshot/Kimi、OpenCode Go、Z.ai、Kimi For Coding、MiniMax Coding Plan,以及 custom/New API/Sub2API monitors。
  • token 統計包括 today/month/all-time tokens、cache hits、hit rate。
  • per-call 成本按峯谷時段拆分;峯時是北京時間 09:00–12:00 和 14:00–18:00。
  • Overview tab 展示 total spend、峯時與谷時拆分、per-model totals。
  • 月度 heatmap/calendar 可按 cost、call count、tokens 查看。
  • Call log 記錄 model、hit rate、finish reason、peak/off-peak cost,並提供 Today、7 days、30 days、All 過濾。
  • 展示 deepseek-v4-flash 和 deepseek-v4-pro 的官方 DeepSeek unit prices。
  • 支持 CSV、JSON、PNG export 和按 timestamp merge-import。
  • 用戶級數據放在 ~/.dsh/dsh-usage,切換項目不會把數據拆開。
  • sidebar footer 的 token count 即使彈層關閉也會每 5 秒刷新。

安裝與啓用

安裝前需要準備 DSH web profile,以及 dsh 和 pnpm。推薦通過 npm 安裝。

先執行下面命令,把插件安裝到 web profile:

dsh plugin --profile web add dsh-plugin-dosage

如果你要使用 GitHub tag 安裝,命令如下。這裏寫全了 tag v0.1.0:

dsh plugin --profile web add -w github:qingfeng200410/dsh-plugin-dosage#v0.1.0

如果你已有本地 tarball,也可以直接安裝:

dsh plugin --profile web add ./dsh-plugin-dosage-0.1.0.tgz

升級插件時執行:

dsh plugin --profile web update dsh-plugin-dosage

卸載時執行:

dsh plugin --profile web remove dsh-plugin-dosage

卸載後,~/.dsh/dsh-usage/ 下的文件會保留,不會自動刪除。

注意不要把這個插件與 dsh-usage-stats 和 dsh-usage-plugin 一起安裝,避免重複入口或路由衝突。

典型用法

下面幾個步驟可以在安裝後直接對照使用。

1、點擊 sidebar 底部的 Usage/Balance,打開統一的使用/餘額彈層。

2、查看多 provider 的餘額/賬號狀態,以及 today/month/all-time tokens、cache hits、hit rate。

3、進入 Overview 查看 total spend、峯時與谷時拆分,以及 per-model totals。

4、進入月度 heatmap,按 cost、call count 或 tokens 查看歷史;進入 Call log 查看 model、hit rate、finish reason 和 peak/off-peak cost。

5、如需導出或合併,可使用 CSV、JSON、PNG export 和按 timestamp merge-import。

如果配置了 OpenRouter,需要使用 OPENROUTER_MANAGEMENT_KEY,不是 inference key。可以在 ~/.dsh/.credentials.yaml 中設置:

OPENROUTER_MANAGEMENT_KEY: <replace-with-your-own-key>

這裏只示意配置位置。不要把真實 .credentials.yaml、API key 或 cookie 貼進 issues。

如果要添加 custom/New API/Sub2API monitors,在 ~/.dsh/profiles/web/cordis.patch.yml 中添加對應 monitors 配置。

數據與憑據邊界

這個插件把用戶級數據放在 ~/.dsh/dsh-usage,而不是寫進當前項目目錄。這樣切換項目時,數據不會按項目拆開。

需要注意以下事實:

  • 如果設置了 DSH_HOME,相關路徑以該目錄爲基準。
  • credentials 在 host 上解析,不會發送到 browser。
  • OpenRouter 需要 OPENROUTER_MANAGEMENT_KEY,不是 inference key。
  • 沒有官方價格的模型按 ¥0 計數。
  • call records file 的上限是 100,000 條。
  • 卸載後 ~/.dsh/dsh-usage/ 下的文件仍會保留。

適用場景與注意

適合以下場景:

  • 你使用 DSH web profile,並同時在多個 provider 上調用模型。
  • 你需要在一個側邊欄入口裏查看餘額、token 統計、緩存命中、峯谷成本和調用日誌。
  • 你需要導出 usage 數據,或按 timestamp 合併歷史數據。

使用前請注意:

  • 這是社區插件,不是 DeepSeek 官方組件。
  • 插件以當前 dsh 進程權限運行;安裝前建議檢查源碼與許可證。
  • 需要 DSH web profile、dsh 和 pnpm。
  • 推薦 npm 安裝。
  • 不要同時安裝 dsh-usage-stats 和 dsh-usage-plugin。
  • 不要把 .credentials.yaml、API key 或 cookie 貼進 issues。

結尾

dsh-plugin-dosage 的價值,是把“賬號餘額”和“每次調用成本”放到同一個側邊欄彈層裏,減少在多個入口之間來回切換。適合在 DSH 客戶端裏做用量、成本和多 provider 賬號的集中查看。

如需在 DSH 社區目錄中查找,可搜索插件名 dsh-plugin-dosage。源碼見:

https://github.com/qingfeng200410/dsh-plugin-dosage
羽毛球分组比赛记分
小程序二维码

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

小夜