dsh-usage-spend:在 DSH 里看会话 Token 用量与峰谷计价估算

前言

在 DeepSeek Harness(DSH)里跑 Composer 和长对话时,内置界面通常只给出 Token 计数(例如每轮操作上的「用量 N tok」),不会出现按官方价目折算的金额,也不会区分峰时与谷时。若你需要在本地会话里快速判断「这一轮大概花了多少钱」「整场会话在峰谷窗口里各占多少」,就要在客户端侧接一层计价逻辑,并尽量与 DeepSeek 公布的 CNY 价表、北京时间峰谷规则对齐。

下面介绍社区插件 dsh-usage-spend(维护者 iamwaller,分类 admin-security)。它在 DSH Composer 中展示当前会话的 Token 用量与估算花费,按 DeepSeek 峰时、谷时费率计价,并把金额追加到内置的每轮用量操作上;币种与汇率在 Plugins 页面配置。定价依据来自 DeepSeek 官方价目(api-docs.deepseek.com/zh-cn/quick_start/pricing,资料记载核对日为 2026-11-07),插件当前版本为 0.2.2,MIT 许可,目标 DSH 版本为 ^0.2.2-rc.1。

这是什么

dsh-usage-spend 是 DSH 的客户端注入型插件:通过 Cordis patch 注册 usage-cost 能力,替换或增强内置 usage 展示,并在侧栏可选显示 DeepSeek 账户余额。会话总费用按会话自身事件日志按小时回放各 Token 桶(未命中缓存输入、缓存读、缓存写、输出),再乘以对应小时生效的峰谷倍率后求和;单轮金额则按该轮结束时刻所在的计费窗口计价。

插件不调用外部定价 API 上传日志;Host 路由 /api/dsh-usage-spend/window 仅在本机读取并聚合会话日志,且为 owner-only。侧栏余额调用 account.getBalance(DeepSeek 账户),与本地估算相互独立。

核心功能

Composer 用量胶囊

内置 usage 行被替换为带金额的胶囊,形态类似:

85.3M tok · ≈¥3.09 · cache hit 99.4%

点击卡片后,标题区显示精确 Token 数与金额,并分列 cache hit、未缓存输入、缓存读、缓存写、输出及计费窗口(峰谷占比)等桶。

每轮用量操作

内置每轮 用量 85.3M tok 会变为 85.3M tok · ≈¥3.09,金额按该轮结束时间所在窗口计价。

峰谷计价规则

谷时费率以 README 中的 off-peak 表为准(单位:CNY / 1M tokens);峰时 = 表内价格 × 2。

峰时(北京时间,周一至周五):09:00–12:00、14:00–18:00。其余时间、周末及法定节假日整日为谷时;节假日遵循国务院安排,插件内置 2026 年日期,每年需更新一次。

会话总费用按日志事件时间戳落入整点小时桶,再对该小时应用当时有效的倍率;旧会话重新打开仍按历史窗口计费。侧栏金额后的 峰 / 谷 / 混 徽章描述本会话计费窗口混合情况(按金额权重,而非 Token 数占比);无法读取日志时回退到当前窗口,徽章显示实时 峰 / 谷。

Plugins 页设置与侧栏余额

可在插件卡片配置币种(CNY / USD / both)、美元兑人民币汇率、是否显示侧栏余额;表单下方为只读价目表。侧栏底部显示 余额 ¥12.34,约每 60 秒或点击刷新;折叠侧栏时显示紧凑金额。可通过配置关闭余额显示。

说明:估算不包含折扣、赠送额度、Search/Fetch 费用及平台实际账单,仅为参考;切换会话内模型时,各小时桶按当前模型费率计价,历史模型名不会回放。

安装与启用

在指定 profile 下执行:

dsh plugin --profile <profile> add dsh-usage-spend

或在 DSH Desktop / Web 中打开 Plugins → Add plugin,输入 dsh-usage-spend,选择 Enable now,然后重启或重新加载。

打开 Plugins,展开 Usage and spend 卡片,确认 usage-cost 行已开启。安装前建议阅读 GitHub 仓库 源码与 MIT 许可证;插件以当前 DSH 进程权限运行。

配置

在 Usage and spend 对应行点击 Configure,修改立即生效,并写入 profile 的 cordis.patch.yml:

- id: usage-cost
  name: 'dsh-usage-spend'
  config:
    currency: CNY      # CNY | USD | BOTH
    usdToCny: 7.2
    showBalance: true

关闭 usage-cost 行会移除胶囊、每轮金额与侧栏余额;重新开启后恢复。当 Host 设置服务不可用时,币种与汇率回退到 localStorage(dsh.cost.currency / dsh.cost.usdToCny)。

价表与自定义单价

默认 off-peak 价(CNY / 1M tokens)节选如下:

Model Input (cache miss) Input (cache hit) Output
deepseek-flash (DeepSeek-V4.1-Flash-1017) 1 0.02 4
deepseek-v4-pro (DeepSeek-V4-Pro-0813) 4.5 0.15 13.5

deepseek-v4-flash、deepseek-v4-flash-vision-exp 为仍可用的旧名,按 Flash 价计费。deepseek-chat、deepseek-reasoner 已于 2026-07-24 停用,不再计价。

若需覆盖单价,可在浏览器控制台写入 localStorage["dsh.cost.prices"](键为模型名,值为 off-peak 的 CNY / 1M tokens;峰时由插件翻倍),例如:

{
  "deepseek-flash": { "input": 1, "cacheRead": 0.02, "cacheWrite": 1, "output": 4 }
}

键可为完整模型名、provider/model 或裸模型名。修改后需重新加载。资料注明:0.1.0 覆盖价为 USD;0.2.0 改为 CNY 并加入峰谷倍率,旧覆盖需按新单位重填。

适用场景与注意

适合在 DSH 中长期使用 Composer、需要会话级与单轮级花费直觉、并关心峰谷窗口占比的开发者或管理员。侧栏余额适合已登录 DeepSeek 账户、希望对照平台余额的场景;未登录或读取失败时显示 --。

兼容性方面:插件针对 DSH 0.2.2-rc.1 的 client slot / projection API;每轮文案通过 DOM 观察器改写,若未来 DSH 更改内置按钮结构,可能退化为原始 用量 N tok,不影响会话本身。Node 引擎要求 >=20。

DSH 生态主张「一切皆插件」;目录站 skillhub.cn 为社区收录,与 DeepSeek / 幻方无官方从属关系。

延伸阅读

羽毛球分组比赛记分
小程序二维码

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

小夜