前言¶
使用 DSH 做智能体开发时,常见的问题不只是“这一次会话用了多少 token”,而是多个 workspace、多个项目、多个模型同时存在时,用量分布、缓存命中、成本趋势和官方余额如何一起看。
dsh-pulse 是面向 DSH 的 web UI 插件,把这些信息放在同一个观察台里。它主要解决三类问题:
1、跨会话的 token 用量趋势;
2、按模型、项目维度的用量与成本拆分;
3、DeepSeek 官方余额与成本估算的对照查看。
下面介绍它的定位、功能、安装方式、典型用法和注意事项。
这是什么¶
dsh-pulse 是一个 DSH 插件,维护者为 Enc-hanted,许可证为 MIT。
它运行在 DSH 的 UI 平面上,不提供模型可见工具,不额外消耗 token。插件本身不保存密钥。
它提供的是一张跨会话用量与成本观察台,包含:
- daily token charts;
- cache hit ring;
- 90 天 / 1 年热力图;
- 模型与项目拆分;
- 自适应颜色主题;
- CSV 导出。
核心功能¶
1、用量趋势¶
dsh-pulse 的用量趋势支持多个时间窗口:
- 今天的小时级折线图;
- 7 天 / 30 天的每日柱状图;
- 90 天 / 1 年的 GitHub-style heatmap;
- 最多 30 天的自定义日期范围。
这个部分适合先看整体趋势,再缩小到某一天或某一周。
2、项目与模型过滤¶
仪表盘提供两个可搜索下拉框,可以按 workspace 和模型过滤。
选择其中一个 workspace,或同时选择一个 workspace 和一个模型后,整个仪表盘的数据都会收敛到对应范围。
3、跨 provider 模型区分¶
模型标签来自 Models 配置,格式为:
provider · display name
当多个 provider 提供同名模型时,可以通过 provider 前缀区分它们。
4、模型分布与项目排名¶
dsh-pulse 会展示:
- 模型 share bars;
- 项目 ranked table。
这两部分适合回答“哪个模型用得最多”和“哪个项目消耗最多”的问题。
5、会话详情与 subagent 归因¶
会话会按项目分组,并提供:
- subagent subtotal;
- per-session break analysis。
这有助于把一次任务里的研究、思考、总结等阶段拆开来看。
6、成本估算¶
成本估算基于 per-model rates,并区分 peak / off-peak tiers。
没有匹配规则的模型会显示为 unpriced。
需要说明的是,成本估算使用手动汇率 usdToCny,默认值为:
6.8
它是一个估算器,不是账务口径。
如果不想显示成本数字,可以设置:
costEnabled: false
这会隐藏成本相关数字,但保留其他用量数字。
7、成本趋势¶
成本趋势提供每日 sparkline。
在积累满一天 snapshots 后,会在同一张图里叠加官方余额对账线。
8、官方余额¶
如果已经保存了 DEEPSEEK_API_KEY,dsh-pulse 可以查询 DeepSeek 平台余额,并支持手动刷新。
查询使用的是 host 已经保存的 key,插件本身不保存密钥。
9、CSV 导出¶
在 dashboard header 里可以一键导出当前加载窗口。
导出内容为 UTF-8 CSV daily table。
安装与启用¶
dsh-pulse 要求:
node >=22.15
安装命令:
dsh plugin --profile web add -w dsh-pulse
安装后,重启 dsh web,然后打开:
Settings → Usage Pulse
安装完成后,可以在 DSH 的 web UI 里使用 dsh-pulse 的仪表盘。
典型用法¶
1、在会话中查看文本摘要¶
在任意 DSH 会话中输入:
/pulse
它会打印一个文本摘要。
2、打开浮动面板¶
在 DSH web 侧边栏底部按钮处,可以打开 dsh-pulse 的浮动面板。
3、查看官方余额与对账线¶
如果已保存 DEEPSEEK_API_KEY,仪表盘会显示官方余额。
当 snapshots 积累满一天后,成本趋势图里会出现官方余额对账线。
配置与限制¶
dsh-pulse 的本地保存位置是:
$DSH_HOME/settings.yaml
具体写入其中的 pulse: section。
配置修改会立即生效,并能在重启后保留。
需要注意的是:
- 没有
llmservice 时,没有可编辑的行; - 没有 settings service 时,页面为只读;
- 成本数字是估算值,不适合作为账务依据;
- 未配置规则的模型会显示为 unpriced。
卸载与残留¶
卸载命令:
dsh plugin --profile web remove -w dsh-pulse
卸载后,以下内容可以安全删除:
~/.dsh/settings.yaml 中的 pulse section
~/.dsh/storages/pulse_balance.json
适用场景与注意¶
dsh-pulse 适合需要长期观察 DSH 用量的开发者,尤其是同时使用多个项目、多个模型、多个 provider 的场景。
它适合用来回答这些问题:
- 今天 token 消耗集中在哪个时间段?
- 最近 7 天、30 天的用量趋势如何?
- 哪个项目或哪个模型消耗最多?
- 官方余额还能支撑多久?
- 成本估算和官方余额之间有什么差异?
使用前需要注意:
- dsh-pulse 作为 DSH 插件运行,会访问 DSH 本地配置与已保存的 key;
- 插件以当前 dsh 进程权限运行;
- 安装前应检查源码与 MIT 许可证;
- 成本估算不等于官方账务结果;
- 插件本身不保存密钥。
链接¶
GitHub 仓库:
https://github.com/Enc-hanted/dsh-pulse