jelly-000/dsh-balance-monitor ↗★ 1
dsh-balance-monitor
DeepSeek account balance, remaining-ratio bar, and today's spend in the dsh sidebar footer.
安装
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:jelly-000/dsh-balance-monitor说明文档
阅读完整 README ↗dsh-balance-monitor
DeepSeek 账户余额,直接显示在 dsh 侧边栏底部。
一个极简的 DeepSeek Harness (dsh) 插件:在侧边栏底部(设置上方)显示你的 DeepSeek API 账户余额、一条细的余额剩余比例条,以及当天已花费的金额。样式完全使用官方设计令牌,克制内敛。


功能
| 功能 | 实现 |
|---|---|
| 实时余额 | 服务端调用 GET https://api.deepseek.com/user/balance,使用 $DSH_HOME/.credentials.yaml 中的 DEEPSEEK_API_KEY(环境变量优先) |
| 今日花费 | 当天首次成功查询的余额记为基线(持久化在 $DSH_HOME/storages/balance-monitor.json);花费 = max(0, 基线 − 当前)。充值不会让数字变负 |
| 比例条 | 当前余额 ÷ 当日基线,蓝 → 琥珀 → 红 三档渐降 |
| 位置 | 注册在官方 sidebar.footer.action 槽位 —— 设置上方,零 hack |
| 折叠态 | 收起后变为 36px 圆形,显示紧凑金额 + tooltip |
| 健壮性 | 60s 轮询 + 切回标签页时刷新;上游失败时保留上次数据(变淡标记 stale),不闪错误 |
安装
浏览器端 bundle 是手写的 classic script,无构建步骤,git 安装无需 prepare 脚本:
dsh plugin --profile web add "github:/dsh-balance-monitor#main"
或从 npm(发布后):
dsh plugin --profile web add dsh-balance-monitor
然后重启 Web UI(dsh --profile web)。卡片出现在展开的侧边栏底部、设置按钮上方。
工作原理
一个插件行同时承担两种角色(dsh.bundle patch + dsh.client 浏览器注册表声明):
- 服务端半(
lib/index.js)—— 在ctx.connection上注册/balanceRPC 通道(loopback 信任围栏)。每次调用读取 API key、查询余额 API、折算当日基线,返回{ ok, value }。 - 浏览器半(
lib/client.js)—— 零依赖 classic-script bundle,注册sidebar.footer.action条目。卡片每 60s 轮询一次,标签页重新可见时立即刷新。
状态文件($DSH_HOME/storages/balance-monitor.json):
{
"date": "2026-08-14",
"dayStart": 100.0,
"lastTotal": 99.5,
"lastCurrency": "CNY",
"updatedAt": 1755200000000
}