前言¶
如果你在用 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 解決的是一個小而具體的問題:讓成本信息直接出現在你會話的界面上,餘額走官方接口,價格跟官方定價頁自動同步,峯谷時段和模型檔位自動套用。
項目地址:
- GitHub:https://github.com/ljcscp/dsh-session-cost
- 社區目錄頁:https://www.skillhub.cn/plugins/ljcscp/dsh-session-cost
社區目錄是獨立站點,與 DeepSeek / 幻方沒有官方從屬關係,僅作索引使用。