前言¶
在 DeepSeek Harness(DSH)Web GUI 中,一次会话往往包含多轮回复、缓存读写和输出 token。如果价格后来发生调整,直接用当前价格重算历史,会让同一条会话的成本不断变化。
DSH Cost Meter 针对这个问题提供成本追踪能力:以价格快照锚定的按轮次计价、账户余额展示,以及流式过程中的成本估算。
这是什么¶
DSH Cost Meter 是一个面向 DSH Web GUI 的成本追踪插件,npm 包名为 @gamegeek-saikel/dsh-cost-meter,GitHub 仓库为 https://github.com/Saikel-Orado-Liu/dsh-cost-meter,许可证为 MIT。
它解决的问题可以概括为:让每一轮已完成回复的成本锚定到该次用量事件发生时的价格快照,后续价格变化不会改写已经写入的会话行。
核心功能¶
下面是已核实的插件能力:
- 按轮次成本:提供 snapshot-anchored per-turn cost,即基于价格快照锚定的每轮成本。
- 账户余额:通过
GET /user/balance获取余额,并缓存 60 秒,限制为单飞行请求。 - 成本视图页签:提供 cost view tab,用于查看成本信息。
- 逐条消息成本标识:提供 per-message cost chips,在消息处展示成本。
- 头部实时估算:提供 header pill with live streaming estimates;流式估算使用当前价格,步骤完成后由精确锚定值替换。
- 峰谷计价:支持 peak/off-peak aware pricing。
- 子代理成本汇总:支持 subagent cost aggregation。
- 价格簿快照:使用 append-only pricebook snapshots,避免后续价格变化重新计算已完成用量。
- 界面语言:提供 Simplified Chinese and English interface。
安装与启用¶
安装前确认 DSH 版本在插件声明范围内:
DSH >=0.1.1-rc.1 <0.2.0
宿主机侧要求 Node:
Node ^22.19.0 || >=24.0.0
开发环境使用:
pnpm@11.7.0
使用官方 DSH CLI 将插件安装到 web profile:
npx @deepseek-ai/dsh plugin --profile web add @gamegeek-saikel/dsh-cost-meter
安装完成后启动 DSH Web GUI:
npx @deepseek-ai/dsh web
典型用法¶
安装后,插件会在 DSH Web GUI 中提供以下已核实的界面与行为:
1、Composer dock readout
显示 anchored session spend 和 account balance,并每分钟刷新。
2、Cost view tab
展示整段会话总计、分类总计、子代理列表,以及每轮回复的 anchored ledger。
3、Per-message cost chips
在逐条消息上展示成本信息。
4、Header pill
流式过程中显示 anchored total 或 live estimate;点击进入详情面板。
如果需要手动刷新,可调用:
POST /cost-meter
请求体为:
{"action":"refresh"}
注意 /cost-meter 路由只回应 loopback 或 declared trusted host 请求,因此只应在本地或明确声明的可信主机环境中使用。
适用场景与注意¶
DSH Cost Meter 适合需要在 DSH Web GUI 中查看会话成本、账户余额和子代理成本汇总的使用者。对于希望历史成本不被后续价格变化重写的场景,它的价格快照锚定机制尤其有用。
安装前建议检查源码、许可证与依赖范围。插件运行在 DSH 进程中,会继承当前 dsh 进程的权限;因此只从可信来源安装,并确认 MIT 许可证与代码行为符合预期。
结尾¶
DSH Cost Meter 的价值在于把“现在看到的成本”和“当时计费的成本”分开:流式阶段给出当前价格估算,步骤结算后锚定到价格快照,余额和成本视图在 DSH Web GUI 内集中展示。
GitHub 仓库:https://github.com/Saikel-Orado-Liu/dsh-cost-meter
npm 包名:@gamegeek-saikel/dsh-cost-meter