DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins

dsh-token-watch

Token Watch

DeepSeek Harness plugin: watch session token usage and pop a whale-styled desktop alert when a threshold is crossed.

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add dsh-token-watch@0.1.1
READMECompatibilityVersions

Compatibility and provenance

Token Watch is published as dsh-token-watch and currently resolves to version 0.1.1. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
any
Release source
npm
Registry updated
11/4/2026

Versions

0.1.1stable
10/22/2026

Related plugins

Loading related plugins…

Latest
0.1.1
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
276.8 kB
Files
8
Surface
any
License
MIT
Source
npm
Weekly downloads
59
View source ↗Project homepage ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in models-usage.

Experimental Cot Translation Bundle@deepseek-ai/dsh-experimental-cot-translation-bundleExperimental machine translation of expanded reasoningWhale Widgetdsh-whale-widgetDeepSeek balance whale widget in the bottom-right corner of the DSH Web interface: balance/today’s usage/peak-off-peak pricing, customizable bubble click sequence (text/balance/today/peak-off-peak/image/random phrases and parallel weighted selection), per-line styles and fonts, floating quick editinOur Free Model@ebony-vinyl/dsh-our-free-modelOur Free Model — Install this plugin in dsh to use cutting-edge models including DeepSeek V4.1 Flash and Kimi K3, with no login, registration, or API Key required. The desktop version also offers an EAC co-payment channel; starting with 2.0, it supports ten account channels: LobsterAI, Qoder, TRAE, Usage@linxin666/dsh-usageUsage statistics plugin for the dsh web GUI: per-provider balance and coding-plan quota detection plus a live token usage ledger, with a compact price glance card above the sidebar's Settings row

README

dsh-token-watch

A DeepSeek Harness plugin that watches every session's token usage and pops a whale-styled desktop alert when a threshold is crossed — a small white speech bubble with a dark-navy outline and the whale mascot, in the corner of your screen.

It rides the host's own session/event stream, so there is no log tailing, no startup script and no second process to keep alive. Every workspace, every new session, is covered automatically.

Windows only for the desktop alert. On other platforms the plugin still logs and keeps running; it just skips the popup.

What it watches

RuleDefaultMeaning
singleCost¥0.30a single message costs more than this
singleTokens300,000a single message carries more than this many tokens
win5mCost¥1.00spend in the last 5 minutes
win1hCost¥3.00spend in the last hour
win10mMsgs12assistant messages in the last 10 minutes (runaway tool loops)
cacheRatio98%cacheRead / total above this, for messages ≥ 500k tokens

The same rule alerts at most once every cooldownMs (default 10 minutes), so a busy loop does not turn into a notification storm.

Cost is an estimate: prices are USD per 1M tokens from the host's providers/data/deepseek.json, converted with usdCny. It is not a bill.

Install

Client (Electron app): 插件 → + 添加插件, paste the package name (or a local directory path while developing), install, then 立即启用.

CLI profiles can use the normal plugin command:

dsh plugin --profile web add dsh-token-watch

The desktop profile is owned by the Electron app and refuses the CLI (profile "desktop" is managed exclusively by the Electron application), so use the UI there.

Fresh releases: npm needs a few minutes to propagate a brand-new package to its CDN. Until then pnpm add fails with ERR_PNPM_FETCH_404 ... .tgz even though the metadata page already renders. The China mirror (registry.npmmirror.com) syncs later still — pick npm 官方源 in the install dialog, wait a few minutes, then retry.

Do not uninstall a link: install while keeping it as your working copy. The client's plugin manager deletes the linked directory when the plugin is removed. Recover it from the published tarball (npm pack dsh-token-watch) or from git.

Configure

Thresholds and behaviour are plugin config, set in your profile's cordis.patch.yml:

- id: dsh-token-watch
  name: dsh-token-watch
  config:
    notify: true
    usdCny: 7.2
    thresholds:
      singleCost: 0.3
      singleTokens: 300000
      win5mCost: 1.0
      win1hCost: 3.0
      win10mMsgs: 12
      cacheRatio: 0.98
      cacheMinTokens: 500000
    cooldownMs: 600000
    # Extra or overridden prices, USD per 1M tokens:
    # prices:
    #   my-model: { input: 0.3, output: 1.2, cacheRead: 0.006 }
OptionDefaultNotes
enabledtrueset to false to load the plugin but do nothing
notifytruefalse keeps logging only
restoreStatetruerestore today's totals from state.json on reload
usdCny7.2exchange rate for the estimate
logDir$DSH_HOME/logs/token-watchone file per day
pricesbuilt-in tableper-model overrides / additions

Unknown models are counted for tokens and message rate but cost nothing, so the estimate never silently invents a price.

Why there is no historical replay

The session logs are multi-frame zstd. The Node bundled with the Electron host (24.21) only decodes the first frame, so replaying them from inside the plugin would silently undercount. The plugin persists a small state.json and restores today's totals from it instead; a fresh install starts counting from zero at load time.

Output

  • Log: ~/.dsh/logs/token-watch/token-watch-YYYY-MM-DD.log, one line per message plus a minute heartbeat. Same format as the standalone token-watch.mjs this plugin replaces.
  • State: ~/.dsh/token-watch/state.json — today's totals, so a host restart does not reset the daily counter.
  • Desktop alert: assets/notify.ps1, a borderless WPF window (white bubble, #2A3A6B outline, circular whale avatar). It falls back to a WinRT toast, then to a tray balloon.

Clicking the bubble opens today's log in Notepad. It closes itself after 10 seconds.

Self-test

npm run selftest

Drives the plugin with a fake context and one synthetic expensive message, so you can see the alert immediately without waiting for a real threshold. It uses a temporary DSH_HOME, so your real log and totals are untouched — the popup is real.

Notes

  • The plugin reads only usage numbers from session events; it never stores message text.
  • It lives inside the host process, so it only runs while DeepSeek Harness is running. If you also want monitoring with the app closed, keep the standalone daemon instead.
  • assets/notify.ps1 must stay UTF-8 with BOM — PowerShell 5.1 reads a BOM-less file as GBK and mangles the Chinese strings.

License

MIT