dsh-api-balance:在 DSH 設置面板查看 DeepSeek 餘額與真實 Token 用量

前言

用 DSH(DeepSeek Harness)接 DeepSeek API 的開發者,大多要回答兩個問題:賬戶裏還剩多少額度,這段時間真實消耗了多少 token。前者要去 DeepSeek 平臺控制檯查,後者要麼翻會話日誌手動算,要麼靠估算——而 DeepSeek 並沒有公開的用量接口(/user/usage 實測返回 404),估算值並不可靠。

dsh-api-balance 把這兩件事做成了 DSH 設置面板裏的一個模塊:餘額與可用狀態直接查官方接口,token 用量從本地會話日誌裏聚合每次調用的真實 usage。整個過程 API Key 只存在於後端,瀏覽器只會拿到餘額數據。

下面介紹它的功能、原理、安裝方式與注意事項。

這是什麼

dsh-api-balance 是由 gaozhiwei521 維護的 DSH 插件,版本 0.1.0,MIT 許可證。它做的事情很集中:在 DSH「設置」面板新增「API 餘額」模塊,即時查詢已配置供應商(DeepSeek)的賬戶餘額、可用狀態與真實 Token 用量,支持手動刷新。

核心功能

  • 「設置 → API 餘額」界面:可用額度大數字 + 可用狀態徽章 + 用量卡片(累計/今日 Tokens、會話數、用量記錄),支持手動刷新
  • 用量爲真實數據:消耗數據來自本地會話日誌中每次調用的真實 token usage(輸入/輸出/緩存/推理),不是估算
  • API Key 只存在於後端,瀏覽器只會拿到餘額數據
  • 賬戶無贈送餘額(0)時自動隱藏贈送餘額項
  • 樣式使用全局 --dsw-alias-* 主題令牌,與暗色主題一致

工作原理

插件分前後端兩層:

實現
後端 lib/index.js 註冊兩條迴環路由:GET /dsh-balance/query 通過 credentials.resolve() 讀取 DEEPSEEK_API_KEY,調用 {baseURL}/user/balanceGET /dsh-balance/usage 聚合本地會話日誌中的真實 token 用量,帶 60s 緩存
前端 lib/client.js 註冊 settings.section 槽位(id 爲 api-balance,label 爲「API 餘額」),渲染餘額、狀態與用量界面

baseURL 與 apiKeyEnv 跟隨「設置 → 模型」中 llm-deepseek 配置段的覆蓋。如果你在模型設置裏改過 Key 引用或 baseURL,插件會自動跟隨,不需要另外配置。

安裝與啓用

插件已聲明爲 DSH bundle(patch 指向 ./extensions/dsh/cordis.patch.yml,client 平臺爲 web),推薦用 DSH 原生插件指令從 GitHub 安裝到 web profile:

dsh plugin --profile web add github:gaozhiwei521/Deepseek-Harness-Api-monitor

裝完需要重啓 DSH(退出「DSH 對話」再打開),然後在「設置 → API 餘額」即可看到界面。

遷移注意:如果之前用過下面的手動 Copy-Item 安裝方式,請先移除 cordis.patch.yml 中的 api-balance insert 塊,並刪除 ~\.dsh\profiles\node_modules\dsh-api-balance\,避免與 bundle 雙份註冊。

手動安裝與卸載

DSH 升級後插件可能丟失,這時可以用舊方式手動安裝:

# 1) 把包放到 profiles\node_modules
Copy-Item 'E:\deepseekwork1\dsh-api-balance\package.json' "$env:USERPROFILE\.dsh\profiles\node_modules\dsh-api-balance\" -Force
Copy-Item 'E:\deepseekwork1\dsh-api-balance\lib' "$env:USERPROFILE\.dsh\profiles\node_modules\dsh-api-balance\lib" -Recurse -Force

# 2) 確認 cordis.patch.yml 末尾有 api-balance insert 塊(升級若覆蓋則重新追加)
# 3) 重啓 DSH(退出「DSH 對話」再打開;或殺掉後端進程由桌面殼看門狗自動拉起)

上面命令把 package.jsonlib 目錄複製到 DSH 的 profiles 目錄,再手動確認補丁文件後重啓生效。

卸載只需一條命令:

dsh plugin --profile web remove dsh-api-balance

如果是舊手動方式裝的,卸載分三步:1. 刪除 cordis.patch.ymlapi-balance 的 insert 塊;2. 刪除 ~\.dsh\profiles\node_modules\dsh-api-balance\;3. 重啓 DSH。

測試

源碼目錄下帶兩組測試,分別覆蓋後端邏輯與前端模塊結構:

node 'E:\deepseekwork1\dsh-api-balance\test\unit.test.mjs'        # 後端邏輯(13 項)
node 'E:\deepseekwork1\dsh-api-balance\test\client-load.test.cjs' # 前端模塊結構

適用場景與注意

適合的用戶:在 DSH 裏接 DeepSeek API,想在界面裏直接看餘額與消耗,不想登錄平臺控制檯、也不信任估算值的開發者。

使用前注意:

  • 僅支持 DeepSeek 官方賬戶餘額接口,其他供應商的餘額接口暫未接入
  • 默認讀取 DEEPSEEK_API_KEY;若在「設置 → 模型」中改過 Key 引用或 baseURL,插件自動跟隨
  • 安裝後必須重啓 DSH,才能在「設置 → API 餘額」看到界面
  • 插件以當前 dsh 進程權限運行,會讀取本機憑據(如 DEEPSEEK_API_KEY)與本地會話日誌。安裝前建議自行查看源碼與許可證(MIT),確認可靠後再裝

小結

dsh-api-balance 解決的問題很具體:不離開 DSH 就能看到 DeepSeek 賬戶餘額與真實 token 消耗,Key 不出後端。如果你在用 DSH 接 DeepSeek,可以裝上試試。

  • 目錄頁:https://www.skillhub.cn/plugins/linshufan21/dsh-Api-monitor
  • GitHub:https://github.com/gaozhiwei521/Deepseek-Harness-Api-monitor

最後說明:上面的目錄頁是社區維護的獨立站點,與 DeepSeek / 幻方沒有官方從屬關係。

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

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

小夜