DSH HUB
HomePlugin StoreRankingsPublish Guide
Plugin source
Back to catalog

Han-1413141 /

dsh-cost-meter

Verified

DeepSeek Harness 会话费用统计与opencode go额度显示,类codex token热力图插件:本会话费用、当日费用、预算费用显示、历史记录与官方价格同步

★ 51 Stars3 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: master@889303bc

dsh-cost-meter

DeepSeek Harness 会话费用统计插件(界面中英双语)

本会话费用 · 当日费用 · OpenCode Go 订阅额度显示 · 预算与已用百分比 · 官方账户余额 · 历史记录 · 峰谷计价 · 官方价格一键同步 · 类 Codex Token 用量热图

version license dsh awesome · DSH plugin WhaleHarness audit

English | 中文


宣传图

功能总览

功能 位置 说明
本会话费用 输入区下方 / 会话标题栏 实时累计费用 + 输入/缓存/输出 token,位置可配
官方余额 侧边栏顶部 / 设置页(可配) 总余额 / 赠送 / 充值,自动刷新 + 手动刷新
OpenCode Go 额度 侧边栏 / 设置页 / 右下角(dock,可配) 滚动 5 小时 / 本周 / 本月用量百分比与重置时间,三档可分别开关,可同时显示预算已用%;Key 自动发现(DSH 凭据库 OPENCODE_GO_API_KEY / 环境变量 / opencode 登录态)或手动填写
当日费用 侧边栏底部(设置按钮上方) 「今日 ¥x」,悬停见调用次数与 token 明细
预算图框 侧边栏底部(余额行与设置按钮之间) 圆角方形图框:预算、已用%、进度条、今日费用与占预算%、已用/额度,≥80% 预警、≥100% 超支
汇总卡片 设置页 今日 / 本月 / 累计费用与调用次数
Token 用量统计 设置页(费用设置) 历史累计 token 总量(输入/缓存/输出/调用)+ 类 Codex 的 26 周每日用量方格热图,横向铺满设置页宽度,悬停见当日明细
今日会话明细 设置页 每个会话的调用次数、输入/缓存/输出 token 与费用
历史记录 设置页 按天汇总,保留天数可配(默认 180 天)
预算设置 设置页顶部 额度、周期(今日/本月/累计/自定义日期区间)、已用%
价格表 设置页 每模型 基础/谷时/峰时 三档价格,增删改自由
峰谷计价 设置页 DeepSeek 官方峰谷方案,带生效时间门控与当前档位状态
官方价格同步 设置页 抓取解析官方定价页,一键应用
界面语言 设置页 → 显示设置 简体中文 / English / 跟随浏览器(自动);切换即时生效并自动保存
AI 价格同步 提示词 交给任意 AI 自主同步多模型、分时价格

双语界面

插件界面(会话徽章、侧边栏余额与预算图框、设置页全部文案)支持简体中文与English:

  • 语言可选 简体中文 / English / 跟随浏览器(自动);
  • 默认「跟随浏览器」:自动探测浏览器语言(zh* → 中文,其余 → 英文),并把探测结果写回配置,服务端消息(余额查询、价格同步等)与界面语言保持一致;
  • 在 设置 → 费用 → 显示设置 → 界面语言 中切换,切换后整个插件界面即时生效并自动保存;设置页左侧的分节标签也随之切换(费用 / Cost);
  • 服务端返回的提示(余额刷新、官方价格同步、配置校验错误等)同样按当前语言输出。

图文演示

截图均取自真实 DeepSeek Harness 实例,默认以中文界面展示;插件界面本身中英双语,可在设置中切换为 English。

主页面

侧边栏底部(自上而下:官方余额 → 额度 / 预算图框 → 设置按钮):

侧边栏底部

  • 余额行显示官方开放平台总余额,悬停可见赠送/充值拆分;
  • 未启用预算时,该位置显示「今日 ¥x」徽章。

额度 / 预算图框三态(OpenCode Go 额度与预算各自独立开关,同款圆角图框;两者同时开启时自动合并为一张卡片,Go 在上、预算在下,细分隔线、各自保留预警色;「图框详细信息」开关可收起次要行,只保留 标签 + 已用% + 进度条):

仅 OpenCode Go 额度 仅预算 两者合并
仅 Go 额度 仅预算 合并卡片
  • 预算图框显示「预算 · 已用% · 进度条 · 今日费用与占预算% · 已用/额度」,≥80% 预警、≥100% 超支;窄栏(rail)模式收窄为百分比方块;
  • Go 图框按主档位(默认滚动 5 小时,可在显示设置切换周/月)显示已用% 与进度条,下方一行展示其余两档与重置时间:

窄栏 rail

右下角(dock)额度 / 预算 chips(显示设置中开启,四项独立开关:5h / 周 / 月额度 + 预算已用%):

右下角 chips

本会话费用(两个位置,可在设置中切换):

输入区下方 会话标题栏
会话 dock 会话标题栏

上图:本会话 ¥5.5939 · 输入 321K · 缓存 119M · 输出 235K;右图:标题栏徽章「费用 ¥6.1606」(真实会话截图)

会话页

设置 → 费用

概览(OpenCode Go 额度 → 预算 → 余额 → 汇总卡片 → 今日会话 → 历史记录 → 显示设置 → 价格表 → 数据与同步):

设置页

OpenCode Go 额度面板(设置页最顶部:三档进度条,主档位高亮,手动刷新;未订阅时为中性提示,可一键关闭):

Go 额度面板

预算面板(含自定义日期区间):

预算

余额面板(总余额/赠送/充值 + 手动刷新):

余额

显示设置(Go 主档位与 Key、右下角 chips、图框详细信息等):

显示设置

汇总卡片:

卡片

Token 用量统计(历史累计总量 + 类 Codex 的 26 周方格热图,横向铺满设置页宽度;无用量日为半透明玻璃格):

Token 用量统计

今日会话 / 历史记录(输入、缓存、输出 token 分列):

今日会话 历史记录

价格表(基础/谷时/峰时三档,美元 / 1M tokens):

价格表

数据与同步(配置即时自动保存 + 官方价格同步 + 清除历史):

同步

安装

需求:Node.js ≥ 20 + DeepSeek Harness(带 dsh plugin 命令的版本,npm install -g @deepseek-ai/dsh)。

一键安装(推荐)

PowerShell 一键脚本(复制整行粘贴回车;自动补齐 pnpm、自动探测 git,无需克隆仓库;安装链固定到发布 tag v1.3.1,建议先下载审阅再运行):

irm https://raw.githubusercontent.com/Han-1413141/dsh-cost-meter/v1.3.1/install.ps1 | iex

或直接命令行(机器上需已有 pnpm 与 git;同样固定到 tag):

dsh plugin --profile web add github:Han-1413141/dsh-cost-meter#v1.3.1

没有 git 时可用 GitHub tag 打包直链:

dsh plugin --profile web add https://github.com/Han-1413141/dsh-cost-meter/archive/refs/tags/v1.3.1.tar.gz

安装后重启 dsh web(插件行、Typert 清单与客户端 bundle 均在启动时扫描):

dsh web

更新 / 卸载

# 更新:发布新版后用新版 install.ps1 重跑(脚本内固定版本随之更新)
dsh plugin --profile web remove dsh-cost-meter  # 卸载

开发者本地调试

git clone https://github.com/Han-1413141/dsh-cost-meter.git
cd <克隆目录的父目录>
dsh plugin --profile web add link:./dsh-cost-meter  # 符号链接,改 lib/client.js 后刷新页面即生效

计费规则

计费规则与峰谷计价

  • 价格单位与官方文档一致:美元 / 1M tokens;
  • 成本 = 未命中输入 × cache-miss + 输出 × output + (缓存读 + 缓存写) × cache-hit(缓存写沿用官方历史规则按命中价计费);
  • 峰谷计价按时点门控:peakEffectiveAt(默认 2026-08-16 16:00 UTC)之前一律按基础价格;之后峰时段(01:00–04:00、06:00–10:00 UTC)按峰时价、其余按谷时价;设置页实时显示当前档位(未生效/峰时段/谷时段);
  • 账本金额恒以美元存储,币种/汇率仅影响显示(默认 1 USD = 7.2 CNY,可改);
  • 会话徽章按当前档位估算,当日/月度/累计与预算为按调用实际时刻精确计费;
  • 计费来源为每次模型调用的 usage 块(含子代理、压缩、标题等辅助调用),与账单口径一致;
  • 预算与超支提示仅提醒,不阻止调用。

数据存储

  • 账本:$DSH_HOME/storages/cost-meter/ledger.json(原子写入 + 2 秒防抖;按 historyDays 保留,每日最多 200 个会话明细);
  • 所有设置修改即时自动保存(600ms 防抖),无需手动保存;
  • 删除账本文件即可清零,或使用设置页「清除全部历史」。

架构

架构与数据流

dsh-cost-meter
├── cordis.patch.yml        # bundle 补丁:向 web profile 插入 cost-meter 行
├── install.ps1             # 一键安装/更新脚本(irm … | iex)
├── .github/workflows/      # CI:install-smoke 一键安装冒烟验证
├── package.json            # dsh.bundle 补丁声明 + dsh.client 浏览器声明
└── lib/
    ├── index.js            # 宿主插件:llm/stream 计费包裹、costUsage 会话投影、
    │                       #   costMeter 服务(手写 typertRemote 绑定)、余额查询
    ├── pricing.js          # 官方价格表、官方页面 HTML 解析、峰谷计费数学
    ├── store.js            # 账本持久化与配置管理($DSH_HOME/storages/cost-meter)
    ├── typert.host.js      # ./typert 导出:Typert 清单(typert-loader 自动注册)
    └── client.js           # ./client 导出:浏览器单文件 bundle(徽章/图框/设置页)

数据通道:

  • 本会话费用:宿主注册 costUsage 会话投影(纯 token 桶 + 按模型拆分),浏览器经 useProjection('costUsage') 读取并按当前价格表计价;
  • 全局账本 / 预算 / 余额 / 配置:costMeter/getState | updateConfig | fetchPrices | refreshBalance | resetHistory,经 Typert 网关 RPC(remote.costMeter.*);
  • 余额:调用官方 GET {baseURL}/user/balance,复用模型请求的同一把 API Key(凭证服务/环境变量),进程内缓存按 refreshMinutes 过期。

插件不导入 cordis/dsh 的 Service/Context 运行时类(仅 Node 内建模块、zod、dsh-home-paths、dsh-credentials 的纯函数),与宿主共享同一运行时实例,无重复依赖风险。

官方价格同步原理

fetchPrices 抓取官方定价页(Docusaurus 服务端预渲染),解析:

  1. 基础价格表(转置布局:首行 MODEL + 模型 id,价格行标签后紧跟价格);
  2. 峰谷价格表(每模型两行:OFF-PEAK / PEAK);
  3. 生效时间(take effect at …)与峰时段窗口(Peak hours are …)。

解析结果写入价格表并持久化;页面结构变化时同步报错并保留原价格,可手动编辑兜底。

AI 价格同步

docs/AI-PRICE-SYNC-PROMPT.md(中文)与 docs/AI-PRICE-SYNC-PROMPT.en.md(English) 提供可直接复制给任意 AI 的提示词: AI 自主读取官方定价 → 输出多模型、分时(基础/谷时/峰时 + 生效时间)价格 JSON → 人工核对后应用(设置页 / RPC / 文件三选一)。适合官方价格变动时自主同步。

开发与验证

corepack pnpm install                                   # 依赖
node --check lib/index.js && node --check lib/pricing.js \
  && node --check lib/store.js && node --check lib/typert.host.js \
  && node --check lib/client.js                         # 语法检查
node test/verify.mjs                                    # 纯模块验证(解析/计费/账本/配置)
node test/mock-balance.mjs                              # (可选)本地余额接口模拟:3101
dsh --profile web --dump-config                         # 组合树校验
dsh --profile web --port 3099                           # 真机启动(观察启动日志与 UI)

已知限制

  • 官方页面解析依赖当前页面结构;改版后「从官方文档同步价格」会报错,可手动编辑价格表兜底;
  • 会话徽章按当前价格档位估算,精确费用以账本为准;
  • 价格同步会覆盖官方页面列出的同名模型价格,自定义模型条目不受影响;
  • 余额查询需要可访问 api.deepseek.com 的网络与有效 API Key;API Key 只会发往官方域名(baseURL 指向非官方域名时余额查询拒绝请求,模型请求不受影响);
  • OpenCode Go 额度接口为 opencode.ai 官方端点(社区文档);接口结构变化时设置页会显示错误,可在显示设置中关闭该显示;
  • 安装/更新插件后需重启 dsh web 生效。

更新历史

各版本更新总览与社区 issue 处理记录见 docs/UPDATE-HISTORY.md;逐条开发记录见 CHANGELOG.md。

License

MIT © 2026 dsh-cost-meter contributors

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

APIPublish GuideAbout
—/ 5

No ratings yet

Verified DSH bundle

Commit 889303bc0f2f

Community comments

No comments yet. Be the first to write one.