搓了一个 dsh 插件,用于统计会话的 Token 费用消耗明细
## dsh 插件:Token 计费明细
大家好,最近在使用 dsh 感觉挺好玩的,我发现一个比较实际的问题:
- 这次请求大概花了多少钱?
- 当前会话累计费用是多少?
- 哪些 Token 命中了缓存?
- 不同模型、不同阶段的费用如何比较?
- 重启 dsh 之后,历史费用还能不能保留?
所以我做了一个本地插件:dsh-cost-meter。
项目地址:
[https://github.com/uruana33/dsh-cost-meter](https://github.com/uruana33/dsh-cost-meter)
npm:
[https://www.npmjs.com/package/@mymeter/dsh-cost-meter](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,也欢迎直接在下面交流。
---
原文链接:[点击查看](https://www.v2ex.com/t/1235708)
大家好,最近在使用 dsh 感觉挺好玩的,我发现一个比较实际的问题:
- 这次请求大概花了多少钱?
- 当前会话累计费用是多少?
- 哪些 Token 命中了缓存?
- 不同模型、不同阶段的费用如何比较?
- 重启 dsh 之后,历史费用还能不能保留?
所以我做了一个本地插件:dsh-cost-meter。
项目地址:
[https://github.com/uruana33/dsh-cost-meter](https://github.com/uruana33/dsh-cost-meter)
npm:
[https://www.npmjs.com/package/@mymeter/dsh-cost-meter](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,也欢迎直接在下面交流。
---
原文链接:[点击查看](https://www.v2ex.com/t/1235708)
评论
暂无评论。