前言¶
在 DeepSeek Harness 裏同時掛幾條 provider 路由是常見配置:DeepSeek 官方 API 跑主力,OpenRouter 做補充,再配一個走 ChatGPT 訂閱的 OpenAI Codex。問題隨之而來——各家的餘額、用量、訂閱窗口分散在各自的控制檯,想知道會話會不會中途斷糧,得逐個登錄後臺去查。
dsh-provider-usage 把這件事壓縮成 Web GUI 上的一個懸浮球。下面按功能、安裝、典型用法、注意事項的順序介紹這個插件。
這是什麼¶
dsh-provider-usage 是 lizhouai 維護的 DeepSeek Harness 插件,npm 包名 dsh-provider-usage,當前版本 0.3.12,許可證 MIT,在社區目錄中歸類爲「客戶端」。
它做的事:枚舉當前 profile(ctx.llm)中註冊的 provider 路由,按 kind 適配各家的餘額/用量/訂閱窗口查詢接口,把結果集中顯示在 Web GUI 上一個可拖動的懸浮球面板裏;對沒有公開餘額接口的路由,也會明確標出而不是悄悄略過。
核心功能¶
自動檢測路由¶
插件枚舉 ctx.llm 中註冊的 provider 路由,已知路由零配置:只要路由在 profile 裏註冊過,面板裏就會出現對應條目。
按 kind 適配查詢¶
每種 kind 對應不同的查詢端點與展示內容,對照如下(來自 README):
| kind | 路由 | 查詢 | 顯示 |
|---|---|---|---|
deepseek |
deepseek-official、deepseek |
GET {baseURL}/user/balance |
total / granted / topped-up 餘額 |
moonshot |
moonshotai-cn、moonshotai |
GET {baseURL}/users/me/balance |
可用 / 代金券 / 現金餘額 |
kimi-coding |
kimi-coding |
GET {baseURL}/v1/usages |
每週用量 + 限流窗口、重置倒計時 |
openrouter |
openrouter |
GET {origin}/api/v1/credits |
credits 已用 / 總額度 |
github-copilot |
github-copilot |
GET api.github.com/copilot_internal/user |
付費版計劃用量快照 / 免費版當月用量 |
openai-codex |
openai-codex |
GET {baseURL}/wham/usage |
ChatGPT 訂閱 5h / 每週窗口 + credits + spend control(OAuth 登錄,非 API key) |
openai |
openai |
GET {origin}/v1/organization/costs |
當月消費(需管理員 key,普通 key 返回 403) |
anthropic |
anthropic |
GET {baseURL}/v1/organizations/cost_report |
當月消費(需管理員 key,x-api-key 認證) |
minimax |
minimax、minimax-cn |
GET {origin}/v1/api/openplatform/coding_plan/remains |
Coding Plan 5h / 每週剩餘百分比 |
zai |
zai、zai-coding-cn |
GET {origin}/api/monitor/usage/quota/limit |
GLM Coding Plan 窗口(原始 key 直放 Authorization,不加 Bearer) |
opencode |
opencode、opencode-go |
GET {baseURL}/usage |
Zen Go 滾動 / 每週 / 每月窗口 |
vercel-ai-gateway |
vercel-ai-gateway |
GET {baseURL}/v1/credits |
團隊 credit 餘額 |
xai |
xai |
GET {baseURL}/billing/credits |
預付餘額(USD) |
沒有公開餘額/用量 API 的路由(Google、Mistral、Groq、Bedrock、Azure、Qwen Token Plan 等)會以 unsupported 標記列出,讓你知道哪些查不了,而不是默默消失。
憑證不緩存、不落盤¶
API key 每次請求時經 harness credentials service 解析(環境變量 / ~/.dsh/.credentials.yaml),插件不緩存、不寫盤。OAuth 類 provider(OpenAI Codex)則讀取登錄流程寫入的授權記錄,並在 token 即將過期時透明刷新。
懸浮球與面板¶
- 懸浮球可拖到視口任意位置,位置持久化;默認停靠聊天區左下角(邊距相等),面板頭的 home 按鈕可一鍵歸位。
- 面板上邊緣可拖拽調整高度,高度持久化;provider 列表超出面板高度時可滾動。
- 光環即時反映當前聚焦會話正在使用的 provider 健康狀態:綠色正常;黃色表示用量窗口剩餘不足 30%,或餘額低於黃色閾值;紅色表示查詢失敗、缺 key、用量 ≥90%,或餘額低於紅色閾值。光環只跟「正在使用」的那一個:閒置的 provider 餘額不足不會給球染色,切到餘量充足的 provider,球立刻變綠。面板會標註正在使用的 provider,同時列出全部數字。
- 面板頭部標題旁顯示當前運行的插件版本號,加載的是哪個 release 一目瞭然。
- 中英雙語,默認跟隨 harness 語言,可在面板頭一鍵切換,選擇持久化在 localStorage。
可調參數¶
- 刷新間隔:15s–30min,在面板內調整,localStorage 持久化,默認值來自插件配置。
- 餘額閾值:紅/黃兩檔在面板底部編輯並持久化,按餘額自身幣種比較(CNY 或 USD 同樣處理),默認紅 <10、黃 <30;適用於餘額類 provider(DeepSeek、Moonshot、Vercel AI Gateway、xAI)與用量類 provider 的 credits 行(OpenRouter、OpenAI Codex)。訂閱計劃與 credits 並存時(如 OpenAI Codex)取 OR 判定:任一有餘量就保持綠色,兩者都低時顯示較輕的警告——計劃通常先於 credits 消耗。
- 手動 provider:可通過配置添加任意網關,例如自建的 DeepSeek 兼容端點。
安裝與啓用¶
本文依據的資料中沒有包含官方安裝命令,這裏不代爲拼接。可以確認的信息有兩點:
- 包已發佈到 npm,包名
dsh-provider-usage,當前版本 0.3.12; - Node 引擎要求
^22.19.0 || >=24(package.json 的 engines 字段)。
具體安裝步驟以 GitHub README 爲準:https://github.com/lizhouai/dsh-provider-usage
典型用法:OpenAI Codex 走 OAuth 查訂閱用量¶
OpenAI Codex 是 ChatGPT 訂閱型 provider,用 OAuth access token 認證而非 API key,沒有 key 可填。dsh 本身沒有爲這條路由提供 OAuth 登錄按鈕,但插件可以直接讀取 harness credential store 裏的授權記錄。完整步驟如下。
1、先讓路由出現在 ctx.llm。web profile 默認掛載 llm-pi-ai 適配器,空 profile 就夠,在 ~/.dsh/settings.yaml 裏寫:
llm-pi-ai:
providers:
openai-codex: {}
2、通過 harness authorization seam 完成 OAuth 登錄。dsh-llm-pi-ai 在 ctx.authorization 上爲 openai-codex 註冊了「OpenAI (ChatGPT Plus/Pro)」流程(憑證鍵 llm-pi-ai/openai-codex),在任意能跑該流程的入口用 ChatGPT 賬號完成瀏覽器或設備碼授權。授權記錄隨後寫入 ~/.dsh/.credentials.yaml:
records:
llm-pi-ai/openai-codex:
kind: grant
payload:
type: oauth
access: <access token>
refresh: <refresh token>
expires: <epoch ms>
accountId: <chatgpt account id>
3、經過上面的步驟就不需要額外操作了。openai-codex 路由會被自動檢測到,插件每次輪詢都從憑證存儲重新讀取授權記錄(不緩存),token 即將過期時自動刷新,面板顯示 5 小時/每週用量窗口。
一個容易踩的坑:授權記錄必須落在 harness credential store。dsh-codex 的 $DSH_HOME/.openai-codex-auth.json、Codex CLI 的 ~/.codex/auth.json 這類自管憑證文件不會寫入這條記錄,插件看不到。
適用場景與注意¶
適合誰:
- 同時配置多條 provider 路由、混用按量計費與訂閱計劃的 DSH 用戶;
- 使用訂閱型額度(Kimi Coding、MiniMax Coding Plan、GLM Coding Plan、OpenAI Codex 等)、想在窗口耗盡前提前感知的人;
- 想給自建 DeepSeek 兼容網關也掛上餘額顯示的場合(手動 provider)。
注意事項:
- OpenAI 與 Anthropic 的當月消費查詢需要管理員 key,普通 key 返回 403(Anthropic 使用
x-api-key認證); - zai 路由的查詢要求原始 key 直接放在 Authorization 頭、不加 Bearer;
- 懸浮球位置/高度、刷新間隔、餘額閾值、面板語言均持久化在 localStorage,默認值來自插件配置;
- 插件以當前 dsh 進程的權限運行,能讀取 harness 憑證存儲中的 key 與 OAuth 授權記錄,並替你調用各 provider 的餘額接口。安裝前建議先瀏覽源碼確認行爲符合預期,同時覈對許可證(本項目爲 MIT)。
結尾¶
dsh-provider-usage 解決的問題很小也很具體:不用再爲「還剩多少額度」登錄各家控制檯。如果你在 DSH 裏維護着不止一條 provider 路由,它可以省下不少往返。
- 社區目錄頁:https://www.skillhub.cn/plugins/lizhouai/dsh-provider-usage
- GitHub:https://github.com/lizhouai/dsh-provider-usage
說明:skillhub.cn 爲社區維護的插件目錄,與 DeepSeek / 幻方無官方從屬關係。