dsh-codex-usage-meter:DSH 下的 Codex 风格 Token 用量与峰谷计费统计

前言

在 DeepSeek Harness(DSH)里跑长任务时,Provider 会上报 Token,但界面里往往看不到「这一通会话花了多少钱、缓存命中和未命中各多少」。自己翻日志或手算 DeepSeek 峰时、谷时单价既费时,也容易和账单口径不一致。

下面介绍社区客户端插件 dsh-codex-usage-meter(维护者 SimpsonJiang):从 Host 半折叠已有 Session 日志做统计,按 DeepSeek 峰谷价计费,不产生模型请求、不联网;界面参考 OpenAI Codex 官方用量统计布局,并针对 DSH 与 DeepSeek 计价做了适配(与 OpenAI / Codex 无隶属关系,也不包含其代码)。

这是什么

  • 定位:Codex-style 的 Token 用量与费用计量插件,提供当前 Session 底部状态栏和用量统计页。
  • 包名 / 插件 id:@local/dsh-usage-meter(dsh-usage-meter);当前仓库版本 1.5.1,许可证 MIT。
  • 分类:客户端(client.js 负责状态栏、侧栏入口与统计页;index.js 负责 Host 侧计费与接口)。
  • 目录与源码:SkillHub 插件页、GitHub 仓库。

核心功能

底部状态栏(shell.bottom)

只展示当前打开的 Session 的费用拆分:

总花费 | 输入(缓存命中) | 输入(缓存未命中) | 输出,并带实时峰时 / 谷时标识。

未打开会话或停留在其他面板时整条状态栏隐藏;点击状态栏可进入用量统计页。状态栏数据可通过 GET /dsh-usage-meter/summary,可选 ?session=<id> 附带该会话汇总。

用量统计页

左侧栏一级入口 + 中间整页,打开时加载一次,提供手动「刷新」,不做轮询。数据来自 GET /dsh-usage-meter/stats。

主要内容包括:

  1. 6 张 KPI 卡:累计 Token、累计费用、Token 使用峰值、最长任务用时、最长连续天数、当前连续天数。
  2. Token 活动图(近 53 周):可切换每天 / 每周 / 累计总量,以及 Token / 费用 两种指标;悬停为 Codex 风格的深色气泡。
    - 每天:热力图,按用量渐变蓝色。
    - 每周 / 累计总量:以热力格绘制的柱状图,整列可悬停;无用量周会显示对应提示文案。
  3. 按模型拆分、历史回填状态与统计起点注脚。

计费与数据来源

计费与统计均基于 Host 半折叠 Session 日志里已提交的 assistant/message、assistant/attempt 结算,以及 turn/start → turn/end 边界,不发起模型调用。

默认价目来自 DeepSeek 官方列表价(元 / 百万 token,README 注明价格页更新于 2026-09-10),覆盖 deepseek-flash、deepseek-v4-pro 的缓存命中 / 未命中 / 输出,峰谷各一档;谷时价为峰时的一半。峰时窗口默认为北京时间 09:00–12:00、14:00–18:00;默认 peakDays: daily(与 README 中 2026-11-08 账单校准说明一致,亦可改为 weekdays 并按 holidays 指定全天谷时)。金额以元计,保留两位小数(末位舍去);持久化与接口返回值口径一致。

持久化路径:<profile>/plugin-data/dsh-usage-meter/usage.json。计价签名 pricingSignature 变化时会用会话日志重算全部历史,避免新旧价目混算。

安装与启用

README 给出的方式是:通过 Harness 插件管理器安装本插件目录——将 install_bundle 指向该目录的绝对路径,以链接方式装入当前 profile 并启用 bundle 的补丁行。Host 变更由 profile 重组(HMR)替换;浏览器半随客户端模块 HMR 重载,必要时刷新页面。

安装前建议自行查看 仓库源码 与 MIT 许可证;插件以当前 DSH 进程权限运行,仅安装你信任的代码。

默认零配置即可用;需覆盖价目、峰谷日历、轮询等时,在 profile 的 patch 层配置插件行,例如:

- id: dsh-usage-meter
  config:
    models:
      deepseek-flash:
        peak: { cacheHit: 0.04, cacheMiss: 2, output: 8 }
      deepseek-v4-pro:
        peak: { cacheHit: 0.3, cacheMiss: 9, output: 27 }
        off: { cacheHit: 0.15, cacheMiss: 4.5, output: 13.5 }
    aliases:
      deepseek-v4-flash: deepseek-flash
    fallbackModel: deepseek-flash
    peakDays: daily
    peakWindows: ['09:00-12:00', '14:00-18:00']
    holidays: ['2026-10-01', '2026-10-02']
    retainDays: 400
    pollMs: 5000
    flushMs: 2000
    backfill: true

典型用法

  1. 安装并启用后,打开任意 Session,底部应出现当前会话费用拆分;若无 Session 或非会话面板,状态栏不显示。
  2. 点击状态栏,或从侧栏进入「用量统计」,查看 KPI、活动图与按模型汇总;需要最新聚合时点「刷新」。
  3. 若账单与默认峰谷日历不一致,在 patch 中调整 peakDays、peakWindows、holidays 或 models;保存后插件会按新口径重算历史(见 README「价格与峰谷规则」)。
  4. 首次安装会历史回填已落盘会话;升级版本会按文档说明补齐窗口并对账。回填在后台进行,超时可能标记 partial,注脚会说明状态。

会话维度只统计该 Session 自身结算,fork / 子代理继承的历史不计入子会话。

适用场景与注意

适合:长期在 DSH 内开发、需要会话级费用透明度和 Codex 式全局用量视图,且希望按 DeepSeek 峰谷价本地估算成本的开发者。

注意:

  • 未知模型名会回退 deepseek-flash 并标记「估算」;旧模型名可通过 aliases 映射。
  • 统计页日序列至少保留 371 天(retainDays 下限),以支撑热力图。
  • 问题与功能请求可到 GitHub Issues 反馈。

结尾

dsh-codex-usage-meter 在 DSH 插件体系里补上了「看得见」的 Token 与费用:当前 Session 状态栏 + Codex 风格统计页,计价对齐 DeepSeek 峰谷规则且完全离线聚合日志。进一步了解可从 SkillHub 目录页 进入,或直接阅读 GitHub 仓库 README。

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

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

小夜