前言¶
在 DeepSeek Harness(DSH)里和模型多轮对话时,token 会随每一轮 assistant 消息和流式 attempt 累加,但界面默认并不把「花了多少钱、输入/输出/cache 各多少」摆在显眼位置。若要对账、控成本,或找出某次对话里哪一轮最贵,往往得自己翻 session 日志或事后估算。
下面介绍社区插件 dsh-session-usage(维护者 Cottins-Vanilla):它只读已提交的会话日志,把 assistant/message 与 assistant/attempt 的用量折叠成「单会话 / 单轮」汇总,并在侧边栏、对话 View、会话标题和每条回答末尾展示价格与 token。分类为客户端插件,面向带 Web UI 的 Harness 使用场景。
这是什么¶
dsh-session-usage 回答一个问题:这次(或这一轮)对话在金额和 token 上花了多少?
- 仓库:Cottins-Vanilla/dsh-session-usage
- 社区目录页:SkillHub 插件页
- 许可证:MIT;当前包版本 1.4.0(见
package.json) - 设计原则:只读 session log,不写日志、不改 profile;除登录时检查 GitHub Release 外,无第三方网络与遥测
展示位置(Surfaces)¶
插件在四处接入,无需单独开新窗口:
| 位置 | 路径 | 内容 |
|---|---|---|
| 用量面板 | 侧边栏 → 会话用量 / Session usage | 完整仪表盘:KPI、按日/按轮曲线、会话列表 |
| 用量标签 | 对话 View → 用量 / Usage | 与面板相同,但范围限定为当前打开的对话 |
| 会话标题芯片 | 对话标题栏右侧 | 当前对话价格与总 token;点击可打开面板 |
| 轮次价格标记 | 每条已完成回答之后 | 本轮 ¥… · 当前对话 ¥…,先本轮后累计 |
示意:
Sidebar
└─ 会话用量 ← 完整仪表盘
Conversation header
├─ [Chat] [Trajectory] [用量] [Context] [Fleet]
└─ ¥0.1234 · 12.3k tokens ← 标题芯片
End of a completed answer
└─ 本轮 ¥0.1234 · 当前对话 ¥1.2345 ← 轮次标记
核心功能¶
五项指标与三种范围¶
- 指标:价格、总 token、输入 token、输出 token、cache-read token。
- 范围(面板顶部为带标签控件,不是零散标签):
- 当前对话:本页最后打开的那条会话,显示标题。
- 当前项目:
cwd与当前对话工作目录一致的会话;悬停可看完整路径。 - 全部对话:
sessionQuery可见的全部 live/persisted 会话,显示数量。
未在本页打开过对话时,「当前对话」与「当前项目」不可选。
曲线与图例¶
- 按日曲线:在
chartDays个日历日内补零,按北京日期截止到当天。 - 按轮值(仅当前对话):每点为该轮单独用量,不累计,默认模式,便于找「最贵的一轮」。
- 按轮累计:当前对话内随轮次累加;在「当前项目 / 全部对话」下,费用最高的 8 条会话各用一种颜色,其余合并为灰色 other conversations;图例可点击隐藏/显示,悬停可看各序列数值。
点击跳转¶
会话列表行打开对应对话;在用量标签里点击按轮图上的点或轮次明细行,会切回 Chat 并定位到该轮。当前对话视图会列出每一轮。
轮次成本标记与刷新¶
每条完成回答后显示类似:
● 本轮 ¥0.1234 · 当前对话 ¥1.2345
面板 标记颜色 / Badge color 可设白/预设色/自定义 hex,偏好存在 localStorage 键 dsh-session-usage.turnColor。点击标记可打开该对话的用量面板。
刷新节奏:面板约 15 秒、标题芯片约 8 秒;轮次标记按会话共享一次请求。登录 Harness 时会检查一次 GitHub 最新 Release(Host 缓存 6 小时),也可手动 Check for updates。
定价说明¶
价格为估算。Harness 记录 token 用量,但不记录账单或供应商牌价。默认按 DeepSeek 公布的 CNY「每百万 token」表匹配模型名(含 deepseek-flash、deepseek-v4-pro 等及 fallback);单条消息大致为:
cost = (cacheRead × hit + input × miss + cacheWrite × miss + output × out) / 1,000,000
具体系数以仓库 README 中的表格为准。换模型或牌价变更时,应以 README 与上游定价为准,勿把面板数字当作正式发票。
安装与启用¶
环境要求¶
- DeepSeek Harness 0.2.2-rc.1(README 标明为已测试)且启用 Web UI。
- Node.js 22.19+。
- Profile 中已启用 Web 应用。
插件为纯 bundle,无构建步骤、无运行时依赖;安装后默认启用。若 Web 已在运行,刷新页面即可;Host 端无法通过 HMR 重载时需重启应用一次。
从 GitHub 安装¶
在 Web UI:Plugins → Add plugin,来源选 GitHub,填入:
https://github.com/Cottins-Vanilla/dsh-session-usage
或使用 CLI(desktop 换成你实际承载 Web UI 的 profile 名):
dsh plugin --profile desktop add https://github.com/Cottins-Vanilla/dsh-session-usage
卸载:Web UI 中 Plugins → Session usage → Remove,或:
dsh plugin --profile desktop remove dsh-session-usage
README 另说明可从本地 checkout 用 dsh plugin --profile desktop add ./dsh-session-usage 安装;应用内市场收录需向 awesome-dsh-plugin 提 PR,见仓库 docs/marketplace.md。
典型用法¶
- 安装并刷新 Web UI 后,在侧边栏打开 会话用量,先看 KPI 与范围切换。
- 打开某条对话,在 View 中切到 用量,用 每轮值 找单轮峰值,再用 每轮累计 看对话如何变贵。
- 需要按项目汇总时,选 当前项目;需要全局概览时选 全部对话,曲线在 每日 与 按轮累计 间切换(非当前对话时不提供「每轮值」)。
- 在 Chat 里阅读回答时,直接看末尾 本轮 · 当前对话 标记;要改样式则在用量面板调整 标记颜色。
- 从图例或会话列表点进目标对话或轮次,减少在 Chat 与用量页之间手动翻找。
适用场景与注意¶
适合:长期在 DSH Web 里做 agent 开发、需要按会话/项目/全局观察 token 与估算成本、希望在不导出日志的情况下对比各轮开销的开发者。
注意:
- 插件在当前 DSH 进程权限下运行,安装前建议浏览源码与 MIT 许可证,确认符合你的安全策略。
- 金额为模型名 + 默认单价表的估算,不是供应商账单。
- 只读设计意味着它不能替你限流或改配额;控成本仍需结合模型选择与对话习惯。
- 社区目录(如 SkillHub)为独立生态站点,与 DeepSeek / 幻方无官方从属关系;安装源以你填写的 GitHub URL 或本地路径为准。
界面提供完整中英文文案(Bilingual)。
结尾¶
dsh-session-usage 把 session 里已有的用量数据收到侧边栏、用量标签、标题芯片和回答标记里,用三种范围和多种曲线回答「这轮/这天/这个项目花了多少」。若你已在用 Harness 0.2.2-rc.1 与 Web UI,可按上文命令从官方仓库安装试用。
- 目录页:https://www.skillhub.cn/plugins/Cottins-Vanilla/dsh-session-usage
- 源码与说明:https://github.com/Cottins-Vanilla/dsh-session-usage