前言¶
在 DeepSeek Harness(DSH)里长时间跑 Session 时,token 会不断累积,但 Web 客户端默认不会在输入区直接给出「这一通对话大概花了多少钱、钱包还剩多少」。要对照账单,往往得切到平台侧或自己记数。社区插件 dsh-cost-balance-chip(仓库 jieyueriluo/DSH_balance-chip)把当前 Session 的预估花费和账户可用余额做成输入框右侧的一小块 chip,点开后还能看到按 token 桶拆分的明细。下面介绍它的定位、能力与安装方式。
这是什么¶
dsh-cost-balance-chip 是面向 DSH Web 客户端的社区插件(非 DeepSeek 官方包),维护者为 jieyueriluo,在 SkillHub 目录中归类为客户端插件。npm 包名与安装名均为 dsh-cost-balance-chip(版本 1.0.0,许可证 MIT)。
它在对话卡片输入区右侧控件簇(挂载点 conversation.input.right)里、模型选择器之前插入两行紧凑信息:本次(当前 Session 预估花费)与余额(充值钱包 + 赠送钱包的可用总额)。花费为客户端估算,平台账单仍以官方为准。
核心功能¶
输入框旁的 chip¶
界面示意(来自 README):
┌─────────────────────────────┐
│ ● 本次 ¥15.93 │
│ 余额 ¥13.35 │
└─────────────────────────────┘
- 本次:基于持久化 Session 日志上的
tokenUsage投影,以及当前所选模型的参考单价,估算本 Session 费用。 - 余额:通过 DSH 自带的
remote.account代理读取,不经过插件自行上传凭证。挂载时刷新,之后每 30 秒、页面重新可见时、以及每次用量结算后 shortly 再刷。 - Session 运行中时,行首圆点会脉冲动画;文案与主题跟随 DSH 的
zh/en与明暗主题。
点击后的明细面板¶
点击 chip 可展开面板,内容包括:
- 当前模型与 cache 命中率;
- input、output、cache-read、cache-write 四类 token 数量;
- 各桶对应的费用贡献;
- 充值与赠送钱包、上次刷新时间,以及手动刷新。
若余额读失败,chip 上显示 — 而非伪造为 0;面板说明原因并提供重试。
费用如何估算¶
客户端没有独立计费 API,单价在 client.js 中以「每百万 token、人民币」为参考默认值,例如:
const DEFAULT_PRICING = { input: 2, cacheRead: 0.2, cacheWrite: 2, output: 3 }
const MODEL_PRICING = {
'deepseek-flash': DEFAULT_PRICING,
'deepseek-v4-pro': { input: 4, cacheRead: 0.4, cacheWrite: 4, output: 12 },
}
面板会展示当前生效的费率。若账号实际价目不同,需改 client.js 后重载页面。
已知限制:同一 Session 内若切换模型,目前会把该 Session 全部 token 按最后一次所选模型计价;若要按请求分段,需要读完整 Session 日志并按请求头切分,插件尚未实现。
实现要点(便于排查)¶
- 花费:
@deepseek-ai/dsh-token-meter的useProjection('tokenUsage')。 - 模型:
useProjection('modelSelection')(next.model,回退lastUsed.model)。 - 余额:
ctx.remote.account.getBalance(clientMetadata),插件显式注入remote.account命名空间。 - Host 侧:
index.js导出空的apply(),无需 Host 半端逻辑。
安装与启用¶
DSH 引擎要求 >=0.2.1-rc.3(见 package.json 的 engines.dsh)。仅 Web Client,不注册面向模型的 tools 或 prompts。
在任意 profile 下从 npm 安装:
dsh plugin --profile <profile> add dsh-cost-balance-chip
若使用本地检出目录,将 <absolute-path-to-this-directory> 换为仓库绝对路径:
dsh plugin --profile <profile> add <absolute-path-to-this-directory>
安装后 bundle patch 会插入 cost-balance-chip 行。重启 DSH,或等待 profile 的 HMR 重载 Web 页面后再看输入框右侧。
典型用法¶
- 安装并重载 Web 客户端后,打开任意对话,在输入框右侧模型选择器左侧应出现 chip。
- 进行多轮对话或长 Session,观察 本次 随 token 投影更新;运行中注意行首脉冲点。
- 点击 chip,核对四类 token、各桶费用与面板中的单价是否与你的账号一致;不一致则按 README 修改
client.js中的MODEL_PRICING。 - 需要即时余额时,在面板中使用手动刷新;余额异常时查看面板中的失败原因并重试。
无需额外配置文件;行为由 DSH 会话投影与 account Remote 驱动。
适用场景与注意¶
适合:日常在 DSH Web 里调试 Agent、长 Session 或频繁换模型时,希望在 composer 内快速感知「这一通大概多少钱、钱包够不够」,并偶尔下钻到 token 桶明细的开发者。
注意:
- 插件以当前 DSH 进程与 profile 的权限运行;安装前建议阅读 GitHub 源码 与 MIT 许可证,确认
remote.account与 client 注入符合你的安全预期。 - 社区目录 SkillHub 条目 与 GitHub 仓库由社区维护,与 DeepSeek / 幻方无官方从属关系;DSH 生态本身是「一切皆插件」,本插件是其中一例。
- 预估费用不等于发票;切换模型时的计价局限见上文。
结尾¶
dsh-cost-balance-chip 把 Session 级 token 投影和账户余额收进输入框旁的两行 chip,并附带可点击的拆分面板,适合需要「边聊边看钱」的 DSH Web 用户。目录与源码: