实时 TPS · DSH Desktop 插件
Real-time tokens-per-second (TPS) meter for DSH Desktop conversations — works with local and cloud models.
在 DSH 输入框下方加一个实时输出速度徽标:生成中显示 实时 71.6 tok/s,结束后显示 本轮平均 tok/s;点开可看折线与本轮统计。本地模型和云端 API 通用。
显示什么
| 状态 | 显示 |
|---|---|
| 生成中 | 实时 71.6 tok/s,每 200ms 刷新,取最近 3 秒滚动窗口 |
| 等待首 token | 等待首 token 0.4s |
| 一轮结束 | 本轮平均 70.8 tok/s |
| 空闲 | TPS,没有数据时显示上一次的平均值 |
点开徽标展开浮动面板:
- 实时/平均速度大数字
- 最近一段时间的速度折线
- 输出 tokens、首 token 延迟、本轮用时(有模型名时也会显示)
收起回到一行小徽标;收成图标只剩 22px 的仪表图标,再点图标重新展开
模式保存在浏览器 localStorage 的 dsh.live-tps.mode,刷新不丢。
安装
插件只通过 GitHub 分发,不需要 npm。安装后必须完全退出并重新打开 DSH Desktop,client bundle 只在启动时加载。
从 GitHub 地址安装时,pnpm 会调用本机
git。如果目标机器没有 git,请下载 Release 里的 zip,解压后按「方式三:本地目录」安装。
方式一:桌面端添加(推荐)
打开 DSH Desktop → 左侧 插件 → + 添加插件
在输入框填仓库地址:
https://github.com/1207627875/dsh-live-tps点 安装,等待出现「已安装」
在「已安装插件」里确认 实时 TPS 的开关是打开状态
完全退出并重新打开 DSH Desktop(关闭窗口再打开,不是刷新页面)
打开任意会话,输入框下方应出现 TPS 徽标
方式二:把提示词发给 DSH Agent
把下面整段复制给目标机器上的 DSH Agent:
你在一台 Windows 机器上,DSH Desktop 已安装并正在运行。请从 GitHub 安装插件「实时 TPS」到当前 desktop profile,完成后验证。不要修改插件源码,也不要改动与本任务无关的 profile 配置。
插件地址:https://github.com/1207627875/dsh-live-tps
1. 优先使用 plugin_manager 的 install_bundle,target 填上面的 GitHub 地址;如果该工具不可用,打开 DSH 左侧「插件」→「+ 添加插件」,填同一地址,点「安装」。
2. 安装完成后,在「已安装插件」里确认「实时 TPS」开关已打开;检查 desktop profile 的 package.json,dsh.profile.bundles 应包含 @local/dsh-live-tps。
3. 完全退出并重新打开 DSH Desktop(不是刷新页面)。
4. 打开任意会话验证:输入框下方出现 TPS 徽标;发一条短消息,生成中显示「实时 xx tok/s」,结束后显示「本轮平均 xx tok/s」;点开徽标能看到折线、首 token、输出 tokens、本轮用时;试一下「收起」和「收成图标」。
5. 报告:安装结果、dsh.profile.bundles 状态、是否已重启、实际看到的文字与交互;失败时附完整错误原文。
更多细节见 PROMPT.zh.md。
方式三:本地目录 / 源码
git clone https://github.com/1207627875/dsh-live-tps
然后在插件页「+ 添加插件」里填包含 package.json 的那个文件夹的绝对路径,而不是压缩包。
有 CLI 的部署也可以直接装进 profile:
dsh plugin --profile desktop add "D:\path\to\dsh-live-tps"
Desktop profile 由 Electron 管理,优先用方式一。
兼容性
- 实测环境:DSH Desktop
0.2.1-rc.5(Windows) - 依赖:无第三方运行时依赖;React / ReactDOM 由 DSH 提供
- 依赖的 client API:
dsh.client.inject中的@deepseek-ai/dsh-client-ui-conversation、@deepseek-ai/dsh-api-session-controller;挂载点为conversation.composer.dock - 本地模型与云端模型都走同一套会话流分片,不需要区分 provider
数据来源
- 订阅
ctx.sessions.binding(sessionId).eventSource assistant/live-chunk的text-delta/reasoning-delta/tool-call-delta用于实时估算assistant/message/usage分片提供最终outputTokensturn/start/turn/end负责重置与收尾
实时值按流式分片估算;结束后以模型返回的 usage 为准,两者可能相差几个 token。
目录结构
| 文件 | 作用 |
|---|---|
client.js |
全部能力:dock 注册、事件订阅、TPS 计算、面板 UI |
cordis.patch.yml |
插入 live-tps 行 |
index.js |
Host 侧空插件(bundle 需要一行 Host 条目) |
locale/zh.json / en.json |
插件页标题、描述和 UI 文案 |
icon.svg |
插件图标 |
docs/*.png |
暗色 / 亮色效果图 |
INSTALL.zh.md |
安装说明与排错 |
PROMPT.zh.md |
可直接复制的安装提示词 |
卸载
- 插件页「已安装插件 → 实时 TPS」关闭开关
- 从 desktop profile 的
package.json中移除dsh.profile.bundles里的@local/dsh-live-tps(依赖可留可删) - 重启 DSH
No comments yet. Be the first to write one.