DeepSeek Harness(DSH)采用插件化架构。在开发或调试智能体时,开发者往往难以直观掌握单次对话或长会话的实际成本。dsh-session-cost 插件旨在解决这一问题,通过实时计算并展示当前会话的已花费金额,帮助开发者更好地控制成本。
这是一个由 dog-lin 维护的 Web 客户端插件,主要功能是实时显示当前会话已花费金额,支持自动同步官方价格并按会话统计。
核心功能¶
该插件提供以下核心能力:
- 实时显示:在输入框下方的状态条区域实时渲染当前会话的累计费用。
- 自动同步:自动从 DeepSeek 官网抓取最新价格表,支持峰谷定价配置。
- 本地覆盖与冻结:支持通过本地配置覆盖自动获取的价格,或通过
pin: true冻结价格。 - 来源透明:显示价格来源(官方自动、官方失败降级、本地配置)与更新时间。
- 按模型路由计算:根据模型路由(Model Router)计算每一步调用的费用。
安装与启用¶
使用以下命令从 GitHub 安装插件:
dsh plugin --profile web add git+https://github.com/dog-lin/dsh-session-cost.git
安装完成后,刷新浏览器页面(F5)。dsh plugin add 会将插件写入 profile 的 dsh.profile.bundles,插件自带的 cordis.patch.yml(bundle 层)会在启动时自动注册。
注意:宿主代码变更(如本插件功能升级)需要重启一次 dsh web,因为宿主模块走 Node 模块缓存。
配置与热加载¶
插件配置位于 $DSH_HOME/profiles/web/cordis.patch.yml。配置项包括:
currency:显示与计价货币(ISO 4217)。autoUpdate:是否自动同步官网价格(默认true)。updateIntervalHours:抓取间隔(默认24)。pricing:按模型 ID 计价。官网抓取到新价后会更新此处,加pin: true则永不改动。fallback:未在pricing中的模型计价规则(默认全0,即未计价)。
若需修改配置但不想重启,可使用 Profile 补丁热加载,通过 id: session-cost 覆盖整行配置:
# $DSH_HOME/profiles/web/cordis.patch.yml
- id: session-cost
name: 'dsh-session-cost'
config:
currency: CNY
autoUpdate: true
updateIntervalHours: 24
pricing:
deepseek-v4-flash: { input: 1, output: 2, cacheRead: 0.02, cacheWrite: 0 }
deepseek-v4-pro: { input: 3, output: 6, cacheRead: 0.025, cacheWrite: 0 }
fallback: { input: 0, output: 0, cacheRead: 0, cacheWrite: 0 }
注意:热加载时 config 是整体替换,需写全。若在 profile 层重复 insert 同一行,会导致启动报错 duplicate loader entry id: session-cost。
价格同步机制¶
插件通过三层机制确保价格正确:
- 官网价格自动同步:启动时及每
updateIntervalHours(默认 24h)抓取 DeepSeek 官方价格页。解析器会自动识别价格表中的所有模型。模型无关地发现新模型(如未来 v5),只要官网列出即自动取价。价格变动按生效时间追加到时间轴,历史请求按其自身时间戳取价。抓取失败时沿用上次价格并提示。 - 本地配置覆盖 / 冻结:
pricing中的条目是种子,会被官网更新。设置pin: true可完全由用户掌控。fallback用于未收录模型的兜底。 - 来源可见:投影值携带
pricingSource、pricingUpdatedAt和pricingWarn,客户端悬浮提示可查看。
价格历史持久化在 $DSH_HOME/storages/dsh-session-cost-pricing.json,重启不丢失。
峰谷定价¶
DeepSeek 自 2026-08-17 起(北京时间)实行峰谷定价。插件支持两种配置方式:
方式一:peak / offPeak 对象
pricing:
deepseek-v4-flash:
peak: { input: 3.0, output: 9.0, cacheRead: 0.10 }
offPeak: { input: 1.5, output: 4.5, cacheRead: 0.05 }
方式二:schedule 时间轴
pricing:
deepseek-v4-flash:
schedule:
- from: 0
input: 1
output: 2
cacheRead: 0.02
- from: 2026-08-17T00:00:00+08:00
peak: { input: 3.0, output: 9.0, cacheRead: 0.10 }
offPeak: { input: 1.5, output: 4.5, cacheRead: 0.05 }
默认高峰时段为北京时间 09:00–12:00 和 14:00–18:00。
投影值与已知限制¶
sessionCost 投影值包含 totalCost、requests、unpricedRequests、inputTokens 等字段,以及价格来源信息。
已知限制如下:
- 会话范围:费用仅统计当前会话,子代理(subagent)的模型调用不计入父会话。
- 推理 Token:推理 token 属于输出桶的子集,按输出价计费,不额外加价。
- 新模型识别:新模型需等待下一次抓取(默认 24h)才能识别。在此之前,请求计入
unpricedRequests并标注未计价。 - 抓取失败:若官网改版导致连续抓取失败,插件会沿用上次价格并提示,不会静默给出错误数据。
总结¶
dsh-session-cost 提供了从日志重放、价格同步到本地配置覆盖的完整成本追踪方案。对于需要精细化控制 DeepSeek 调用成本的 DSH 用户,这是一个实用的工具。
- 插件目录:https://www.skillhub.cn/plugins/dog-lin/dsh-session-cost
- GitHub 仓库:https://github.com/dog-lin/dsh-session-cost