dsh-cost-meter:在 DSH 界面里看本会话 token 与人民币费用

前言

在 DeepSeek Harness(DSH)里写长对话、多轮工具调用时,界面通常只给出上下文用量环,很难直观对应「这一会话大概花了多少钱」。若你按 DeepSeek 开放平台价目做成本估算,还要自己查文档、区分高峰/空闲时段和缓存命中类型。下面介绍社区客户端插件 dsh-cost-meter(npm 包名 @max/dsh-cost-meter,维护者 PennChong95):在 Web 界面输入框下方、上下文用量右侧显示本会话的 token 明细与按官方价目折算的人民币费用。

这是什么

dsh-cost-meter 是 DSH 的客户端插件:Host 侧 index.js 为空,逻辑在浏览器直接加载的 client.js 中,零依赖、零构建。它读取会话投影 tokenUsage 与 modelSelection,注册到 conversation.composer.dock,不改动服务端计费,显示结果为估算(不含子会话、其他会话及非 token 计费项;实际扣费以 DeepSeek 开放平台账单为准)。

核心功能

界面表现

装好后刷新页面,输入框下方、上下文用量环右侧会出现 ¥ 胶囊(例如 ¥0.1234),表示本会话按 DeepSeek 官方价目折算的花费。点击展开明细面板(不超出视口),通常包括:

  • 输入·缓存命中 / 输入·缓存未命中 / 输入·缓存写入 / 输出的 token 数与各自金额;
  • 总 tokens;
  • 高峰 / 空闲时段分别累计的金额(默认 mode: ledger);
  • 计价模型、当前时段、当前费率(元/百万 tokens)。

模型不在价目表中时,可能显示 —(见下文配置 unknownModel)。

定价口径

价目取自 DeepSeek 官方「模型 & 价格」页(人民币 / 百万 tokens),插件内置表包括 deepseek-flash 与 deepseek-v4-pro 的高峰、空闲四档输入/输出单价。时段规则与官方说明一致:北京时间周一至周五(不含中国法定节假日)9:00–12:00、14:00–18:00 为高峰;其余为空闲(价格为高峰的一半),含周末、法定节假日及官方口径下的调休连休等。

2026 年节假日按国务院办公厅通知(国办发明电〔2025〕7 号)内置;未覆盖年份可在配置里用 extraHolidays 补全。cacheWrite 按缓存未命中价计;已下线模型 id 按 Flash 或 Pro 价映射。

两种计价模式

  • ledger(默认):每次观察到的用量增量按当时费率记入浏览器 localStorage,跨时段、跨模型累计,seen 只增不减,避免重复计费。
  • estimate:用当前时段单价直接乘以会话总量,实现简单,跨时段误差更大。

安装与启用

先拿到包含 cordis.patch.yml 的完整包(.tgz、本地目录或 git 仓库),再让 DSH 装进当前 profile。

方式一:压缩包或本地目录

dsh plugin add "D:\下载\max-dsh-cost-meter-<版本>.tgz"
dsh plugin add "D:\下载\dsh-cost-meter"

方式二:git

dsh plugin add "github:PennChong95/dsh-cost-meter"

仓库需包含已提交的 client.js 产物;git 安装会拉整仓,package.json 的 files 白名单不生效,勿提交 node_modules。国内若 GitHub 探活失败,界面可能提示「无法访问 GitHub」,此时 .tgz 或本地目录更稳。

Desktop 用户:desktop profile 由应用独占,请在侧边栏 插件 → 添加插件,将上述 spec 粘贴后 安装;装完默认启用。

安装后请刷新一次页面,否则可能仍加载旧模块。DSH 插件目前不支持自动更新,升级需先卸载再装新版。

环境要求:资料记载在 DSH 0.2.0-rc.2(Desktop)上验证通过,依赖 conversation.composer.dock 插槽及 tokenUsage、modelSelection 投影;更早版本可能加载失败,插件列表会给出原因。

配置

在 cordis.patch.yml 的插件 config 中可调整行为,例如:

- insert:
    - id: cost-meter
      name: '@max/dsh-cost-meter'
      config:
        tier: auto                 # auto | peak | offPeak
        mode: ledger               # ledger | estimate
        defaultModel: deepseek-flash
        unknownModel: unpriced     # unpriced | defaultModel
        extraHolidays: []          # YYYY-MM-DD
        extraWorkdays: []          # YYYY-MM-DD,覆盖内置节假日
        rates:                     # 可选,按模型合并覆盖官方价
          deepseek-flash:
            peak: { output: 8 }
字段 默认值 含义
tier auto 自动按北京时间判高峰/空闲,或固定 peak / offPeak。
mode ledger 见上文 ledger / estimate。
defaultModel deepseek-flash 尚无 modelSelection 时使用的模型。
unknownModel unpriced 未知模型:unpriced 显示 —;defaultModel 按默认模型估算。
extraHolidays / extraWorkdays [] 补节假日或强制按工作日规则(workdays 优先于 holidays)。
rates 无 覆盖官方价目。

典型用法与注意

  1. 安装并刷新后,在当前会话 composer 下方观察 ¥ 胶囊与明细,对照 token 环确认是否只统计当前会话。
  2. 若跨年且内置节假日表未更新,面板可能提示「该年节假日安排尚未内置」,在 extraHolidays 中临时补日期,或等待插件更新。
  3. 首次进入已有历史的会话时,插件会把当时已有的全部用量按当下费率一次性计入(tokenUsage 无逐请求时间戳),跨 09:00、18:00 或节假日边界安装前的会话,首次数字可能偏高或偏低;之后增量按发生时刻计价。
  4. 清理浏览器数据会清空 localStorage 账本(键前缀 max-dsh-cost-meter:v2:),累计金额从零重新起算。

开发者本地改源码后,profile 内是 file: 副本,需先删再加依赖并刷新页面;发布语义版本需提高 package.json 的 version。测试命令:

node --test test/pricing.test.mjs

适用场景与权限说明

适合在 DSH Web/Desktop 里做日常对话、智能体调试、需要会话级成本感知的使用者。不适合替代开放平台账单对账,也不统计子代理或其他并行会话。

插件以当前 DSH 进程 / 浏览器上下文运行,仅读取已有会话投影并在 localStorage 写账本;安装前建议自行查看仓库源码与 MIT 许可证,确认符合你的安全与合规要求。社区目录 SkillHub 与 DeepSeek / 幻方无官方从属关系,属 DSH「一切皆插件」生态中的第三方扩展。

链接

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

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

Xiaoye