🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

DSH 插件合集包 PlusQi/dsh-tokstats

DeepSeek Harnessv0.1.2
PlusQi6 天前有提交已提供中文文档扫描:含敏感能力

一次安装即得 token 预告、统计与提示词优化

29.4/100
综合分
0
GitHub 星标
246
npm 周下载
—/5
用户评分

数据截至 2026/11/1 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add dsh-plugins
npm 源 · dsh-plugins 的发布者账号已校验与本仓库一致

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么[目录]—
dsh 原生插件 · other
暂无时间戳·判据 →
装得上吗[实装验证]✓
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L4 · 真实安装等级说明 →
数据截至 2026/10/26·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/04·判据 →
还在维护吗[仓库]✓
活跃:最近一次提交在 6 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安装兼容性检查✓ 自动检查通过
展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包dsh-plugins @ 0.1.2
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/9/22 15:34:55

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

读写/删除本地文件
查看扫描证据(共 17 处,展示前 15 条)
  • 读取本地文件
    src/cli.js:92
    const text = await readFile(resolve(path), 'utf8')
  • 读取本地文件
    src/registry.js:9
    const registry = JSON.parse(await readFile(registryUrl, 'utf8'))
  • 写入本地文件
    src/source.js:38
    await mkdir(dirname(path), { recursive: true })
  • 写入本地文件
    src/source.js:41
    await writeFile(temporary, value, { flag: 'wx' })
  • 写入本地文件
    src/source.js:42
    await rename(temporary, path)
  • 删除本地文件
    src/source.js:44
    await rm(temporary, { force: true })
  • 写入本地文件
    src/source.js:49
    await mkdir(dirname(paths.registry), { recursive: true })
  • 写入本地文件
    src/source.js:53
    await writeFile(registryTemporary, body, { flag: 'wx' })
  • 写入本地文件
    src/source.js:54
    await writeFile(metadataTemporary, `${JSON.stringify(metadata, null, 2)}\n`, { flag: 'wx' })
  • 删除本地文件
    src/source.js:58
    await Promise.all([rm(registryTemporary, { force: true }), rm(metadataTemporary, { force: true })])
  • 读取本地文件
    src/source.js:66
    readFile(paths.registry, 'utf8'),
  • 读取本地文件
    src/source.js:67
    readFile(paths.metadata, 'utf8'),
  • 读取本地文件
    src/source.js:84
    const body = await readFile(bundledRegistryUrl, 'utf8')
  • 删除本地文件
    src/source.js:231
    await Promise.all([rm(paths.registry, { force: true }), rm(paths.metadata, { force: true })])
  • 删除本地文件
    src/source.js:233
    await rmdir(directory)
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • token预告
  • token统计
  • 提示词优化

README

由 DeepSeek 最新模型翻译生成
dsh-tokstats 可能有用的 DeepSeek Harness (DSH) token 用量插件 dsh-tokstats:告诉你 token 花在哪了,内含三个组件。 | 组件 | 有什么用 | 在哪看到 | | tokstats | 跨会话统计 token 都花在哪儿了:用量总览四项指标、上下文长度分布、近 12 周热力图与按周趋势,外加工作区与模型排行 | 侧栏「Token 用量统计」→ 全局面板 | | tokprev | 发送前告诉你这一轮大概要喂多少 token | 输入框底部一行灰色小字 | | promptopt | 把口语草稿整理成结构化提示词 | 输入框下方工具栏右端的星标按钮 | 装法见下文安装。 tokstats:谁偷走了我的 token tokstats 面板效果示意(示例数据) 看看 token 花了多少,谁花得多?侧栏「Token 用量统计」进入全局面板——顶部四张指标卡就是用量总览,中间是每日调用量与近 12 周热力图,下面是上下文长度分布、按周趋势、工作区与模型排行,最后一块是提示词整理的使用情况。 | 区块 | 它回答什么 | | 四张指标卡 | 所选区间用了多少?缓存省了多少?(跟档位走,切档即变) | | 每日调用量 | 这几天里哪一天用得凶?
展开完整文档(README 剩余 1 节)
dsh-tokstats

可能有用的 DeepSeek Harness (DSH) token 用量插件 dsh-tokstats:告诉你 token 花在哪了,内含三个组件。

| 组件 | 有什么用 | 在哪看到 |
| tokstats | 跨会话统计 token 都花在哪儿了:用量总览四项指标、上下文长度分布、近 12 周热力图与按周趋势,外加工作区与模型排行 | 侧栏「Token 用量统计」→ 全局面板 |
| tokprev | 发送前告诉你这一轮大概要喂多少 token | 输入框底部一行灰色小字 |
| promptopt | 把口语草稿整理成结构化提示词 | 输入框下方工具栏右端的星标按钮 |

装法见下文安装。

tokstats:谁偷走了我的 token

tokstats 面板效果示意(示例数据)

看看 token 花了多少,谁花得多?侧栏「Token 用量统计」进入全局面板——顶部四张指标卡就是用量总览,中间是每日调用量与近 12 周热力图,下面是上下文长度分布、按周趋势、工作区与模型排行,最后一块是提示词整理的使用情况。

| 区块 | 它回答什么 |
| 四张指标卡 | 所选区间用了多少?缓存省了多少?(跟档位走,切档即变) |
| 每日调用量 | 这几天里哪一天用得凶?窗口跟档位走(最短 7 天;卡头写着实际跨度),超 30 列按整日合并;与热力图并排,日期刻度对齐每根柱 |
| 近 12 周用量 | 哪些天在用、哪些天断档?点某天只看那一天 |
| 上下文长度分布 | 请求有多长?长请求占多大比例?按计费输入分 6 桶:0,8K) / [8K,32K) / [32K,128K) / [128K,256K) / [256K,512K) / [512K,∞) |
| 趋势(按周) | 这周比上周多还是少?每周一条比例条,本周标「进行中」并置灰(还没过完);周合计恒等于总计 |
| 模型排行 | 用量集中在哪个模型?按 provider/model 组合计,拿不到路由的归「未标注」排最后,各行之和等于总计 |
| 工作区排行 | 用量集中在哪个项目?可下拉切到单个工作区,子会话归并到根工作区 |
| 提示词整理使用情况 | promptopt 真被用上了吗?发起 / 采纳 / 放弃计数与采纳率 |

时间窗五档:当日 / 近 7 天 / 本月 / 近 30 天 / 全部,默认当日——档位决定四张指标卡与分布 / 排行 / 周趋势的口径,切换即重算。热力图恒为近 12 周、不跟档位走;日柱图的窗口跟档位走、但最短 7 天(当日档也画 7 根柱,超 30 列按整日合并),卡头写着实际跨度。

tokprev:发送前,先算这一轮要花多少

tokprev 效果示意

官方 ContextMeter 已经给了上下文长度,它没说的是你正在输入框里敲的这段草稿还要额外花掉多少。tokprev 会补上这个。

下一轮输入 ≈ 20K · 草稿 17 · 输出预估 -

- 下一轮输入 = 当前上下文 + 草稿估算,边打字边跳;
- 草稿 = 本地按字符数估的,不发请求;
- 输出预估 = 最近几轮真实输出的区间。只统计已结束的轮次,所以新会话或当前轮还没跑完时显示 -(上图就是),跑完一轮就变成 1.5K–3K 这样的区间;
- 会话正在跑时整行隐藏;没有真实请求锚点时数字前带 *,表示纯估算。

promptopt:把口语草稿优化成结构化提示词

promptopt 弹层示意

把「那个登录报错你帮我看看 别动其他文件」这种草稿,保真重排成模型更容易解析的结构化输入。不扩写成执行计划,也不补原文没有的事实、路径、约束、步骤。

- 怎么用:点星标按钮 → 弹层里原文与整理结果上下对照 → 满意才点采纳,只有采纳才写回输入框;
- 按钮置灰(悬浮有原因):草稿为空,或含引用 chip、图片附件、/ 命令——写回是全量替换,重排会破坏引用坐标与图片归属;
- 采纳 以点击那一刻的草稿快照为准,会覆盖等待期间的编辑,没有二次确认;
- 走宿主已有的模型路由,没有配置项,不新建 API key;
- 关闭、Esc、点弹层外都算取消,会中止这次调用。

安装

前置:Node.js、git、pnpm。

npm i -g pnpm
npx @deepseek-ai/dsh plugin --profile web add github:PlusQi/dsh-tokstats#v0.9.0

装完必须重启宿主进程(profile 组合只在启动时生效),再刷新页面。没有配置文件、没有 API key、没有构建步骤。

- 上面这条带 #v0.9.0,装的是一个固定快照,推荐这种方式;
- 想跟最新:去掉 #v0.9.0,即 add github:PlusQi/dsh-tokstats——这条装的是默认分支(master)的最新代码,不是「最新正式版」。git 地址没有 npm 那种 latest 概念,任何不带 #ref 的写法都指向分支 HEAD。市场目录里的安装按钮用的就是这种裸地址,所以从商店装也一样是跟主线;
- 本机开发:add link:D:\path\to\dsh-tokstats,改完代码重启即生效;
- profile 不叫 web 就换成你自己的。桌面版(Electron)不能用 CLI 装——desktop profile 由应用独占,CLI 会拒绝;请在应用内的「设置 → 插件」里装。

装完看这三处

1. 侧栏多了一项 「Token 用量统计」,点进去有四张指标卡;
2. 输入框底部多了一行灰色小字,打几个字,「草稿」那个数会跟着变;
3. 输入框下方那排工具栏的右端多了一个星标按钮(模型选择与发送按钮之间),打了草稿后可用。

三处全没有?看 [出问题了。

中文 / English

界面文案跟随 DSH 的 设置 → 常规 → Language,插件本身没有语言开关。promptopt 是例外:整理结果跟随草稿的语言,不跟界面语言。

出问题了

插件 UI 整个不见,按顺序排这几条:

1. 宿主版本对不上。 本包钉死了实测过的宿主版本,不匹配时宿主会安静地跳过整个包(连日志都不打),表现就是「插件坏了」。跑 dsh plugin --profile web list,出现 is incompatible with dsh … 就是它;
2. 没重启宿主进程,只刷新了浏览器;
3. 装到了别的 profile,或换了 DSH_HOME;
4. locale 服务被禁用了,界面文案依赖它,缺席时整包不加载。

其它常见现象:

- 面板一直「统计中…」:首次要扫一遍历史日志,几秒到十几秒正常;
- 数字比你以为的少:先看页脚有没有「跳过 M 个(日志不可读)」,再确认当前是哪个时间档;
- 面板显示「校验中…」:后台还在核校,屏上是缓存值,几秒后自动变准;
- promptopt 报「模型调用失败」:宿主没有可用模型路由,检查模型配置。

还有一处不是故障:市场卡片上那个「宿主要求未知」标签。本包只从 GitHub 分发、没有发布到 npm,而市场只对 registry 上的包读 engines.dsh——所以它拿不到本包的宿主要求,标签就停在「未知」。插件照常安装、照常运行;真正判断是否兼容的方式见上一条(dsh plugin --profile web list)。

更新与卸载

更新
npx @deepseek-ai/dsh plugin --profile web update dsh-tokstats

卸载整个包
npx @deepseek-ai/dsh plugin --profile web remove dsh-tokstats

想临时关掉其中一个组件,在 $DSH_HOME/profiles/<profile>/cordis.patch.yml 里加:

- id: tokprev
disabled: true

重启生效。注意关 tokprev 不会让它从页面上消失——只要包里还有别的行活着,浏览器侧整包就仍在加载;要真正按组件独立开关,只能把这个组件拆成独立的包(见 docs/MAINTAINING.md)。

维护

维护者与 AI Agent 从 AGENTS.md 进入;发布流程与宿主侧契约在 docs/MAINTAINING.md,不变量证据在 docs/INVARIANTS.md,变更记录在 CHANGELOG.md。

License

MIT
预览分享卡片长什么样 ↓PlusQi/dsh-tokstats
分享 · DeepSeek Harness Hub
PlusQi/dsh-tokstats

一次安装即得 token 预告、统计与提示词优化

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部