dsh-token-total 1.0.1 → 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -1
- package/lib/client.js +482 -98
- package/lib/index.js +196 -11
- package/lib/types/client/ContextUsageEntry.d.ts +22 -0
- package/lib/types/client/context-meter-core.d.ts +26 -0
- package/lib/types/client/context-takeover.d.ts +4 -0
- package/lib/types/client/locales.d.ts +1 -1
- package/lib/types/client/session-usage-core.d.ts +1 -2
- package/lib/types/client/stats-icons.d.ts +4 -0
- package/lib/types/client/use-session-usage.d.ts +1 -1
- package/lib/types/collector.d.ts +19 -3
- package/lib/types/query.d.ts +8 -0
- package/lib/types/store.d.ts +32 -0
- package/lib/types/wire.d.ts +7 -0
- package/package.json +1 -1
- package/src/client/ContextUsageEntry.module.css +130 -0
- package/src/client/ContextUsageEntry.tsx +93 -0
- package/src/client/StatsLineEnhanced.module.css +15 -24
- package/src/client/StatsLineEnhanced.tsx +35 -51
- package/src/client/TokenTotalPanel.tsx +5 -3
- package/src/client/context-meter-core.ts +54 -0
- package/src/client/context-takeover.ts +35 -0
- package/src/client/index.tsx +21 -3
- package/src/client/locales.ts +4 -0
- package/src/client/session-usage-core.ts +7 -11
- package/src/client/stats-icons.tsx +83 -0
- package/src/client/use-session-usage.ts +1 -1
- package/src/collector.ts +81 -16
- package/src/index.ts +29 -0
- package/src/query.ts +23 -8
- package/src/routes.ts +6 -0
- package/src/store.ts +136 -0
- package/src/wire.ts +7 -0
package/README.md
CHANGED
|
@@ -19,7 +19,7 @@ DSH(DeepSeek Harness)Web 插件:**Token 用量统计看板** + **单会话
|
|
|
19
19
|
|
|
20
20
|
- **快捷筛选**:今日 / 近 3 天 / 近 7 天 / 近 1 月 / 近 3 月 / 自定义(起止日期)。
|
|
21
21
|
- **一行六个卡片**:总 Tokens、输入 Tokens、输出 Tokens、缓存 Tokens、缓存命中率、请求数量。
|
|
22
|
-
Token 数量用 **K / M / B**
|
|
22
|
+
Token 数量用 **K / M / B** 紧凑单位显示主值,下方一行给出精确数字。「请求数量」在本时间段出现过失败调用时,下方会多一行「失败 N · 占比」,没有失败则保持单行显示。
|
|
23
23
|
- **活跃热力图**:GitHub 风格,格子颜色深浅表示当天 token 消耗的多少;图例「较少 → 较多」五档。
|
|
24
24
|
- 右上角保留 **刷新**(只重取聚合结果),不再提供重建统计按钮。
|
|
25
25
|
|
|
@@ -67,6 +67,7 @@ dsh plugin --profile <profile> add "file:D:\work\dsh-token-total"
|
|
|
67
67
|
- **本地持久化**:聚合结果写入 storage-domain 的 `token_total_history` 域(`$DSH_HOME/storages/` 下),纯本地、无外部依赖。回扫游标按会话记录已消费的事件序号,重启后从断点继续。
|
|
68
68
|
- **单会话统计**:不走聚合存储(那里没有会话维度),而是按需重放该会话及全部子孙会话的自有日志;已加载会话优先使用实时事件快照,避免持久化缓冲造成漏算。结果缓存 4 秒,任意会话的新事件都会使缓存失效,包含此前尚未发现的子会话。前端从首次读取起每 4 秒刷新,显示时使用原生实时主会话用量、主会话压缩调用用量与子树用量之和,胶囊与弹窗共用同一口径;切换会话时立即清除旧会话读数。读取失败不会把部分子树当作成功结果覆盖已有读数。
|
|
69
69
|
- **缓存命中率** = 缓存命中 token ÷ 输入 token 总量(命中 + 未命中)。
|
|
70
|
+
- **失败数量**:以宿主记录的 `assistant/attempt` 事件为准。宿主只有在流以错误结束、或调用在提交任何内容之前被取消时才写 `assistant/attempt`,其余调用一律写 `assistant/message`,两者恰好划分全部调用,所以该事件就是「一次失败的 provider 调用」的精确边界(`interrupted: true` 但已有内容的 `assistant/message` 不计为失败)。失败数是请求数的子集,不额外计入请求;失败调用若在流中断前已上报用量,token 仍按用量计入、不会丢失。该计数晚于日 / 小时两份游标引入,因此老版本升级后会额外做一次只写失败数的增量回扫(`failuresReady` 标记完成,不重复累加 token)。
|
|
70
71
|
|
|
71
72
|
## HTTP 接口
|
|
72
73
|
|