前言¶
用 DeepSeek Harness(DSH)連 OpenRouter、OpenCode Go 等上游時,額度往往要另開控制台或查文檔接口才能確認。對話裏換模型、切會話時,還不一定記得當前用的是哪家 Provider。下面介紹的客戶端插件把「還剩多少」放到應用內:側邊欄底部、設置頁都能點開,並按當前會話所用模型去向對應上游拉數據。
這是什麼¶
dsh-provider-limits 是 SavaStone 維護的 DSH 插件(MIT,當前版本 0.4.0),要求 DSH 0.2.2 或更高。它在不離開 DSH 的前提下展示 AI Provider 的剩餘限額:OpenRouter 以 credit balance(金額)顯示,OpenCode Go 以 quota windows(如 5 hours、Weekly、Monthly)顯示百分比、彩色條與可選的重置倒計時。
插件歸類爲客戶端(dsh.client.platform: web,immediately: true),通過 bundle 補丁掛進 DSH 界面,未發佈到 npm。
核心功能¶
入口與展示¶
- 側邊欄底部:在
Signed in to …賬號行上方增加Limits按鈕;點擊在按鈕上方展開讀數,再點收起。 - 設置面板:頁眉與各 General 頁中的
Limits行打開同一份報告,不跳轉頁面、不彈對話框。 - 跟會話走:插件向 DSH 查詢當前正在查看的聊天所用模型,只彙報該 Provider;換模型不影響舊會話應顯示的歸屬;未知 Provider 會明確說明,而不是套用其他家的餘額。
- 刷新策略:讀數每 30 秒、點擊按鈕、窗口重新獲得焦點時更新;多份讀數同時打開時,對同一 Provider 的請求至多每 20 秒一次,失敗 5 秒後重試。
OpenRouter 與 OpenCode Go¶
- OpenRouter:有金額時顯示類似
OpenRouter credits are $10(金額爲粗體)。 - OpenCode Go:按窗口展示剩餘或已用百分比、彩色進度條,以及 Provider 提供的
resets in …倒計時。 - 顏色含義:剩餘充足爲綠色;剩餘 ≤35% 爲琥珀色;剩餘 ≤15% 爲紅色。進度條長度與數字獨立編碼,便於不依賴顏色辨認。
- 不編造數據:Provider 未報告的窗口顯示
unavailable,不會顯示0% left。
設置(Settings → General)¶
兩項設置作用於整個應用,保存後立即生效並重啓後保留:
| 配置項 | 選項 | 效果 |
|---|---|---|
| Limit display | Bars(默認)/ Percent | 配額行顯示條+百分比,或僅百分比;credit 句子不受此項影響。 |
| Percentage shown | Remaining(默認)/ Used | 顯示 72% left 或 28% used;綠/琥珀/紅仍按剩餘比例計算。 |
尚未支持的 Provider¶
讀數會提示 Limits aren’t available for this provider yet.,並提供 Ask DeepSeek to add this provider。確認後會用英文草稿打開 Creator 模式(不會自動發送),便於你讓智能體調研餘額/配額 API 並擴展插件;Web 版在新標籤頁打開,桌面版在同一窗口新會話;失敗時可複製到剪貼板或重試。
憑證¶
刷新時會重新讀取密鑰,輪換或新加 key 無需重啓 DSH(改插件自身代碼仍需重啓):
| Provider | 憑證名 |
|---|---|
| OpenRouter | OPENROUTER_API_KEY |
| OpenCode Go | OPENCODE_GO_API_KEY |
可通過 DSH 憑證庫或進程環境變量提供。未配置時讀數會標明缺少的變量名,而不是顯示虛假數字。
安裝與啓用¶
插件以 bundle 形式安裝進 DSH profile,需 Node ≥20,依賴 @deepseek-ai/cordis ^4.0.5。
- 獲取代碼:從 latest release 下載打包的
.tgz,或按倉庫說明取得插件目錄。 - 安裝到指定 profile(目錄或 tgz 二選一):
dsh plugin --profile <profile> add ./dsh-provider-limits
使用 release 的 .tgz 時,將路徑換成下載文件即可。
- 重啓 DSH。宿主側在啓動時加載,運行中僅添加 bundle 不夠。
無需在 profile 文件裏單獨寫插件配置:包內自帶 bundle patch,安裝命令會把它加入 profile 的 bundle 列表。更新時拉取新代碼或新 tarball 後同樣需重啓。
典型用法¶
在側邊欄底部、設置頁眉或 General 的 Limits 行點擊 Limits,報告就地展開;再點一次關閉。
OpenRouter 示例:
OpenRouter credits are $10
OpenCode Go 示例(Bars + Remaining 時):
OpenCode Go
5 hours 72% left
━━━━━━━━━━━━━━━━━━━━━━░
resets in 3h 12m
Weekly 45% left
━━━━━━━━━━━━━━░
Monthly 8% left
━━━░
resets in 6d
適用場景與注意¶
適合誰:經常在 DSH 裏切換 OpenRouter / OpenCode Go,又希望在當前會話上下文裏一眼看到額度或配額窗口的開發者。
運行與安全:插件與當前 DSH 進程同權限運行,會攜帶你配置的 API key 向上遊查詢。安裝前建議閱讀 倉庫源碼 與 MIT 許可證,確認可接受其網絡訪問與憑證讀取方式。
環境要求:DSH 0.2.2+ 纔有與賬號行對齊的頁腳佈局;0.4.0 插件本身無額外 profile 配置項。
故障時界面會給出原因(例如缺少某環境變量名),可按 README 中的 Troubleshooting 表對照處理;補全憑證後再次點擊 Limits 即可,一般不需要重啓。
結尾¶
dsh-provider-limits 把 Provider 剩餘額度收進 DSH 客戶端:跟當前聊天、自動刷新、可配置展示方式,並保留通過 Creator 請求擴展 Provider 的路徑。社區目錄頁:https://www.skillhub.cn/plugins/SavaStone/dsh-provider-limits;源碼與完整說明:https://github.com/SavaStone/dsh-provider-limits。