dsh-live-spend · 实时花费
给 DeepSeek Harness 加花费显示:输入框上方三行看整场对话花了多少、余额还剩多少、现在是峰价还是谷价;每条回答末尾一个数字看这一轮花了多少。
● 本次 ¥2.375 · 余额 ¥94.840 ← 输入框上方,一直在,只有这个数字有滚动动画
当前为谷值价 ← 当前计费时段
距离谷值结束还有 13小时12分钟 ← 距离下一次切换还有多久
(回答内容…)
¥0.054 ← 每条回答末尾,答完才出现
安装
本机目录:
dsh plugin --profile web add "E:\日常工作区\dsh-live-spend"
GitHub:
dsh plugin --profile web add github:jeff072333/dsh-live-spend
装完刷新一次页面;设置 → 插件 里会显示「实时花费」。卸载:
dsh plugin --profile web remove dsh-live-spend
显示规则
| 位置 | 显示 |
|---|---|
| 输入框上方·第 1 行 | ● 本次 ¥2.375 · 余额 ¥94.840:整场对话累计 + 账户余额,三位小数,跑动时数字持续上涨,新提问不会归零 |
| 输入框上方·第 2 行 | 当前为峰值价 / 当前为谷值价:当前计费时段 |
| 输入框上方·第 3 行 | 距离下一次谷值价还有 X小时Y分钟(峰值时)/ 距离谷值结束还有 X小时Y分钟(谷值时) |
| 每条回答末尾 | ¥0.054:这一轮的总消耗,答完才出现,往上翻历史能看到每一轮 |
| 还没花过钱 | 不显示,不占地方 |
| 读不到余额 | 显示 余额 —,花费照常统计 |
峰谷规则:北京时间工作日 9:00–12:00、14:00–18:00 为峰值价;其余时间(含周末全天)为谷值价,谷价是峰价的一半。 第 2、3 行按本机时间每 30 秒刷新一次;计费本身按每次调用的实际时间戳算,所以在整点边界前后几秒可能对不上,其余时间一致。
钱是怎么算出来的
每次模型调用结束时,DSH 会记录这一段的真实用量(未命中输入 / 缓存命中 / 输出 token),本插件按 DeepSeek 官方价目表折算:
| 模型 | 缓存命中 | 未命中输入 | 输出 |
|---|---|---|---|
deepseek-flash |
¥0.04 / ¥0.02 | ¥2 / ¥1 | ¥8 / ¥4 |
deepseek-pro |
¥0.30 / ¥0.15 | ¥9 / ¥4.5 | ¥27 / ¥13.5 |
单位是「元 / 百万 token」,高峰 / 空闲 两档。高峰是北京时间工作日 9:00–12:00、14:00–18:00,其余时间(含周末全天)按空闲价,空闲价正好是高峰的一半。联网搜索和网页抓取按 ¥0.005 / 次计。
关于"实时"
余额数字能一直动,但要分清两种数:
- 准确的数:每次模型调用结束,DSH 报一次真实用量,这一笔是准的。
- 中间的数:两次调用之间,插件按上一步的"每秒花费"往前推,让数字持续下滑;下一笔真实用量到达时会被纠正,回合结束定格为准确值。
所以中途可能差几分钱,结束时一定对得上。
余额从哪来
走已登录的 DeepSeek 账号,和「设置 → 账户」读余额是同一条接口(account.getBalance),不需要配置 API key。插件在页面打开时读一次,之后每 15 秒读一次,每次回答结束再读一次。
显示的是:最近一次读到的平台余额 − 这之后已经花掉的钱。平台余额本身要等回合结算后才变,所以这条减去的是本地账本,回合结束时自然对齐。
没登录 DeepSeek 账号、或接口暂时失败时,余额位显示 余额 —,花费统计不受影响。
已知限制
- 只统计当前会话,不跨会话累计
- 只有
deepseek-flash/deepseek-pro系列计价;其他模型只记 token、不计金额(底部会标注) - 中途数字是估算,误差通常在几分钱以内
- 需要 DSH 0.2.1-rc.5 及以上
结构与开发
index.js Host 半:折叠 session/event 成会话投影 liveSpend
client.js Client 半:注册到 conversation.input.dock,渲染那一行字并读账户余额
cordis.patch.yml bundle 挂载声明
locale/{zh,en}.json 插件管理器里显示的标题与说明
tests/ Host 折叠逻辑 + Client bundle 契约测试
assets/ 图标生成脚本与图标
npm test # node --test tests/*.test.mjs
Host 半零依赖(只用 Node 内置的 fetch / setInterval),Client 半只依赖 react。
License
MIT
No comments yet. Be the first to write one.