spoon-man569/dsh-token-price

Plugin插件 Native原生 ⭐ 3 MIT Usage & Cost用量与计费

DSH 实时 Token 花费与账户余额显示插件(每轮花费 · 总花费 · 余额)

Project Overview项目介绍

This is a native plugin built exclusively for DeepSeek Harness (DSH), designed to add accurate real-time token cost and DeepSeek account balance displays to DSH’s built-in web chat UI. To install the plugin, you run the one-line command dsh plugin --profile web add dsh-token-price in your terminal, which requires the pnpm package manager to complete the installation. It is built for DSH’s web profile, which is the default running environment for most new DSH users. Since the package includes a valid DSH bundle manifest, the command automatically activates both the host-side service and the in-browser UI readout components.

The plugin displays per-message cost as a CNY value when you hover over the stats line after each assistant reply, and tracks a running total of all session costs, including usage from cancelled requests that never returned a final reply. It also converts the internal USD accounting to estimated CNY based on current market exchange rates, and pulls official DeepSeek account balance data via the official DeepSeek API. This plugin is ideal for DSH users who want to keep close track of their DeepSeek API spending and avoid unexpected overcharges to their account.

All token price data is stored in a local versioned file called prices.json, which stores historical price rules with effective timestamps and never scrapes the official DeepSeek price page at runtime. Exchange rates are refreshed hourly from public market data sources; if a refresh fails, a bundled fallback exchange rate is used instead for all CNY estimates. The project is released under the permissive MIT license, and third-party developers can modify it by running npm install to install dependencies and npm test to build and test changes.

这是一个专为DeepSeek Harness开发的原生插件,用于在DSH的网页聊天界面中展示精准的令牌计费和DeepSeek账户余额信息。它能够显示单轮对话单条消息的计费、整个会话的累计总费用,还会将USD官方计费按照市场汇率转换为人民币估值展示,同时支持拉取官方DeepSeek账户的实时可用余额。插件通过DSH命令行一键安装,安装过程需要pnpm包管理器的支持。

对于需要控制DeepSeek API调用成本的DSH用户,该插件可以帮助你实时掌握每轮对话和整个会话的花费情况,避免出现意外超额扣费。安装配置完成后,用户可以将鼠标悬停在助手回复的统计信息行查看单条消息的人民币计费,界面顶部会实时显示会话总花费和账户余额,所有数据都在后台按照配置的间隔自动刷新。未知模型或路由的API调用会被标记为未定价,不会错误显示为零费用。

插件价格数据存储在本地版本化的prices.json文件中,采用追加式历史规则记录,不需要运行时爬取官方价格页面,重放会话日志也能得到一致的计费结果。汇率每小时从公开数据源自动刷新一次,失败则使用内置的备用汇率,所有人民币计价均为估算,不影响官方美元记账。项目采用MIT许可开源,支持二次开发,开发测试可使用npm install和npm test命令完成构建。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 3 stars - very few users, little community feedback星标只有 3,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add dsh-token-price

把 spoon-man569/dsh-token-price 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-token-price

English | 汉语

Accurate token-cost and account-balance readouts for the DeepSeek Harness Web chat UI.

What it shows

  • Per-message cost: the cost for completed request steps in that turn, shown as ¥... after each assistant reply's statistics line on hover.
  • Session total: the sum of every reported request step, including a cancelled request that emitted usage but no final assistant message.
  • Estimated CNY: a market-rate USD/CNY conversion shown as ¥.... USD is not rendered in the UI. This is not an account debit or official per-request CNY charge.
  • Account balance: the official GET /user/balance result. The plugin prefers the returned CNY balance and otherwise preserves the API's returned currency.

USD remains the internal accounting value. An unknown provider/model route is shown as 未定价, never as a zero-cost amount.

Install

One command (requires pnpm):

dsh plugin --profile web add dsh-token-price

The package declares dsh.bundle and dsh.client, so this activates both the host service and browser readouts.

Configuration

- id: token-price
  name: dsh-token-price
  config:
    balanceBaseURL: https://api.deepseek.com
    balanceApiKeyEnv: DEEPSEEK_API_KEY
    balanceRefreshIntervalMs: 60000
    referenceRateRefreshIntervalMs: 3600000
    requestTimeoutMs: 5000

balanceApiKeyEnv names the credential holding the DeepSeek API key used for the balance request. The key remains on the host. A failed refresh keeps the last balance sample.

Pricing and rates

prices.json is the local, versioned source of official USD rates per million tokens. It is an append-only history: each rule has an effectiveFrom timestamp, Beijing peak windows, and explicit prices for each supported route. New official prices must append a rule; past rules must not be changed.

The tokenCost projection snapshots the request route and time at request/header, then calculates each (turn, step) from the matching historical USD rule. Replaying the same session log therefore yields the same USD result. The host never scrapes the official price page at runtime.

USD/CNY is refreshed server-side from public market-rate sources every hour. When that refresh fails, the UI uses the current rule's bundled fallback rate. Both values remain estimates (¥) and never affect USD accounting.

Development

npm install
npm test

npm test builds lib/, emits type declarations, and runs accounting tests. Restart the DSH Web process after rebuilding so it loads the new artifacts.

License

MIT

← 上一个 Prev smokinggun 下一个 Next dsh-stock-watch →