DeepSeek Harness (DSH) 的核心理念是“一切皆插件”。在智能體開發中,同時管理多個 API 提供商是常見需求。當 DeepSeek 和 OpenRouter 的餘額不足時,開發者需要在會話間頻繁切換查看。dsh-account-balance 插件在會話頭部提供常駐的餘額芯片,解決了這一痛點。
該插件由 305037991x-pixel 維護,旨在爲 DSH Web 客戶端提供一種在對話頭部同時監控 DeepSeek 與 OpenRouter 賬戶餘額的方案。
核心功能¶
- 雙源顯示:一枚芯片同時顯示兩家賬戶餘額,格式爲
¥xx.xx · $xx.xx。 - 懸停明細:鼠標懸停可查看兩家賬戶的詳細構成:
- DeepSeek:顯示總餘額、充值、贈送。
- OpenRouter:顯示可用餘額(充值 − 已用)、充值、已用。
- 容錯機制:任一來源出錯,僅在該來源顯示錯誤標記,另一家不受影響。
- 自動刷新:每 3 分鐘自動刷新余額數據,並提供手動刷新按鈕。
- 會話緩存:餘額數據與定時器爲模塊級共享緩存,切換會話時不重複拉取。
- 安全隔離:密鑰僅存在於宿主進程(
.credentials.yaml),瀏覽器端永不接觸。
安裝與啓用¶
1、使用官方命令安裝插件:
dsh plugin --profile web add github:305037991x-pixel/dsh-account-balance
2、重啓 dsh web 並在瀏覽器中硬刷新頁面(Ctrl+Shift+R)。
3、本機開發時,可使用包內自帶的 install-into-dsh.ps1 以 link: 方式註冊本地源碼目錄,修改代碼後重啓即生效。
配置¶
在 $DSH_HOME/.credentials.yaml 中配置 API 密鑰(或通過環境變量同名配置):
DEEPSEEK_API_KEY: sk-xxx
OPENROUTER1_API_KEY: sk-or-v1-xxx
工作原理¶
插件分爲宿主側和客戶端側,各司其職:
- Host (
lib/index.js): - 註冊兩個 GET 接口:
/dsh-account-balance(DeepSeek)與/dsh-account-balance/openrouter。 -
從憑證服務解析密鑰,調用上游 API 獲取餘額,原樣透傳響應。
-
Client (
lib/client.js): - 在
conversation.session.header.utilities槽位註冊芯片組件。 - 管理兩家賬戶的模塊級共享數據緩存和 3 分鐘定時器。
餘額數據來源分別爲:
- DeepSeek API:Get User Balance
- OpenRouter API:Get Credits(total_credits − total_usage = 可用)
兼容性與注意¶
- 核心解耦:插件聲明所有
@deepseek-ai/dsh-*核心包爲可選peerDependencies,不打包核心包副本,運行時使用宿主正在運行的那份核心。升級 DSH 核心無需重裝本插件。 - 版本要求:插件依賴的核版本範圍需滿足
>=0.1.0-rc.6 <0.2.0。 - 安全提示:插件以 DSH 進程權限運行,密鑰不會泄露給瀏覽器。請勿將核心包寫入
dependencies並釘死版本,以免遮蔽宿主的核心包導致加載失敗。
總結¶
dsh-account-balance 是一個輕量級插件,適合需要在 DeepSeek Harness 中同時監控 DeepSeek 和 OpenRouter 餘額的開發者。它通過常駐芯片和自動刷新機制,減少了上下文切換帶來的操作成本。