dsh-cost:在 DSH Web 界面查看账户余额与会话费用

前言

在 DeepSeek Harness(dsh)里跑长会话时,官方统计行会给出活动与用量,但不会把「当前是峰时还是谷时、账户还剩多少钱、这一会话大概花了多少」合成一处展示。开发者若要对齐官方计费规则(峰谷半价、2026 年调价与 pro→flash 路由),往往得自己查文档或事后对账。

下面介绍社区插件 dsh-cost(npm 包名 dsh-cost-pill,仓库 Arun1016/dsh-cost)。它在会话输入框下方官方统计行最右侧增加一颗 cost pill,合并展示计费时段、账户余额(可选)和当前会话费用;点击可展开按桶与按模型的明细。费用侧不需要凭据;余额侧需要 DeepSeek API key,且插件不把 key 写入磁盘。

社区插件,与 DeepSeek 无隶属或背书关系。

这是什么

dsh-cost 由维护者 Arun1016 发布,分类为 客户端(Web GUI 注入)。它注册到 conversation.composer.dock,order: 2,排在官方 activity(0)与 usage(1)两颗 pill 之后。

核心能力概括如下:

  • 统计行最右侧 pill:峰时显示 Peak、谷时显示 Off-peak,并用红/绿点区分;同时展示余额与会话费用(无 key 时仅缺余额段)。
  • 弹层明细:计费时段、余额、会话总费用,以及 cache-hit 输入、cache-miss 输入(含 cache write)、输出各桶费用;主机可按模型折叠时还提供按模型拆分。
  • 计价表随插件发布内置,覆盖 2026-09-10 降价与 pro→flash 路由;会话 attach 期间按请求折叠用量,跨调价、路由或峰谷边界不会混用两套费率。
  • 中英双语:cost-stats 命名空间下 14 条字典项,随应用 locale 切换。

环境与依赖

  • DeepSeek Harness >= 0.2.1-rc.2(见 package.json 的 engines.dsh)。
  • 要看余额:需要 DeepSeek API key。经 dsh 的 credentials seam 解析;仅当 credentials 服务本身不可用时 才回退到环境变量 DEEPSEEK_API_KEY——若 credentials 存在但没有 key,不会读环境变量。仅用 DeepSeek 账号登录、无 key 时,pill 仍显示峰谷与会话费用,余额段不出现。

安装与启用

插件市场可搜 dsh-cost;终端安装命令以 README 为准:

dsh plugin --profile <profile> add dsh-cost-pill

从 GitHub 源安装:

dsh plugin --profile <profile> add github:Arun1016/dsh-cost

说明:裸 npm 名 dsh-cost 属于无关项目;本插件发布在 @arun_1016/ 作用域下,与前者不混淆。当前资料中 package 版本为 1.0.2,许可证 MIT。

安装前请自行查看仓库源码与许可证;插件在 当前 dsh 进程权限 下运行,与所有 DSH 插件一样,信任边界取决于你对维护者与代码的审查。

配置

唯一配置项为 holidays,用于替换内置的 2026 年中国法定节假日表(国办发明电〔2025〕7 号,北京本地 YYYY-MM-DD)。跨年后改 Config 即可,不必改代码。

- id: cost-stats
  name: dsh-cost
  config:
    holidays: ['2026-01-01']   # statutory holidays bill off-peak all day

峰谷时钟:工作日 09:00–12:00、14:00–18:00 为峰时,其余为谷时;周末与法定假日全天按谷时。时钟取 运行 dsh 的机器本地时间;官方窗口按北京时间定义,只有主机为北京时间时读数才与官方完全一致。

典型用法与界面行为

  1. 安装并启用插件后,打开 dsh Web GUI,在会话 composer 下方统计行最右侧可见 cost pill。
  2. 无 API key 时仍可看峰谷与会话费用;配置 key 后 pill 会带上余额。
  3. 点击 pill 打开弹层,查看各 token 桶与会话内按模型费用(主机支持折叠时)。
  4. 浏览器端只请求宿主路由 /api/dsh-balance(每个 session step 一次,另加 60 s 轮询),不直连第三方;余额查询由宿主侧访问 https://api.deepseek.com/user/balance(15 s 超时),key 仅进程内使用,不落盘。

计费模型(资料摘要)

价格为 CNY / 百万 token;下表均为 峰时 单价,谷时为一半。

项目 规则
Flash(2026-09-10 12:00 北京时间起) 未缓存输入 / cache-hit 输入 / 输出:2 / 0.04 / 8
Flash(降价前) 3.0 / 0.1 / 9.0
Pro(deepseek-v4-pro,2026-09-14 12:00 北京时间前) 9.0 / 0.3 / 27.0
pro→flash 路由 2026-09-14 12:00 北京时间起按 Flash 计费
inputTokens 未缓存输入;cache write 按未缓存费率
reasoning 属于 output 子集,不单独计费

适用场景与注意事项

适合:在 dsh Web 里长时间调试智能体、需要对照官方峰谷与调价规则看「这一会话花了多少」、并可选地盯账户余额的开发者。

隐私与网络(README Privacy):无遥测、无第三方端点;浏览器不直连外网查余额。余额失败(无 key、无效 key、网络错误、超时)静默返回无 balance_infos 的 200,并缓存 30 s;充值后最多约 30 s 才刷新。进程级余额缓存按 key 失效。

已知限制(节选):

  • 已 detach 的会话由宿主按当前 Flash 费率聚合计价,无估算标记;浏览器侧 fallback 估算会标 (估) / (est)。
  • 宿主路由缺失或报错时,整颗 pill 静默隐藏,无占位与错误提示;失败后停止 per-step 轮询,仅保留 60 s 轮询。
  • 费用精确到 ¥0.01 以下为 4 位小数;展示一律带 ¥ 前缀。
  • 内置假日表仅覆盖 2026;未识别 model id 按 Flash 表计价;弹层无高度上限,且不与官方 pill 弹层互斥。
  • 按请求累加费用,四舍五入可能与账单略有差异。

结尾

dsh-cost 把峰谷、余额与会话费用收到统计行一颗 pill 里,并按官方规则做分桶与分模型展示;无 key 也能看时段与会话成本,有 key 则补余额,且不把凭据写入磁盘。

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

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

Xiaoye