dsh-balance
No description
- Stars
- 0
- Language
- JavaScript
- Created
- Aug 27, 2026
- Updated
- Aug 27, 2026
Introduction
dsh-balance(余额常驻小部件)
DeepSeek Harness 的 DeepSeek API 余额常驻小部件 + 峰谷定价高峰时段提示。
功能
- 常驻可拖动:余额小部件常驻显示在界面右上角(默认),按住头部即可拖到任意位置,位置持久化到
localStorage(刷新/重启不丢)。挂在
shell.overlay根级插槽,不占侧边栏插槽,也不和宠物等 其它插件的固定位抢位置;默认右上角、刻意避开右下角宠物区。 - 收起/展开:头部「–」收成小药丸(只显示
¥总余额+ 高峰档期符号),点「▸」展开。 - 余额:总余额 / 充值余额 / 赠送余额、更新时间;每 60 秒自动刷新,也可手动刷新。
- 高峰时段提示:根据 DeepSeek 峰谷定价,实时显示当前档期——
- ⚡ 高峰时段(红):北京时间
09:00–12:00、14:00–18:00; - 🌙 闲时半价(绿):其余时间(闲时价格为高峰的一半);
- 显示「xx 后切换」倒计时,悬停可见完整时段说明;每 30 秒自动重算档期。
- ⚡ 高峰时段(红):北京时间
- 余额查询走服务端代理(
/api/balance),DEEPSEEK_API_KEY只在服务器进程内解析,不会下发到浏览器。
高峰时段
时段定义在 lib/client.js 顶部的 PEAK_WINDOWS 常量(北京时间,分钟制,结束为开区间),官方调整后直接改这里即可:
const PEAK_WINDOWS = [
{ start: 9 * 60, end: 12 * 60 }, // 09:00 – 12:00
{ start: 14 * 60, end: 18 * 60 } // 14:00 – 18:00
];
档期按 Asia/Shanghai 时区计算,不依赖本机时区。
安装
仓库:https://github.com/qianmoyishu/dsh-balance
本地源码(开发中)方式:
dsh plugin --profile web add "link:C:\Users\hzyqi\Desktop\dsh-balance"
(发布 Release 后也可用 GitHub 地址一键安装:
dsh plugin --profile web add "https://github.com/qianmoyishu/dsh-balance/releases/latest/download/dsh-balance-0.2.1.tgz"
)
装完重启 dsh web 并刷新页面(新增/更新插件需要服务端重启加载 bundle)。
卸载
dsh plugin --profile web remove dsh-balance
使用前提
需要已配置 DEEPSEEK_API_KEY:
- 方式一(推荐):在 Web 界面 设置 → 模型 页面填写(写入凭据服务);
- 方式二:启动 dsh 的环境变量里导出
DEEPSEEK_API_KEY。
未配置时,小部件会提示“未配置 DEEPSEEK_API_KEY”,不会报错。
结构
dsh-balance/
├─ package.json # bundle 元数据(dsh.bundle.patch / dsh.client)
├─ cordis.patch.yml # 服务端插件注册(/api/balance 路由)
├─ dsh.plugin.json # 插件清单
├─ lib/
│ ├─ index.js # 服务端:余额代理路由(密钥不出服务器)
│ └─ client.js # 客户端 bundle:常驻可拖动小部件 + 高峰提示
├─ test/ # 冒烟测试(npm test)
└─ README.md
接口
GET /api/balance→{ ok, isAvailable, infos: [{currency,totalBalance,grantedBalance,toppedUpBalance}], fetchedAt }或{ ok:false, error:"missing-key"|"upstream"|"network", message }GET /api/balance/status→{ ok, keyConfigured }
开发说明
- 客户端 bundle 只依赖宿主平台 seed(
react/react/jsx-runtime),无构建步骤, 直接编辑lib/client.js后重启 dsh web 生效。 - 服务端改动同样需重启 dsh web。
- 测试:
npm test(服务端路由 mock + 客户端 bundle 加载/渲染)。 - 纯手工维护,无 npm 依赖。
License
MIT