dsh-token-control: Per-turn Token, Cost, and Balance Readings Above the DSH Input Area

前言

在 DeepSeek Harness(DSH)里跑长对话或频繁调用模型时,单轮用了多少 token、按官方价表折算成多少人民币、钱包余额还剩多少,往往要事后去控制台或账单里查。高峰与低谷时段单价不同,跨时段的一轮对话还要按每次调用各自的时间戳计价,手工估算容易错。社区插件 dsh-token-control(目录展示名 Token Monitor)把上述信息挂在对话输入区上方,流式更新,并配合北京时间高峰窗口做倒计时提醒。下面介绍它的定位、能力与安装方式。

这是什么

dsh-token-control 是维护者 RitvaManner 发布的 DSH 插件,在 SkillHub 社区目录中归类为 admin-security。插件 Host 与 Client 分离,定价、余额、高峰策略与视图均可替换;当前状态为 v0.1.0,依赖 Node.js ≥ 22、DSH ≥ 0.2.0,许可证 MIT。

一句话定位:在 composer 上方(或可配置挂载点)展示逐轮 token 明细、按价表折算的费用、DeepSeek CNY 钱包余额,以及高峰/低谷切换倒计时。

核心功能

资料中明确列出的读数与行为如下。

逐轮 token 与费用

  • 每轮分别展示:总 token、输入合计、输出、缓存命中、缓存未命中。
  • 费用来自价表 DS_CNY_2026_11(来源:DeepSeek 官方 CNY 定价文档);每次 API 调用按该调用自身时间戳选择高峰或低谷单价,跨边界的一轮仍按调用拆开计费。
  • 流式输出过程中,在 provider 上报用量前,输出 token 以字符估算并标 ≈,上报后替换为确定值。

余额

  • 通过 Host 调用 GET /user/balance 读取 CNY 钱包。刷新失败时保留上一次读数,并标为过期及对应时间戳。

高峰 / 低谷

  • 北京时间周一至周五 09:00–12:00、14:00–18:00 为高峰;法定假日除外;其余时间(含周末、假日及调休补班中的周末)按低谷 50% 计价。假日政策引用国务院 2026 年通知。
  • 高峰结束前 5 分钟在读数区显示倒计时;切换后约 3 秒静默提示「已切换」,无弹窗打断。

架构要点(便于二次开发)

  • 目录分层:definition(契约与纯数据)、provider(可替换实现)、consumer(账本与 ViewModel)、host(组合根)、client(传输与 React 壳)。每个 View 为 src/client/views/ 下独立文件,由构建脚本内联进 ./client 导出,以适配 DSH Client 以 classic script 加载插件 client 的方式。

安装与启用

在目标 profile 下执行以下命令之一(与仓库 README 一致):

# 从 npm(发布后)
dsh plugin --profile <profile> add dsh-token-control

# 从 GitHub
dsh plugin --profile <profile> add github:RitvaManner/dsh-token-control

# 本地 checkout(开发)
dsh plugin --profile <profile> add .

安装完成后,打开 Settings → Token Monitor,选择读数挂载位置;默认挂载点为 conversation.input.dock(输入框上方一行)。

典型用法

  1. 按上一节命令把插件加入当前使用的 DSH profile。
  2. 在 Harness 设置里进入 Token Monitor,确认或调整挂载点。
  3. 正常发起对话:读数随轮次与流式输出更新;余额按 Host 侧策略刷新;临近高峰结束时关注读数区倒计时。

若需改 UI 或新增 View,在仓库内编辑 core.js 或 src/client/views/ 后执行:

node scripts/build-client.mjs

开发模式可用 pnpm dev(在仓库内使用 .dsh-dev/,不修改 ~/.dsh)。

适用场景与注意

适合谁

  • 长期在 DSH 桌面或 Web 会话里调试智能体、需要当场看到 token 与人民币费用的开发者。
  • 需要对照 DeepSeek 高峰 / 低谷计价规则、并希望在切换前收到读数区提醒的用户。

安全与权限

  • API Key 仅在 Host 通过 ctx.credentials.resolve('DEEPSEEK_API_KEY') 解析,只出现在对外请求的 Authorization 头;浏览器侧仅收到字段级 ViewModel,测试约束页面不会出现 key、上游 URL/正文或 Session。
  • 部分路由仅绑定 loopback,但未走 DSH /api 的 connection admission:本机其他进程可能读到含余额的快照(不含 key)。安装前宜阅读仓库 Security 小节与源码;插件以当前 DSH 进程权限运行,社区目录 SkillHub 与 DeepSeek / 幻方无官方从属关系,并非官方应用商店。

结尾

dsh-token-control 把逐轮 token、价表费用、CNY 余额与高峰倒计时集中到输入区上方,Host 持钥、Client 只展示 ViewModel,适合在 DSH 日常开发中做用量与成本自检。详情与源码见 GitHub 仓库,社区条目见 SkillHub 目录页。

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

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

Xiaoye