dsh-token-total 1.0.3 → 1.0.5

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 CHANGED
@@ -2,12 +2,13 @@
2
2
 
3
3
  DSH(DeepSeek Harness)Web 插件:**Token 用量统计看板** + **单会话用量(含子智能体)**。
4
4
 
5
- 两件事,一个插件:
5
+ 三个入口,一个插件:
6
6
 
7
7
  1. **统计看板** — 侧边栏插件区下方的入口,点开是完整的用量看板(快捷筛选 / 六卡片 / 活跃热力图 / 缓存命中率趋势 + 分模型柱状图 / 按模型与按供应商 Top5)。
8
8
  2. **单会话统计** — 增强会话输入框下方的原生信息栏,把「Token 用量」从「只有主智能体」改成「主智能体 + 全部子智能体」,让一次会话的真实消耗有地方可看。
9
+ 3. **会话用量页** — 在对话旁新增「用量」tab,展示两行统计卡(请求数量 / 总 tokens / 命中率 / token 速度,及输入 / 输出 / 缓存读取 / 缓存写入)、子代理与模型明细、按轮折叠的请求记录。
9
10
 
10
- 所有图表都是手写 SVG,不依赖任何图表库;配色走 DSH 主题变量,自动适配明暗主题。
11
+ 所有图表都是手写 SVG,不依赖任何图表库。全局看板与底部胶囊跟随 DSH 明暗主题;会话用量页按设计采用独立浅色主题。
11
12
 
12
13
  ## 功能
13
14
 
@@ -45,6 +46,16 @@ DSH(DeepSeek Harness)Web 插件:**Token 用量统计看板** + **单会话
45
46
  - **流式吞吐速度始终开启**:输出过程中显示估算的解码速度;暂无有效样本或输出结束后,回到会话累计的精确值。
46
47
  - 不再提供底部增强功能的开关;旧版本保存的关闭设置不再影响显示。
47
48
 
49
+ ### 会话「用量」页
50
+
51
+ 在每个会话原生的「对话 / 轨迹」旁新增 **用量** tab;沿用会话切换与视图导航,不另造顶部栏或输入框。
52
+
53
+ - 浅色页面两行统计卡:第一行请求数量(附失败数)、总 tokens(附精确值)、缓存命中率(附命中 token)、token 速度(附平均首 token);第二行输入、输出、缓存读取、缓存写入四个 token 桶。不显示费用。
54
+ - 子代理明细使用每个子代理的**真实名称**(取自子代理标签,缺失时回退到会话标题、工作目录或会话 id)。
55
+ - 中部为等宽、等高的 **子代理明细** 与 **按模型明细**;窄视口自动堆叠。使用固定列布局而非横向滚动,长名称省略并可悬浮查看全名,token 数同样可悬浮查看精确值。按模型明细的名称使用模型选择器的**显示名称**(路由 id 保留在悬浮提示中,无法解析时回退为 id);当多行显示名称相同(忽略大小写与分隔符)时,在名称下方用灰色小字标明各自供应商以便区分。
56
+ - 请求记录按**轮**折叠(压缩调用归入独立分组),**默认全部折叠**;展开某一轮可查看该轮每一次请求的时间、模型、tokens、命中率、状态与入 / 出 / 读 / 写明细,支持单组展开和全部展开 / 收起。失败尝试、实际重试、压缩调用纳入统计;仅继承的父会话历史不重复计算。
57
+ - 页面每 1.5 秒串行读取当前会话明细,切换或离开 tab 会取消请求和计时器。统计含本会话及所有后代的自有历史日志,缺失的首 token / 速度显示 `—`,读取错误保留上次成功结果。
58
+
48
59
  ## 安装
49
60
 
50
61
  ```sh
@@ -60,6 +71,8 @@ dsh plugin --profile <profile> add "file:D:\work\dsh-token-total"
60
71
  `package.json` 里的 `dsh.bundle.patch` 会让 CLI 在安装后把本插件追加进该 profile 的 `dsh.profile.bundles`,重启后自动挂载,无需手改 profile 配置。若该 profile 的 `cordis.patch.yml` 里还留着旧的手工挂载行,请先删掉,否则会重复挂载(两个宿主实例、两条重复路由)。
61
72
 
62
73
  > Electron 桌面端的 `desktop` profile 由应用独占管理,CLI 会拒绝写入(`profile "desktop" is managed exclusively by the Electron application`)。请用应用内的插件管理器安装,或另建一个 profile 验证。
74
+ >
75
+ > `pnpm run build` 只更新本项目的构建产物,不会自动覆盖桌面 profile 已安装的插件副本。桌面端请在应用内插件管理器更新 / 安装本地构建后的插件,再按提示重启宿主并刷新页面;不要直接覆盖运行中的 profile。
63
76
 
64
77
  ## 数据来源与统计口径
65
78
 
@@ -77,6 +90,7 @@ dsh plugin --profile <profile> add "file:D:\work\dsh-token-total"
77
90
  | --- | --- |
78
91
  | `/token-total/api/range` | 取某个时间范围的聚合(`{range, from?, to?}`) |
79
92
  | `/token-total/api/session` | 取某会话树的用量(`{sessionId}`,返回 `self` / `subagents` / `total` / `subagentSessions`) |
93
+ | `/token-total/api/session-detail` | 取会话用量页的统计、子代理(真实名称)、模型与按轮折叠的请求记录(`{sessionId}`) |
80
94
  | `/token-total/api/status` | 回扫进度 |
81
95
  | `/token-total/api/reset` | 清空统计并重新回扫 |
82
96