搓了一个 dsh 插件,用于统计会话的 Token 费用消耗明细

dsh 插件:Token 计费明细 大家好,最近在使用 dsh 感觉挺好玩的,我发现一个比较实际的问题: 模型请求越来越多,但很难在当前会话里快速知道:

这次请求大概花了多少钱? 当前会话累计费用是多少? 哪些 Token 命中了缓存? 不同模型、不同阶段的费用如何比较? 重启 dsh 之后,历史费用还能不能保留?

所以我做了一个本地插件:dsh-cost-meter 。 项目地址: https://github.com/uruana33/dsh-cost-meter npm: https://www.npmjs.com/package/@mymeter/dsh-cost-meter 它能做什么 安装后,会在 dsh Web profile 中提供一个 Token 计费浮窗和独立的 Token 计费页面。 主要功能包括:

请求生成过程中实时显示 Token 和费用估算 最终收到 provider usage 后,用实际 usage 校正估算值 区分输入 Token (无缓存)、输入 Token (缓存)和输出 Token 按会话、阶段、轮次查看费用明细 记录本地费用账本,重启后可以恢复历史聚合结果 展示预算进度、缓存命中节省和 DeepSeek 峰谷计费倒计时 支持费用趋势、异常分析以及 CSV / JSON 安全导出 Host / Client 分离,API Key 和账本只在 Host 侧处理

目前价格目录已经覆盖 DeepSeek 、xAI 、OpenAI 、Anthropic 、Google Gemini 、Moonshot/Kimi 、MiniMax 、Mistral 、Groq 、Together 、Fireworks 和 Cerebras 等 provider 。 安装 需要 Node.js 22.19+,并且已经配置好 dsh Web profile 。 直接从 npm 安装: dsh plugin --profile web add @mymeter/dsh-cost-meter 安装后重启或重新加载对应的 dsh Web profile ,打开一个会话即可看到浮动小票。 隐私边界 这是一个本地插件:

API Key 只在 Host 侧使用 不会进入浏览器 Client bundle 不会写入浏览器 localStorage 导出功能只包含安全字段,不包含 prompt 、completion 、工具正文或 API Key 默认不会自动联网更新价格目录

目前余额适配只接入了 DeepSeek ,其他 provider 暂时不会显示余额。 当前状态 现在发布的是 0.1.0 早期版本,项目已经开源到 GitHub ,npm 包也已经发布。 还存在一些已知限制:

尚未用真实 DeepSeek 账户完成完整的生产 usage 和金额对账 多进程不能同时写入同一个账本文件 部分 gateway 、代理和订阅 route 只能按可识别的底层模型做等价估算 远程价格更新能力目前还没有接入生产插件

效果图

欢迎反馈 如果你也在使用 dsh ,或者有类似的本地 LLM 成本统计需求,欢迎反馈:

还需要支持哪些 provider 或 route alias ? 你更关心会话费用、预算提醒,还是长期趋势? 本地账本和导出格式是否符合你的使用习惯? 哪些地方需要改进交互或展示?

欢迎提 issue 或 PR ,也欢迎直接在下面交流。