deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
全局 Token 用量统计插件(DeepSeek Harness / DSH Web)。
从每一次 llm/stream 调用采集真实 usage(非估算),构建跨重启持久的 JSONL 账本,按供应商 / 模型 / 会话 / 日期聚合,提供估算费用(OpenRouter 实时价格)、缓存命中率、成功率、首字延迟等指标,并通过可拖动的悬浮按钮、居中大屏弹窗和模型工具 token_stats 展示。
1. 设置页 · 全局统计

2. 右下角悬浮球 —— 实时展示 token 统计,支持「全局 / 当前会话」切换,可拖动




3. 展开明细 —— 大屏弹窗;右上角可手动从 OpenRouter 拉取最新模型价格并重算全部历史费用


llm/stream,记录每次成功调用的输入 / 输出 / 缓存读 / 缓存写 / 推理 tokens,失败与取消调用单独计数(成功率口径)<profile>/data/token-stats/daily.jsonl),启动 / 热重载时从账本重建全部维度,数字只增不减DSH_TOKEN_STATS_PRICES 环境变量可覆盖单价)[role=treeitem][aria-selected=true])+ host 会话目录标题匹配,自动跟随 UI 切换(执行中/暂停会话均可),失败时回退到最近活跃会话token_stats(支持可选 sessionId 参数),模型可直接查询统计backfill-history.mjs 可从 ~/.dsh/sessions 的多帧 zstd 会话文件回扫插件安装前的调用(幂等,自动去重)方式一:官方 CLI(推荐)——从 GitHub 或 npm 安装:
dsh plugin --profile web add github:<owner>/dsh-token-stats
# 或
dsh plugin --profile web add dsh-token-stats
包内 cordis.patch.yml(dsh.bundle.patch 声明)会让 CLI 自动把 loader 行插入 profile,重启 Web GUI 生效。
方式二:手动放置——将包放入 profile 的 packages/ 目录(如 C:\Users\<you>\.dsh\profiles\web\packages\dsh-token-stats),并在 cordis.yml 的 loader 列表加入:
- id: token-stats
name: dsh-token-stats
重启 Harness 即可。开发期也可用 dsh-super-injector 热注入(免重启)。
该包为纯 JavaScript,无
prepare构建脚本,github:安装无需allowedBuilds配置。
token_stats({"sessionId": "..."} 可选)| 环境变量 | 说明 |
|---|---|
DSH_TOKEN_STATS_DIR |
账本目录覆盖(默认 <profile>/data/token-stats/) |
DSH_TOKEN_STATS_PRICES |
价格覆盖 JSON:{"<model>": {"input":0.27,"cacheRead":0.07,"cacheWrite":0.27,"output":1.1}}(USD/1M tokens) |
价格表默认值来自 OpenRouter 公开模型列表(查询日期见 lib/index.js 注释),可通过面板按钮或环境变量校正。
| 端点 | 说明 |
|---|---|
GET /token-stats/api/query |
统计快照(?sessionId= 查单会话) |
GET /token-stats/api/sessions |
会话目录(id + 标题),供前端跟随 UI 会话 |
POST /token-stats/api/refresh-prices |
从 OpenRouter 拉取最新价格并重算账本费用 |
所有端点校验 Origin(仅本机)、HEAD 不返回 body。
插件安装前的调用不会自动出现。可用回扫脚本从历史会话文件补录:
node backfill-history.mjs # 正式导入(幂等)
node backfill-history.mjs --dry-run # 预览
node backfill-history.mjs --force # 强制重跑
仅补录「成功且带 usage」的调用;耗时 / 首字延迟无法回补;费用按当前价格表重算。导入前自动备份账本。
totals 为完整账本MIT
dsh-plugin topic(GitHub → repo → About → Topics),即可被 dsh-plugin 生态 与社区插件市场(如 dsh-plugin-market)搜索发现npm publish --access publicnpm pack 后把 dsh-token-stats-<version>.tgz 附到 GitHub ReleaseCLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。