dsh-session-cost:給 DSH Web GUI 加上餘額與會話花費讀數

前言

如果你在用 DeepSeek Harness (DSH) 的 Web GUI 跑會話,應該遇到過這個問題:會話統計行能告訴你用了多少 token,但折成人民幣是多少、賬戶還剩多少餘額,界面上沒有。要弄清楚只能切去 platform.deepseek.com/usage 查賬單,而官方賬單本身還有幾分鐘的結算延遲,長會話跑到一半想估算成本並不方便。

DSH 的理念是「一切皆插件」,這類讀數正好可以做成一個 dock 條目。下面介紹的 ljcscp/dsh-session-cost 做的就是這件事:把 DeepSeek 賬戶餘額和當前會話的估算花費直接顯示在 Web GUI 裏。

這是什麼

ljcscp/dsh-session-cost 是一個面向 DSH Web GUI 的插件,MIT 許可證,當前版本 0.1.0。它在 composer dock 的會話統計行下方顯示一行讀數:

本會話 ¥0.90 · 餘額 ¥30.82

懸停可以查看明細:輸入 / 緩存讀 / 輸出 token、會話所用模型、定價來源,以及餘額構成(granted + topped up)。

核心功能

賬戶餘額:查詢官方 GET /user/balance 接口。API key 保留在 host 端,每次刷新時通過 DSH credentials seam 解析,不會下發到瀏覽器。

會話花費:token 用量 × 官方 DeepSeek 價格。價格每 6 小時自動從官方定價頁抓取一次,價格變動不需要更新插件。

峯谷定價:自動應用 2026-08-17 上線的峯谷時段——北京時間 09:00-12:00 / 14:00-18:00 爲峯時,谷時半價。插件按當前北京時間所處的小時套用對應價格檔。

按模型計價:從最新 assistant 消息的 provenance 讀取會話實際使用的模型(deepseek-v4-flash / deepseek-v4-pro),按各自的價格檔計費。

計費公式與官方規則一致(扣減費用 = token 消耗量 × 模型單價):

spend = uncachedInput × inputPerMillion
      + cacheRead × cacheReadPerMillion
      + output × outputPerMillion        (per 1M tokens)

緩存寫入按未緩存輸入價計費,因爲 DeepSeek 只報告 hit/miss 兩類用量桶。

安裝與啓用

前置條件有兩條:

1、DeepSeek Harness 0.1.0-rc.5 或更新版本(web profile);
2、通過 DSH credentials seam 存儲的 DeepSeek API key(DEEPSEEK_API_KEY,由 web Models 頁面寫入)。

安裝支持三種方式,任選其一。

從 git URL(不需要 npm 賬號):

dsh plugin --profile web add https://github.com/ljcscp/dsh-session-cost

從 npm:

dsh plugin --profile web add @ljcscp/dsh-session-cost

從本地檢出(開發用):

git clone https://github.com/ljcscp/dsh-session-cost.git
dsh plugin --profile web add link:$(pwd)/dsh-session-cost

安裝後重啓 dsh web 並刷新頁面,讀數就會出現在 composer dock 中會話統計行下方。默認零配置,開箱即用。

可選配置

默認零配置。如果需要調整行爲,可以在組合配置里加一段:

- insert:
    - id: session-cost
      name: '@ljcscp/dsh-session-cost'
      config:
        refreshMs: 60000
        pricingRefreshHours: 6
        apiKeyEnv: DEEPSEEK_API_KEY
        baseURL: https://api.deepseek.com

各配置項的含義:

配置項 類型 默認值 說明
refreshMs number 60000 餘額緩存生命週期(ms),失敗後 10 秒重試
pricingRefreshHours number 6 官方定價頁刷新間隔(小時)
apiKeyEnv string DEEPSEEK_API_KEY 存儲 DeepSeek API key 的憑據引用
baseURL string https://api.deepseek.com 接口基址,插件會在其後拼接 /user/balance
trustedHosts string[] [] 在信任圍欄之外提供服務的非迴環主機

工作方式

插件分成兩端:

Host 端src/index.ts)註冊一個受信 webserver 路由 /session-cost,提供餘額快照(緩存 refreshMs)和生效定價快照(按 pricingRefreshHours 解析官方定價頁,峯谷時段生效後按當前北京時間小時套用)。API key 始終不離開 host。

瀏覽器端src/client/)是一個 conversation.composer.dock 條目,讀取 tokenUsage projection,從最新 assistant 消息的 provenance 檢測會話模型,套用生效價格檔並渲染讀數,每分鐘刷新一次。

適用場景與注意

適合這幾類使用者:

  • 在 DSH Web GUI 裏跑長會話,想隨時掌握成本的人;
  • 同時使用 deepseek-v4-flash 和 deepseek-v4-pro,想確認每次實際按哪個價格檔計費的人;
  • 希望峯谷定價、官方調價自動生效,不想手動維護價格表的人。

使用前有幾點需要知道:

  • 讀數是按官方價格計算的估算值;platform.deepseek.com/usage 上的官方賬單有幾分鐘結算延遲,兩邊數字可能短暫對不上。
  • trustedHosts(默認 [])用於配置在信任圍欄之外提供服務的非迴環主機,默認部署不需要動它。
  • 插件以當前 dsh 進程的權限運行,安裝前建議先檢查源碼與許可證。本項目爲 MIT;瀏覽器打包構建預設(shared/)改編自 dsh-balance-meter(BSD-3-Clause),後者改編自 deepseek-harness(MIT)。
  • 如果要本地開發或從源碼構建:Node 引擎要求 ^22.19.0 || >=24.0.0,包管理器爲 pnpm@11.7.0

經過上面的步驟,插件就能在 composer dock 裏持續給出餘額與會話花費讀數,不需要再切出去查賬單。

結尾

dsh-session-cost 解決的是一個小而具體的問題:讓成本信息直接出現在你會話的界面上,餘額走官方接口,價格跟官方定價頁自動同步,峯谷時段和模型檔位自動套用。

項目地址:

社區目錄是獨立站點,與 DeepSeek / 幻方沒有官方從屬關係,僅作索引使用。

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

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

小夜