dsh-balance:在 DSH Web 聊天界面实时查看 DeepSeek 余额与 token 用量

前言

用 DeepSeek Harness(DSH)跑 web 会话时,模型调用会消耗 API 额度,本机还会累积 token 统计。若要到控制台或单独查接口才能知道「还剩多少钱、这次用了多少」,会打断调试节奏。社区插件 dsh-balance(维护者 liudiw)把余额与本机 / 平台用量嵌进聊天窗口右上角,并可在界面内配置凭据,无需为这一项单独开终端。

这是什么

dsh-balance 是 DeepSeek Harness 的 bundle 插件:在 web profile 下向 UI 注入紧凑徽章,展示 DeepSeek 账户余额与会话 / 本机 token 用量;展开后可看详情,并在下拉底部保存 API Key 与平台 userToken。密钥写入 DSH 凭据库(~/.dsh/.credentials.yaml,权限 0600),服务端接口不回读明文。当前发布版本见仓库 package.json(资料中为 0.2.0),许可证 MIT。

目录页:skillhub.cn/plugins/liudiw/dsh-balance
源码:github.com/liudiw/dsh-balance

环境要求

  • 已安装 DeepSeek Harness,且有一个 web profile(标准 @deepseek-ai/dsh-web-app 组合即可,README 写明不依赖 dsh-worktable)。
  • Node.js ≥ 20,与 DSH 运行时一致。

核心功能

余额与用量徽章
聊天窗口右上角显示紧凑信息:账户余额(人民币)以及本会话 / 本机累计 token 用量(README 中的展示形式含货币与 token 摘要)。

详情下拉
点击徽章可查看账户余额、可用状态、本次会话与本机 tokens,以及(在配置平台凭据后)平台账户本月与历史累计用量。

界面内配置
下拉底部提供凭据表单:DeepSeek API Key、平台 userToken。保存后约 10 秒内可刷新平台侧数据;写接口经 DSH credentials seam 落盘,每轮请求重新解析,一般无需重启 dsh web。

刷新与缓存
本机数据约 5 秒刷新;平台数据 60 秒节流;历史累计用量有 12 小时磁盘缓存。

数据来源(摘要)

数据 来源
账户余额 api.deepseek.com/user/balance(DEEPSEEK_API_KEY)
本机 token DSH 会话日志中 assistant/message 的 usage
平台本月用量 platform.deepseek.com/api/v0/usage/amount(需 DEEPSEEK_USER_TOKEN)
平台累计 自 2024-01 起逐月求和,带 12h 缓存

未配置 DEEPSEEK_USER_TOKEN 时,插件仍显示余额与本机用量;下拉中保留「去配置」入口。

安装与启用

目标机已有 web profile 即可。官方 README 给出三种方式,下面以推荐的一条命令为例。

先做安装:在目标机执行(命令来自 README,勿自行改成 github:owner/repo 形式):

dsh plugin --profile web add https://github.com/liudiw/dsh-balance/releases/latest/download/dsh-balance.tgz

再做生效:装完后重启 dsh web。若重启后界面看不到徽章,确认 profile 的 dsh.profile.bundles 已包含 dsh-balance(部分版本的 dsh plugin add 只装依赖、不自动登记 bundle);缺失则手动加入后再重启。仍无显示时,对浏览器做一次硬刷新(Ctrl/Cmd+Shift+R)再判断。

手动改 profile、本地 link: 开发安装等步骤见 GitHub README「方式 B / 方式 C」。若 pnpm install 出现 ERR_PNPM_MISSING_TARBALL_INTEGRITY,README 说明可删 lock、改用 file:./dsh-balance.tgz 再安装。

典型用法:首次配置凭据

凭据建议在 GUI 完成,无需命令行写密钥。

  1. 点击聊天窗口右上角余额徽章,打开下拉,进入底部 配置凭据。
  2. DeepSeek API Key:若 DSH 已用于跑 LLM,通常已有配置,可留空;若为空,粘贴 sk-...。
  3. 平台 userToken:登录 platform.deepseek.com,在浏览器开发者工具 Console 执行 copy(localStorage.getItem('userToken')),将返回 JSON 的 value 字段粘贴到表单。
  4. 点击「保存配置」。保存后密钥写入 ~/.dsh/.credentials.yaml;约 10 秒内徽章可显示平台本月 / 累计用量。

插件暴露的 HTTP 接口包括 GET /api/balance(快照)、GET/POST /api/balance/config(配置状态与写入)。POST 须带请求头 x-dsh-balance-config: 1,用于降低跨源伪造风险。若 API Key 来自只读来源(如环境变量),界面会提示 writable: false 且拒绝改写。

适用场景与注意

适合谁
长期在 DSH web 里对话、调智能体,希望随时对照余额与本机 / 平台 token,又不想频繁切到 DeepSeek 控制台的用户。

运行与信任边界
插件与当前 dsh web 进程同权限运行,会调用 DeepSeek 官方与平台接口并读写本机凭据文件。安装前应在 GitHub 阅读 lib/index.js、lib/client.js 与许可证;社区目录 skillhub.cn 为独立站点,与 DeepSeek / 幻方无官方从属关系。

常见问题(摘自 README)
徽章不出现:硬刷新 → 确认 bundle 与重启。平台用量显示「—」:检查 userToken 是否过期并在下拉里重填。整个 dsh web 起不来:排查 profile 中 dsh-balance 依赖是否可解析(例如 link: 目录被移动)。改了 profile 不生效:确认编辑的是运行中的 DSH_HOME 下 profile(默认 ~/.dsh,也可能是 ~/.config/dsh)。

结尾

经过上面的步骤,dsh-balance 把「还剩多少钱、用了多少 token」收进聊天界面一角,并把凭据配置留在同一下拉里。需要安装包与接口细节时,以仓库 README 为准。

  • 目录页:https://www.skillhub.cn/plugins/liudiw/dsh-balance
  • GitHub:https://github.com/liudiw/dsh-balance
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜