dsh-spend-meter:在 DSH 对话里实时看余额、上轮与今日花费

前言

DeepSeek Harness(DSH)在对话里会流式输出 token 用量,但通常不会直接告诉你「这一轮花了多少钱」。余额要在平台页面另开标签查看,会话记录里也只有 token 数、没有人民币。若你长期在 DSH 里做智能体开发或日常对话,很难在不离开会话的前提下掌握账户余额、最近一轮实际扣费以及当天累计支出。

dsh-spend-meter(仓库 lx950/dsh-spend-meter,维护者 lx950)是 DSH 社区目录中的客户端类插件:在对话界面注入一块可拖拽面板,从 DeepSeek 计费计数器(精度 1e-8 CNY)读取数据,在计数器尚未落账时用价目表估算并标明来源。下面介绍它的定位、能力与安装方式。

这是什么

插件对外仓库名为 dsh-spend-meter,在 node_modules 与 dsh.profile.bundles 中的包 id 为 dsh-spend-panel(因 npm 上 dsh-spend-meter 名称已被占用)。当前 package 版本为 0.4.5,许可证 MIT,README 标明 no telemetry。

它解决的核心问题是:在 DSH 桌面会话里闭环展示「钱包余额、上轮扣费、今日累计、进行中的本轮预估」,并显示峰谷计费时段,失败时在 tooltip 说明哪条数据路径不可用,而不是静默显示横线。

核心功能

面板示意(界面随 DSH 设计 token 渲染,可拖拽、可折叠为一行):

会话花费                                  谷时  ▾
余额                    ¥9.6540
上轮                    ¥0.0759
今日                    ¥3.0671
本轮                    ¥0.0412
计费            谷时 → 09:00 转峰

余额

从已登录 DeepSeek 账户读取钱包余额,保留 8 位小数,优先走 platform.deepseek.com/api/v0/users/get_user_summary;若无平台 grant,依次回退 api.deepseek.com/user/balance(API key)与宿主账户服务。

上轮(Last turn)

取本对话中最近一条已落账回复对应的 lifetime spend 计数器差值;含多步 tool calling 的整轮会合并计算。计数器约一分钟内才更新时,面板暂用价目表估算,并在 tooltip 中说明。

今日(Today)

当前计数器 − 当日首次读数;插件 midday 才安装时,当日更早的用量会通过宿主会话 transcript 回填,并用实测/估算比例自校准。计数器来自 total_costs,充值与赠金只动余额、不动计数器,因此差值不会因 top-up 被误导。

本轮(Live)

对话仍在进行时,「本轮」显示当前 turn 已产生的费用(估算或已部分落账的数据)。

峰谷

DeepSeek 在北京时间工作日 09:00–12:00、14:00–18:00 按峰时 2× 计价;周末与法定节假日全天谷时。面板展示当前档位及下次切换提示。

估算兜底

当计数器无法说话时(turn 未 settle、或插件安装前的历史),按宿主 usage 事件中的 inputTokens / cacheReadTokens / outputTokens 与 lib/pricing.js 价目表计算(reasoning token 已含在 outputTokens,不重复加)。未知 model id 回退 Flash 卡。

环境与要求

  1. DeepSeek Harness 0.2.0-rc.2 或更新,且使用 desktop profile(面板占用 client slot,纯 Web 版 dsh 会话不会出现面板)。
  2. 宿主内 Node 22+ 时支持 transcript 回填(多帧 zstd 依赖 node:zlib);更旧运行时面板仍可从 balance book 工作,diag.transcript.error 会说明回填关闭原因。package.json 中 engines.node 为 >=20,与 README 对回填的 Node 22+ 说明并存时,以 README 对回填能力的描述为准。

插件以当前 DSH 进程权限运行;安装前请自行查看仓库源码与 MIT 许可证。社区目录 skillhub.cn 为独立站点,与 DeepSeek / 幻方无官方从属关系。

安装与启用

官方从 GitHub 安装(无需 npm 包):

dsh plugin --profile <name> add github:lx950/dsh-spend-meter

本地开发可链接目录(改代码后无需重装):

dsh plugin --profile <name> add link:/absolute/path/to/dsh-spend-meter

安装后重启 DSH。面板出现在会话中:拖标题栏移动位置,角按钮折叠;位置与折叠状态按机器写入 localStorage。

桌面应用说明: desktop profile 由 Electron 壳管理,终端执行 dsh plugin --profile desktop add … 会被拒绝。可在应用内插件管理器从 GitHub 源安装(若支持),或编辑 %USERPROFILE%\.dsh\profiles\desktop\package.json,在 dependencies 中加入 "dsh-spend-panel": "github:lx950/dsh-spend-meter",并在 dsh.profile.bundles 中保留原有条目并追加 "dsh-spend-panel",再在该目录执行 pnpm install(或使用应用捆绑的 pnpm 路径)并重启应用。细节见仓库 DEVELOPMENT.md。

典型用法

经过上面的步骤启用后,无需额外配置项即可在对话旁查看花费。使用方式即:

  1. 在 desktop 配置文件中安装插件并重启。
  2. 正常发起对话;观察「上轮」在 turn 结束后约一分钟内从估算切换为计数器实测(插件会在 turn 结束后先 2 s 轮询约 20 s,再退避至 6 s,最长约两分钟等待计数器变动)。
  3. 需要细节时查看面板 tooltip(余额路径、今日是否混用 transcript、峰谷切换时间等)。

计费计数器请求示例(DSH 已持有的 platform grant):

GET https://platform.deepseek.com/api/v0/users/get_user_summary
x-dsh-auth-token: <the grant DSH already holds for platform.deepseek.com>

响应中的 normal_wallets.balance 与 total_costs.amount 为面板数值来源。

适用场景与注意

适合: 长期在 DSH 桌面客户端对话、希望实时掌握 DeepSeek 账户余额与按 turn / 按日真实扣费(而非仅 token 数)的开发者与用户。

注意:

  • 必须使用 desktop profile;Web 会话看不到 client 面板。
  • 无平台或 API 余额权限时,面板会降级并在 tooltip 说明,今日数字可能更多依赖价目表与 transcript。
  • 价目表变更需关注仓库 lib/pricing.js(含节假日表);与官方 rate card 不一致时,估算段会有偏差,已落账部分仍以计数器为准。
  • 插件不收集 telemetry(README badge);仍会以 DSH 已有凭证访问 DeepSeek 平台/API,请确认你信任该开源实现。

结尾

dsh-spend-meter 把平台账单计数器与 DSH 会话用量接在一起:可拖拽面板里看余额(8 位小数)、上轮实测扣费、今日累计与进行中的本轮,并标注峰谷与数据来源。进一步了解可访问社区目录页与 GitHub 仓库。

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

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

小夜