dsh-usage-chart:在 DSH Web 裏看清 Token 用量、成本估算與賬戶餘額

前言

用 DeepSeek Harness(DSH)跑長會話時,token 消耗往往只在事後賬單裏才能看清;上下文被壓縮、緩存命中率變化、高峯與空閒時段單價差異,也很難在對話界面裏即時對照。若要在開發或調試過程中掌握「這一輪花了多少、上下文還剩多少、餘額夠不夠」,通常需要切到開發者平臺或自行拼日誌。

dsh-usage-chart 是面向 DSH Web 的 Cordis 插件,由 Max-Samson 維護,當前 npm 版本 1.1.2(MIT 許可證)。它在輸入框下方提供即時指標條,點擊可展開零依賴 SVG 儀表盤,數據來自 DSH 官方 adapter 投影與宿主會話日誌摺疊,成本按官方 CNY/USD 刊例價估算,餘額經宿主代理查詢官方 API。下面介紹它的定位、能力與安裝方式。

這是什麼

一句話:dsh-usage-chart 把 token 用量、成本估算、每輪歷史圖表和 DeepSeek 賬戶餘額,嵌進 DSH Web 對話界面。

維護者 Max-Samson 將其歸類爲聯網工具類插件;GitHub 倉庫約 10 stars。插件分 host 與 client 兩半:host 側代理餘額與價格解析,client 側在 composer 下方渲染指示器與圖表面板,技術棧爲 TypeScript、Cordis 插件模型、React 18,圖表爲手寫 SVG,不引入第三方圖表庫。

核心功能

輸入框下方的即時指示器

安裝並啓動 DSH Web 後,輸入框下方會出現一行緊湊指標,示意如下:

▸ 輸入 12.4M · 輸出 86.2K · 緩存 72% · 成本 ≈¥0.284 / ≈$0.042 · demo-model · 餘額 --

指示器展示輸入/輸出 token、緩存命中率、按所選幣種估算的成本、當前模型名,以及賬戶餘額。v1.1.0 起還包含分段上下文壓力條:按系統提示(藍)、工具定義(橙)、歷史消息(綠)三段着色,總佔用由綠向紅過渡。點擊 ▸ 展開完整面板。

用量面板與每輪圖表

面板內的能力均可在 README 中核對,主要包括:

  1. 會話用量彙總 — 輸入(未命中/命中緩存)、輸出、緩存命中率、上下文佔用,數據來自官方 tokenUsage / contextPressure 投影。
  2. 上下文構成與壓縮診斷(v1.1.0) — 基於 contextBreakdown 展示三段佔比;摺疊 compaction/* 事件,顯示哪一輪被壓縮、釋放多少 token、摘要成本;上下文佔用 ≥75% 或 ≥90% 時給出開新會話或精簡大文件注入的建議。
  3. 成本估算 — 按官方刊例價(CNY/USD 雙幣種,每 1M tokens,區分高峯/空閒時段)計算;支持用戶通過 pricing.json 覆蓋;未定價模型會顯式標記。
  4. 高峯/空閒計費(v1.0.1) — 北京時間週一至週五 09:00–12:00、14:00–18:00(UTC 01:00–04:00、06:00–10:00)爲高峯,單價爲空閒時段 2 倍;面板頂部以紅/綠 tag 標註當前計費時段。
  5. 多幣種顯示(v0.3 / v1.0.1) — 成本區一鍵切換 CNY/USD,選擇保存在瀏覽器 localStorage;指示器、面板、圖表與消息徽章同步跟隨。CNY 用中文定價頁報價、USD 用英文定價頁報價,不做匯率換算
  6. 每輪用量與來源歸因(v1.1.0) — 「總量 / 構成 / 成本」三視角;成本模式下每根柱顯示該輪費用;疊加耗時線、成本突增異常標記、緩存命中迷你刻度;懸浮解釋卡含 token、成本、模型、計費時段、TTFT/TPS、輸入來源(人工/Agent/續跑)與結束原因;全部輪次可橫向滾動。
  7. 成本徽章 — 每條助手消息尾部顯示可關閉的 ≈ ¥/$0.00xx 徽章。
  8. 賬戶餘額 — 經宿主代理調用 GET https://api.deepseek.com/user/balance,API Key 不暴露給瀏覽器。
  9. 中英雙語 — 跟隨 DSH 應用內語言設置,支持運行時切換 zh / en

數據來源與準確性

指標 來源 說明
Token 用量 adapter tokenUsage / contextPressure 官方即時投影
成本 內置刊例價 + 可選 pricing.json,經宿主 /pricing 解析 估算值,非官方賬單
輪次明細 宿主會話日誌摺疊(/usage 含耗時、模型、來源歸因、每輪成本
上下文與壓縮 contextBreakdown + compaction/* 事件摺疊 官方投影 + 事件流
餘額 官方 /user/balance 經宿主代理,即時查詢

安裝與啓用

前置要求:DeepSeek Harness ≥ 0.1.0-rc.6Node.js ≥ 20、PATH 上可用 pnpmdsh plugin 會把安裝轉發給 pnpm)。若提示 dsh: command not found,需全局安裝 @deepseek-ai/dsh,或在每條命令前加 npx --yes @deepseek-ai/dsh

方式一:npm 倉庫(推薦)

預構建產物,無需本地構建:

dsh plugin --profile web add dsh-usage-chart   # 安裝並登記爲 profile 插件層
dsh web --profile web                          # 啓動 DSH Web(已在運行時先停止再啓動)

升級到新版本時,pnpm 可能顯示 Already up to date,需顯式指定版本或先移除再安裝:

# 顯式指定版本
dsh plugin --profile web add dsh-usage-chart@1.1.2
# 或先移除再重裝
dsh plugin --profile web remove dsh-usage-chart
dsh plugin --profile web add dsh-usage-chart

升級後必須重啓 dsh web:宿主在啓動時緩存插件代碼,無熱重載;新路由(如 /pricing/meta/rate)只有重啓後才生效。

驗證安裝

dsh --profile web --dump-config | grep -A4 'id: dsh-usage-chart'

打開 DSH Web 進入任意會話:輸入框下方應出現用量指示器;點擊 ▸ 可展開面板。未配置 API Key 時餘額顯示 ,面板內會提示配置方式。

配置餘額查詢

餘額查詢按以下優先級解析 API Key(改後無需重啓):

  1. DSH Web 設置(推薦,插件 ≥ 0.1.1) — 「設置 → 模型」中配置 DeepSeek API Key,插件經 DSH 憑據服務讀取;
  2. 環境變量 — 啓動前導出 DEEPSEEK_API_KEY=sk-...
  3. 插件配置 — 在 profile 的 cordis.patch.yml 中寫入 config.apiKey(Key 明文落盤,僅建議本機受保護環境使用)。

插件版本 < 0.1.1 時不讀取網頁端密鑰,需用環境變量或 config.apiKey

典型用法

切換成本顯示幣種

在面板成本區一鍵切換 CNY/USD,選擇會保存在瀏覽器;指示器、圖表與消息徽章同步更新。成本按所選幣種的官方刊例價直接計算,不做匯率換算。

自定義模型定價(可選)

默認覆蓋文件路徑爲 $DSH_HOME/data/dsh-usage-chart/pricing.json(無 DSH_HOME 時爲 ~/.dsh/data/dsh-usage-chart/pricing.json)。文件變更即時生效,支持高峯/空閒雙時段與 CNY/USD 雙幣種:

{
  "deepseek-v4-flash": {
    "offPeak": {
      "cny": { "cacheMissInput": 1.5, "cacheHitInput": 0.05, "output": 4.5 },
      "usd": { "cacheMissInput": 0.22, "cacheHitInput": 0.007, "output": 0.66 }
    },
    "peak": {
      "cny": { "cacheMissInput": 3.0, "cacheHitInput": 0.10, "output": 9.0 },
      "usd": { "cacheMissInput": 0.44, "cacheHitInput": 0.014, "output": 1.32 }
    },
    "verifiedAt": 1755100800000
  }
}

單價單位爲每 1M tokens。未收錄模型在 UI 中標記爲「未定價模型」,不會靜默按 0 計費。

查看上下文壓縮與每輪成本

長會話中點擊指示器展開面板:在「上下文構成與壓縮診斷」區查看系統/工具/消息佔比與壓縮時間線;切換到圖表「成本」視角,橫向滾動查看各輪費用,懸浮解釋卡可覈對計費時段與輸入來源歸因。

卸載

dsh plugin --profile web remove dsh-usage-chart
dsh web --profile web

remove 會清理 node_modules 中的包並從 profile 插件層註銷。網頁端配置的 API Key 存於 DSH 憑據文件,DSH 模型服務仍在使用,通常無需刪除。

適用場景與注意

適合誰:

  • 在 DSH Web 中長期調試 Agent、工具調用或長上下文會話的開發者;
  • 需要在對話界面即時對照 token、緩存命中率、上下文佔用與估算成本的用戶;
  • 希望在不離開 DSH 的情況下查看 DeepSeek 賬戶餘額的場景。

使用前注意:

  1. 插件以當前 dsh 進程權限運行 — 安裝前應閱讀源碼與 MIT 許可證,確認來源可信;從 GitHub 安裝時需固定 commit,並在 pnpm-workspace.yaml 中放行 allowBuilds
  2. 成本爲估算 — 按刊例價與 adapter 上報用量計算,不等於官方賬單;高峯/空閒判定以輪次開始時刻爲準,時刻缺失時按高峯保守估算。
  3. 餘額與定價依賴配置 — 未配置 API Key 時餘額不可用;插件 < 0.1.1 不讀網頁端密鑰。
  4. 無熱重載 — 升級插件後必須重啓 dsh web
  5. 社區目錄非官方商店 — SkillHub 等插件目錄由社區維護,與 DeepSeek / 幻方無官方從屬關係;DSH 生態遵循「一切皆插件」思路,按需選用。

結尾

dsh-usage-chart 把 DSH Web 對話裏原本分散的用量、成本與餘額信息,收斂到輸入框下方的一行指示器與可展開的 SVG 儀表盤:數據走官方 adapter 與宿主代理,成本區分 CNY/USD 與高峯/空閒,長會話還可對照壓縮診斷與每輪來源歸因。若你已在用 DSH Web 做 Agent 開發,可按上文命令安裝,重啓後即可在 composer 下方驗證。

  • 目錄頁:https://www.skillhub.cn/plugins/Max-Samson/dsh-usage-chart
  • GitHub:https://github.com/Max-Samson/dsh-usage-chart
羽毛球分组比赛记分
小程序二维码

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

小夜