前言¶
DSH 的插件化思路允许在 dsh web 中扩展常驻能力。对于使用 DeepSeek API 和 OpenCodeGo(opencode.ai Go 计划)的开发者,余额与余量是日常需要确认的指标。dsh-balance 将这两项信息放进 dsh web GUI:左下角常驻徽章,点击查看详情,并在设置页管理 Key。
这是什么¶
- 仓库:
linshule/dsh-balance - 维护者:
linshule - 许可证:MIT
- 定位:
dsh webGUI 常驻插件,同时显示 DeepSeek API 账户余额与 OpenCodeGo 计划余量。
核心功能¶
常驻徽章¶
左下角悬浮、可拖拽的双段徽章,同时显示 DeepSeek 账户余额与 OpenCodeGo 计划余量。拖动后可松手记忆位置,浏览器 localStorage 中保存为 dsh-balance.pos。
详情弹层¶
点击徽章展开弹层,查看 DeepSeek 余额明细、OpenCodeGo 三窗口进度条与重置时间。弹层内可就地保存或清除 Key,并可立即刷新。
设置页¶
提供两个独立设置页:
- 设置 → DeepSeek 余额
- 设置 → OpenCodeGo 余量
Key 管理¶
DeepSeek API Key 持久化到 ~/.dsh/ds-balance.json,权限为 0600,仅本机可读。
OpenCodeGo Key 可留空,默认自动读取 DSH 凭据;也可在设置页单独指定一个 Key 覆盖。
自动刷新¶
插件存活期间按设定间隔自动刷新余额与余量。默认间隔为 1 分钟,刷新间隔跨重启记忆。浏览器本地状态中保存为 dsh-balance.intervalMs。
网络重试¶
遇到网络抖动时,使用 curl 走 HTTP/1.1 并自动重试。
安装与启用¶
先安装插件,再重启 dsh web 生效。
从 GitHub 仓库安装:
dsh plugin --profile web add github:linshule/dsh-balance
本地链接安装,适合开发模式:
git clone https://github.com/linshule/dsh-balance.git <profile>/plugins/ds-balance
dsh plugin --profile web add link:./plugins/dsh-balance
资料中也列出 npm 包安装命令:
dsh plugin --profile web add @linshule/dsh-balance
该方式在抓取资料中标注为“发布后可用”,未提供已发布确认,本文不作为确定安装方式。
典型用法¶
1、重启 dsh web 后,点击左下角徽章,或进入设置 → DeepSeek 余额。
2、粘贴 DeepSeek API Key(形如 sk-...)并保存。该 Key 会持久化到 ~/.dsh/ds-balance.json,重启后无需重填。
3、如果使用 OpenCodeGo,且默认提供商为 opencode-go,可保留 OpenCodeGo Key 为空;插件默认读取 ~/.dsh/.credentials.yaml 中的 OPENCODE_GO_API_KEY。也可以在设置页单独指定一个 Key 覆盖。
4、拖动徽章调整位置,松手后自动记忆。
5、在徽章弹层内点击立即刷新,可重新查询当前余额与余量。
安全与注意¶
插件以当前 dsh 进程权限运行,安装前应检查源码与 MIT 许可证。
已核实资料中的安全限制包括:
- 所有
/api/ds-balance/*路由仅回环地址可访问,即127.0.0.1/localhost。 - 非回环地址一律
403。 - 请求体 ≤ 16 KiB。
sec-fetch-site: cross-site请求会被拒绝。- DeepSeek API Key 以
0600权限持久化在~/.dsh/ds-balance.json,仅本机可读。
浏览器本地状态包含徽章位置 dsh-balance.pos 与刷新间隔 dsh-balance.intervalMs。清空 localStorage 会丢失这些状态。
结尾¶
dsh-balance 将 DeepSeek 余额和 OpenCodeGo 余量放进 dsh web 的常驻界面,减少在设置页或外部页面之间切换。已核实资料未给出目录页 URL,本文不猜测;仓库地址为:
https://github.com/linshule/dsh-balance