前言¶
DeepSeek Harness 本身不保留跨会话的用量视图,会话一删历史消耗就查不到。dsh-usage-stats 是一个本地用量统计插件,将每次模型调用的四类 token 记入 SQLite 账本,按 天 × 服务商 × 模型 分桶。它只统计用量,不做费用计算,适合需要区分主对话与内部调用(压缩、摘要等)的开发者。
核心功能¶
- 本地 SQLite 账本:数据存储在
$DSH_HOME/storages/usage-stats/。 - 分桶统计:按 天 × 服务商 × 模型 分桶,统计输入、输出、缓存命中、缓存读写。
- 调用区分:区分 主对话 与 DSH 内部调用(压缩、摘要等)。
- 历史回溯:支持回溯插件安装前的历史会话数据。
- 权限控制:仅本地 loopback 访问,无凭据/会话内容访问权限。
安装与启用¶
插件仅支持 Web GUI profile (dsh web),安装后需重启服务。
- 安装
dsh plugin --profile web add @lengduan/dsh-usage-stats
- 升级
dsh plugin --profile web update @lengduan/dsh-usage-stats
- 禁用(保留账本)
在dsh web的cordis.patch.yml中覆盖:
- id: usage-stats
disabled: true
- 移除(保留账本)
dsh plugin --profile web remove @lengduan/dsh-usage-stats
使用方法¶
- 安装并重启
dsh web。 - 打开任意一个已有对话的会话。
- 在会话视图顶部切换到「用量统计」tab。
- 默认显示「今日 · 全部口径」的数据。
- 通过时间范围(今日/本周等)和口径(全部/对话/内部)筛选数据。
- 点击服务商行可折叠查看其下的模型明细。
- 点击「刷新」重新取数。
适用场景与注意¶
- 适用场景:需要按天或按模型核对 token 消耗,并且需要把「主对话」与「DSH 内部调用」分开看的人。
- 不支持:TUI / headless 环境(没有 Web 的 slot 可挂),需要算钱(这里只有 token,不乘单价),跨机器汇总(账本是单机文件)。
- 远程访问:远程访问依赖
@linxin666/dsh-remote-web-ui的配对门控通道。若未安装该插件或未配对,局域网直连/usage/api会返回403错误。 - 卸载行为:卸载不会删除本地账本,要清空历史需手动删除
$DSH_HOME/storages/usage-stats/目录。