dsh-session-telemetry:在输入框下方汇总当前会话遥测

前言

在 DSH Web UI 里做智能体对话时,轮次、Token 用量和上下文占用往往分散在自带的小组件里,数字也不够细。若你希望在同一条输入框(composer)下方看到整段会话的统计、累计 Token 明细以及上下文构成,而不用反复点开多处入口,可以装一个客户端插件,把信息收成一张遥测卡片。

下面介绍社区插件 dsh-session-telemetry(npm 包名 @cendo91/dsh-session-telemetry),维护者为 cendo91,归类为客户端插件。

这是什么

dsh-session-telemetry 是一个 DSH Web UI 插件:在 conversation.composer.dock(输入框下方停靠区)渲染一张遥测卡片,跟随当前活跃会话,汇总三类指标:

  • 当前会话(Current session):整段会话的轮次与步数、模型/工具耗时、首 token 延迟、解码速度等。
  • Token 用量(Token usage):累计未缓存输入、缓存读、缓存写、输出、总计,以及缓存命中率。
  • 上下文已用(Context used):上下文占用环、已用/容量数值,以及 system / tools / messages 的构成条。

启用后会替换 DSH 自带的 activity、usage 胶囊,并隐藏自带的上下文占用环,避免同一套数字显示两次。插件不新增 projection、工具、提示段、模型输入、网络请求或会话事件;除自身 React 树外不写 DOM。

核心功能

展示位置与数据从哪来

卡片通过 composer dock 标准的 useProjection 与 useSession 取数,来源如下(资料原文表格):

Projection 来源 用途
sessionStats @deepseek-ai/dsh-session-stats(由本 bundle 注入) 轮次、步数、LLM/工具时间、解码速度
tokenUsage @deepseek-ai/dsh-token-meter 输入、缓存、输出 Token
contextPressure @deepseek-ai/dsh-token-meter 上下文占用与容量
contextBreakdown @deepseek-ai/dsh-token-meter system/tools/messages 构成

界面与本地化

  • 表面、文字、边框仅使用 --dsw-alias-* 主题 token。
  • 通过 Client locale 服务支持英文与简体中文;文案在 locale/en.json、locale/zh.json。
  • 条图与环图为内联 SVG/CSS,不用图片或 canvas。
  • 强调色使用蓝、红、黄、绿、橙;分段之间用分隔线,无外边线。
  • 上下文环在其分区右侧,三个分区的条图共用一条基线。
  • 卡片占满 composer 可用宽度(上限为 --dsh-composer-card-max-width);视口宽度低于 560px 时三节纵向堆叠。
  • 运行指示器遵循 prefers-reduced-motion。

依赖与环境

README 写明:DeepSeek Harness 0.2.x 且带 Web UI;无需构建步骤或额外运行时依赖。package.json 中 engines.dsh 为 ^0.2.2-rc.1。许可证为 MIT。

安装与启用

  1. 打开 Settings → Plugins → Add(中文界面:设置 → 插件 → 添加)。
  2. 在添加框中填入以下其一(版本以 README 安装说明为准):
# npm
@cendo91/dsh-session-telemetry@1.0.0

# GitHub
github:cendo91/dsh-session-telemetry#v1.0.0

# 本地检出(绝对路径,示例为 Windows)
C:\path\to\session-telemetry
  1. 安装完成后刷新页面。bundle 会注入 sessionStats 的 host projection,并注册 Client 插件行。

中文说明中给出的简写安装串为:

@cendo91/dsh-session-telemetry@1.0.0

或使用 GitHub 地址 github:cendo91/dsh-session-telemetry#v1.0.0,同样需在安装后刷新。

典型用法

没有单独的配置文件或 CLI 步骤:安装并刷新后,在已有 Session 的对话里打开 composer,卡片会自动出现在输入框下方。

  • 有活跃 Session 时,三节内容随会话更新。
  • 无 Session 时不渲染任何内容。
  • 上下文占用环需提供方上报用量且路由给出 context window 后才会出现。

适用场景与注意

适合谁:经常在 DSH Web UI 里长对话、需要盯着 Token 缓存命中率、上下文占比和 system/tools/messages 拆分的开发者。

使用限制(README Limits):

  • 卡片只跟随 composer 的当前 Session。
  • contextBreakdown 来自 token meter 的启发式构成,是近似值,不与提供方计费压力逐项对齐。
  • 环图在 100% 处钳制,数值分子仍可能大于容量。
  • 隐藏自带上下文环依赖较窄的 DOM/CSS 兼容规则;若未来 composer 改版,选择器可能需要更新。

安全与权限:插件随 DSH 客户端在浏览器中运行,读取的是 UI 已有的 projection 数据;安装前仍建议查看 GitHub 仓库 源码与 MIT 许可证,确认与你的工作流一致。

结尾

dsh-session-telemetry 把会话统计、Token 明细和上下文构成收到 composer 下方一张卡里,并关掉重复的原生组件。社区目录页:https://www.skillhub.cn/plugins/cendo91/dsh-session-telemetry;源码与说明:https://github.com/cendo91/dsh-session-telemetry。DSH 生态以插件扩展能力为主,SkillHub 等为社区目录,与 DeepSeek / 幻方无官方从属关系。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye