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.

Ui Peak Rate — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
U

dsh-ui-peak-rate

Ui Peak Rate

DSH web composer peak-rate badge: shows 🔥 2× when the session's model provider matches a configurable list during DeepSeek peak hours

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

npx -y @deepseek-ai/dsh plugin --profile web add github:haoliangwu/dsh-ui-peak-rate#1ea3d79003eee959ddfb608b077e71cd3977cd44
READMECompatibilityVersions

Compatibility and provenance

Ui Peak Rate is published as dsh-ui-peak-rate and currently resolves to version 0.1.2. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
web
Release source
github
Registry updated
9/14/2026

Versions

0.1.2stable
9/14/2026
0.1.0stable
8/22/2026

Related plugins

Loading related plugins…

Latest
0.1.2
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
web
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
9/16/2026
View source ↗
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 ui-customization.

Remote Web Ui@linxin666/dsh-remote-web-uiScan-to-pair remote access for the dsh web GUI that shares one official interface: a QR beside the settings button pairs phones and PCs into the same Web GUI (a portrait-touch adaptation layer for phones, full desktop on PCs) through one-time tokens and rClient Ui Task Board@linxin666/dsh-client-ui-task-boardHost-authoritative task board for the DSH Web GUI with real session execution, Host cron scheduling, and optional cross-platform idle-sleep protection; mounted without DSH source changes.Client Ui Git Graph@linxin666/dsh-client-ui-git-graphExternal dsh web GUI plugin: a blank-session git branch selector + Git graph, with real host-side git operations and guards, as a dsh profile bundlePet@linxin666/dsh-petMulti-pet companion plugin for the dsh web GUI: a registry-driven floating pet that reacts to model activity, with per-pet naming, petting/feeding interactions and an affinity score

README

dsh-ui-peak-rate

DSH web composer 🔥 2× peak-rate badge — shows when the session's model selection matches a DeepSeek peak-rate route during DeepSeek peak hours.

Peak-rate badge in the composer trailing row

A web client plugin for DeepSeek Harness. It paints a 🔥 2× pill in the composer's trailing input row, just left of the model trigger, when both of these hold:

  1. The session's current model selection matches the DeepSeek peak-rate policy (see Match rule).
  2. The current time is peak-priced: a weekday (Monday–Friday, Beijing time) whose UTC hour is inside a DeepSeek peak window (by default 01:00–04:00 UTC or 06:00–10:00 UTC, configurable).

Weekends (Saturday and Sunday, Beijing time) are all-day off-peak per the billing rule effective 2026-08-23, so the badge never shows then.

Otherwise the badge is hidden entirely — no layout cost.

  • Clock-only, no side effects. The badge reads the local clock and the existing model-directory store — no model-visible output, no session events, no durable state.
  • Weekends never badge. Saturday and Sunday (Beijing time) are all-day off-peak per the billing rule, so the pill never shows then.
  • Configurable, fail-loud. Providers, peak windows, and multiplier come from cordis.patch.yml; invalid windows (start >= end, start < 0, end > 24) fail at load, and peakWindows: [] disables the badge entirely.
  • Fresh every 60 s. The component re-evaluates on an interval (cleared on unmount) and immediately when config arrives; hidden until the one-shot policy fetch settles.

For example:

Mon 02:30 UTC (Beijing Mon 10:30, a weekday) + model `deepseek-chat` on `deepseek-official`
→ composer shows:  🔥 2×

Sun 12:00 UTC (Beijing Sun 20:00, a weekend) → badge hidden, no layout cost

Install

dsh plugin --profile web add github:haoliangwu/dsh-ui-peak-rate

Built lib/ is committed, so the git install is one line — no prepare script, no allowBuilds permission. Restart dsh --profile web after install (bundle layer stacks compose at boot).

Configure

All three fields default to the DeepSeek peak-rate policy; override any of them in your profile's cordis.patch.yml (~/.dsh/profiles/web/cordis.patch.yml):

- id: dsh-ui-peak-rate
  config:
    # Provider ids whose sessions may show the badge (default: ['deepseek-official'])
    providers:
      - deepseek-official
    # Peak windows [startHour, endHour) UTC, left-closed right-open (default: [[1,4],[6,10]])
    peakWindows:
      - [1, 4]
      - [6, 10]
    # Peak multiplier vs off-peak rate (default: 2)
    multiplier: 2

An empty peakWindows: [] disables the badge entirely (always off-peak). Invalid windows (start >= end, start < 0, or end > 24) fail loud at load.

Disable the badge entirely:

- id: dsh-ui-peak-rate
  disabled: true

The host half reads Config (schemastery) and exposes it to the browser half through a Connection RPC channel (/peak-rate endpoint config). No transport carries host plugin Config into the browser context automatically; the RPC channel is the explicit transport.

Match rule

The badge shows when the session's current model selection satisfies both of:

  • state.current.provider ∈ Config.providers (provider match, default ['deepseek-official']), AND
  • state.current.model contains deepseek (case-insensitive).

The model-id check narrows the provider list so a non-DeepSeek model routed through a listed provider does not trigger the badge. To match a provider whose model ids do not contain deepseek, neither condition holds and the badge stays hidden — extend Config.providers only when the route actually serves DeepSeek peak-priced models.

How it works

  • Peak state is a pure client-side clock fact. isPeakRate(date, windows) returns true iff the date is a weekday (Beijing time, UTC+8) whose UTC hour is inside one of the configured windows (left-closed, right-open). Weekends are all-day off-peak. The weekend boundary follows Beijing time — the billing rule's stated timezone — so Beijing Saturday 00:00 (UTC Friday 16:00) and Beijing Monday 00:00 (UTC Sunday 16:00) are classified correctly, not by their UTC weekday. The component re-evaluates every 60 s through a setInterval cleared on unmount, and re-evaluates immediately when the config arrives.
  • The peak-rate policy is fetched once from the host through a Connection RPC channel. The host half registers ctx.connection.rpc.handle('/peak-rate', ...), reads Config (schemastery: providers, peakWindows, multiplier) from the profile's cordis.patch.yml, and returns it on the config endpoint. The browser half calls ctx.connection.rpc.call('/peak-rate', 'config', {}) once and exposes the result as a reactive source (useSyncExternalStore); the badge stays hidden until the fetch settles.
  • The badge and tooltip render from locale dictionaries with config values interpolated. The badge text is 🔥 {multiplier}×; the tooltip lists the formatted windows and multiplier ({windows} / {multiplier} placeholders, e.g. 01:00–04:00, 06:00–10:00).
  • The component reads the session's current selection through ctx.modelDirectories.directoryFor(sessionId).store (the same instance ModelSelect reads), subscribes via useSyncExternalStore, and applies the match rule.
  • No model-visible output, no session events, no durable state. The plugin reads only the clock, the existing model-directory store, and the one-shot policy fetch. The peak schedule is a published 2026 constant; a DeepSeek schedule change requires a plugin update to the default peakWindows.

Build from source

pnpm install
pnpm build         # emits lib/index.js, lib/invariant.js, lib/client.js + sourcemaps

lib/ is committed to the repo so git installs work without a build step. After changing source, run pnpm build and commit the updated lib/.

License

MIT