前言¶
用 DSH(DeepSeek Harness)接官方账号或自建 relay 时,模型调用分散在会话日志里,控制台往往只能看到单次对话,很难按天、按接口、按模型汇总请求次数和 Token。若还要对照价目估费用,通常只能自己扒日志或记账。
dsh-usage-insights 是社区插件,由 Ayowait 维护,在 DSH 设置侧栏增加一页「用量查询」:把官方与第三方 provider 的每次模型调用记入本地账本,并按界面风格接近 DeepSeek 官方用量页的方式展示统计与明细。数据只落在本机 $DSH_HOME 下,不联网上传,也不记录消息正文。
这是什么¶
插件全名 dsh-usage-insights(npm 包名同),归类于社区目录的 admin-security。它在 DSH 0.2.x(Desktop / Web)上通过 Cordis 补丁挂载 Host 与 Client:Host 负责采集事件、历史回填和 HTTP API;Client 注入设置页与侧栏入口。
解决的问题可以概括为三点:全量统计 turn / compaction / title 三类调用;按 provider 区分官方(如 deepseek-account)与第三方 relay;在本地做费用估算、单价调整和 CSV 导出。
核心功能¶
下面按 README 已写明的能力说明,不展开未在资料中出现的特性。
记录与归类
- 每次模型调用写入账本,字段含 provider、model、input/output、cacheRead/cacheWrite、kind(turn / compaction / title)等;不记录 prompt、回复、工具参数或 API Key。
- 安装后自动扫描
$DSH_HOME/sessions下已有会话日志做历史回填,之后只增量读取;账本在storages/dsh-usage-insights/events.jsonl,按 id 去重、追加写。
展示与筛选
- 设置页提供近 7 / 30 / 90 天及「全部」时间范围,并可按接口、模型筛选。
- 三张统计卡、柱状图(消费金额 / Tokens / API 请求次数)、按模型的面积图,以及最近请求明细;界面布局参考官方用量页(见仓库
docs/截图)。
费用与导出
- 内置 DeepSeek Flash / Pro 价目(元 / 百万 tokens);官方模型按北京时间峰谷(工作日 9–12、14–18 双倍)计算,未知模型按 Flash 价估算并标注「预估」。
- 「价格设置」可 per-model 修改缓存命中 / 未命中输入 / 输出三项单价,改后立即重算历史。
- 支持按当前筛选条件导出带 BOM 的 CSV,便于 Excel 打开。
本地 HTTP API
供设置页或本机 curl 使用,基址为 http://127.0.0.1:<port>,例如:
GET /dsh-usage/api/v1/summary?days=30&provider=all&model=allGET/POST /dsh-usage/api/v1/pricing(POST可{ "reset": true }恢复默认)GET /dsh-usage/api/v1/export?days=30POST /dsh-usage/api/v1/backfill重新扫描历史
资料注明:这些接口与 DSH 其他本地接口一样不做登录校验,POST 仅校验同源;勿将 GUI 端口暴露到公网或局域网。
安装与启用¶
安装命令以仓库 README 为准(需先把插件目录放到本机路径,再用 link: 挂载):
dsh plugin --profile desktop add link:/path/to/dsh-usage-insights
然后在 DSH 中打开「插件市场 → 已安装」,启用 dsh-usage-insights,刷新页面后,设置侧栏会出现「用量查询」。
无需重启 GUI 时,可用热挂载(将 <port> 换成当前 DSH GUI 端口):
curl -X POST http://127.0.0.1:<port>/dsh-market/toggle \
-H 'content-type: application/json' \
-d '{"name":"dsh-usage-insights","enabled":true}'
许可证为 MIT(见仓库与 package.json)。
典型用法¶
经过上面的安装与启用,可按 README 建议操作:
- 打开 设置 → 用量查询。
- 顶部选择时间维度,第二行选择接口和模型。
- 用三张卡查看汇总;柱状图在「消费金额 / Tokens / API 请求次数」间切换。
- 在「按模型」区域查看各模型请求数、Token 与日曲线。
- 需要时打开「价格设置」改单价,或用「导出」下载 CSV;右上角 ⟳ 可立即重扫历史。
计费口径(资料原文):费用 = 缓存命中 tokens × 命中价 +(未命中输入 + 缓存写入)× 输入价 + 输出 tokens × 输出价。内置价目示例:
| 模型 | 缓存命中 | 未命中输入 | 输出 |
|---|---|---|---|
| DeepSeek Flash | 0.02 | 1 | 4 |
| DeepSeek Pro | 0.15 | 4.5 | 13.5 |
(单位:元 / 百万 tokens。)
本地数据文件还包括 storages/dsh-usage-insights/pricing.json(自定义单价)与 backfill.json(回填游标)。
适用场景与注意¶
适合谁
- 长期在 DSH 里混用官方账号与多个第三方 endpoint,需要统一看用量和粗算账单的人。
- 希望从既有
sessions日志一次性补历史、之后增量维护账本的人。
使用前注意
- 插件以当前 DSH 进程权限运行,安装前应自行审阅 GitHub 源码 与 MIT 许可证。
- 社区插件目录(如 SkillHub 条目)为独立站点,与 DeepSeek / 幻方无官方从属关系;DSH 生态强调「一切皆插件」,本插件是社区贡献,非内置功能。
- 会话日志为多帧 zstd;解析器遇损坏帧会跳过,不中断整体回填(兼容性说明见 README)。
结尾¶
dsh-usage-insights 把 DSH 里分散的模型调用收成一本只存本地的账本,并在设置里提供接近官方用量页的查看、调价与导出能力。若要安装说明与 API 细节,以仓库 README 为准:
- 目录页:https://www.skillhub.cn/plugins/Ayowait/dsh-usage-insights
- 源码与文档:https://github.com/Ayowait/dsh-usage-insights