dsh-token-usage:在 DSH 設置裏看按模型、按日的 Token 用量

前言

DeepSeek Harness(DSH)會把會話寫成 ~/.dsh/sessions 下的日誌,賬戶頁也能看到餘額,但要把「每個模型、每天燒了多少 input/output/cache」從 JSONL 裏自己彙總,成本很高。下面介紹社區插件 dsh-token-usage(維護者 GIN0076,GitHub GIN0076/dsh-token-usage):在 Settings → Token Usage 裏用本地數據做日/周/月統計和圖表,可選價目表估算費用,數據不出本機。

這是什麼

dsh-token-usage 是 DSH 的客戶端插件(Cordis bundle 名 @local/token-usage,當前資料版本 1.3.0,MIT 許可證)。它在設置面板掛一塊 Token 用量儀表盤:按 provider/model 彙總 token,支持 Day / Week / Month 切換與自定義時間範圍,折線圖、橫向排行、彙總卡片;圖表爲 純 SVG、零額外依賴。統計來源是會話日誌只讀掃描,本地優先(local-first),不內置任何單價。

核心功能

時間粒度與範圍

  • Day / Week / Month:周從週一開始,月爲自然月;底層只存「按日」桶,切換粒度即時、不重複掃盤。
  • 預設範圍(如最近 7/30 天、12 周、12 月、全部)及自選起止日期。
  • 彙總卡片與排行榜對當前選定區間整體生效;隨粒度變化的是折線圖分組與 Buckets 卡片。

圖表與排行

  • 折線圖:粗線表示合計,細線按模型;十字準線懸停看每日明細,圖例可點選隱藏/顯示模型。
  • 橫向條形圖:模型佔比與(配置單價後)費用;可切換 按 model / 按 provider,排行可按 cost 排序。

指標卡片

合計、input、output、cache read、cache write、reasoning、cache 命中率、調用次數、模型數等。配置價目表與預算後,還會出現 Cost、Today、This month、Budget(超預算時 Budget 卡片變紅)。

費用估算(可選)

插件不內置單價。在面板 Prices 中編輯,寫入 ~/.dsh/token-usage-prices.json(原子寫入)。單位是每百萬 token 的價格;currency 默認 ¥;模型鍵爲面板裏出現的 provider/model 字符串。

示例結構(來自 README):

{
  "currency": "$",
  "models": {
    "deepseek-account/deepseek-flash": { "input": 1, "output": 2, "cacheRead": 0.1, "cacheWrite": 1 }
  },
  "default": { "input": 1, "output": 2 }
}

未定價模型會單獨統計並在面板提示,不會靜默記爲 0;清空並保存可再次隱藏費用。費用僅爲估算,以服務商賬單爲準。

配置、導出與刷新

  • Settings(對應 ~/.dsh/token-usage-config.json):刷新間隔、預算、數據保留等。
  • Export:當前範圍導出 CSV 或 JSON(含桶×模型行、小計與總計),支持複製與下載。
  • 標籤頁可見時每 60s 靜默刷新;回到標籤頁立即刷新;隱藏時不發請求。
  • Rebuild:一鍵全量重掃;用水印避免重複計數;若本地 store 裏仍有已刪會話對應的歷史,會先確認(該部分無法重建)。

統計口徑(資料摘要)

Host 側從 session 日誌做 live fold 與啓動回填;髒計數 fail closed;compaction 摘要按自身 provider/model 歸因;fork 繼承不重複計數。

安裝與啓用

DSH 標準渠道是從 GitHub 安裝(桌面端務必用 desktop profile,不要用已過時的 --profile web):

# desktop app(打包客戶端實際加載的 profile)
dsh plugin --profile desktop add github:GIN0076/dsh-token-usage
# 或省略 --profile,作用於當前默認 profile
dsh plugin add github:GIN0076/dsh-token-usage

安裝後 硬刷新 頁面(Ctrl+Shift+R),打開 Settings → Token Usage。

卸載(README 說明):plugin_manager remove_bundle → @local/token-usage;主機側無殘留,數據目錄可自行保留或刪除。

典型用法

  1. 按上文命令安裝並硬刷新,進入 Settings → Token Usage。
  2. 用頂部 Day | Week | Month 和時間範圍預設(或自定義日期)查看折線與 Buckets。
  3. 需要費用與 Budget:點 Prices 填 token-usage-prices.json;在 Settings 裏設 budget(可選)。
  4. 對比模型消耗:在排行區切換 By model / By provider,有單價時可用 By cost。
  5. 需要離線分析:選好轉好範圍後 Export CSV/JSON。
  6. 日誌有變動但數字不對:點 Rebuild;若提示歷史會話文件已不存在,按說明確認後再重建。

適用場景與注意

適合:長期在 DSH 上跑多模型、多 provider,希望在本機快速看 token 結構、cache 佔比,並可選地按自有單價估費與控預算的開發者。

注意:

  • 插件在當前 DSH 進程權限下讀 ~/.dsh/sessions 與寫入 ~/.dsh 下配置/緩存;安裝前請自行查看 倉庫源碼 與 MIT 許可證。
  • 社區目錄 skillhub 插件頁 與 GitHub 爲獨立信息源,與 DeepSeek / 幻方無官方從屬關係;星標等元數據以各站點當時顯示爲準(資料中 GitHub 星標爲 0)。

結尾

dsh-token-usage 把 DSH 會話日誌變成可交互的本地儀表盤:按日存儲、按周/月即時聚合,純 SVG 圖表,可選價目與預算。目錄與源碼:

  • https://www.skillhub.cn/plugins/GIN0076/dsh-token-usage
  • https://github.com/GIN0076/dsh-token-usage
羽毛球分组比赛记分
小程序二维码

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

小夜