Introduction¶
In DSH (DeepSeek Harness), switching models and reasoning intensity relies on the native model selector in the session input area. In practice, there are two awkward aspects: first, vendors do not have unified naming for the tiers (names like off, med, extreme, ultracode require memorizing the mappings); second, custom routers (like OpenRouter) often do not have reasoningEfforts configured, so there is no entry point in the interface when trying to adjust the level.
DSH’s philosophy is “Everything is a plugin”, and the session input model slot can also be taken over by a plugin. The DSH Claude Style Reasoning Slider introduced in this article does exactly that: it replaces the native model selector with a Claude-style animated slider and standardizes the reasoning levels into a fixed set of six tiers.
Please note: the community directory (skillhub.cn) cited in the text is an independent site and has no official affiliation with DeepSeek or Hyperbolic.
What is this¶
DSH Claude Style Reasoning Slider is a client UI plugin for DeepSeek Harness. Author: MEMZ-JZY, MIT License. NPM package name: dsh-client-ui-effort-slider, version 0.7.0, client platform in package.json is web, injecting the three runtime modules @deepseek-ai/dsh-client-runtime, @deepseek-ai/dsh-client-locale, and @deepseek-ai/dsh-cordis-client-runner.
One-sentence positioning: A plug-and-play model selector that only replaces the conversation.input.model slot. The rest of the chat input remains unchanged, and the reasoning level panel is replaced by an animated slider.
Core Features¶
Standardized 6-Tier Slider¶
The slider always displays the six tiers: Off | Low | Medium | High | Extra | Max, regardless of vendor naming. Name matching is handled with tolerance: off/none/disabled maps to Off, ultracode maps to Max, med maps to Medium, extreme maps to Extra, and similar display names are also normalized to the standard tiers.
Fallback & Default Behavior¶
- Tiers not supported by the current model are grayed out but remain clickable: the thumb stays at the clicked position, and the nearest supported tier below is actually applied, with a toast explaining the fallback.
- When switching models, the current reasoning level is preserved as much as possible; if not possible, it automatically drops to the nearest supported tier below, also accompanied by a toast.
Defaultis provided as a capsule below the slider. When submitted, it does not sendreasoningEffort, leaving it to the vendor’s default behavior. Vendor-exclusive intensities that cannot be mapped to the slider are also displayed as selectable capsules.- When a model lacks
reasoning/effortsmetadata, the Effort menu still appears. The content consists of a “No Level” hint plus a safeDefaultcapsule, rather than hiding the entire thinking intensity control.
Two-Level Menu & Trigger Chip¶
Clicking the model/reasoning level trigger chip in the session input pops up a two-level menu: the model list is grouped by vendor, and next to it is the reasoning level panel, including loading, error, and retry states. The trigger chip displays the current model, level tag, and six rising signal bars that fill up according to the level.
Optional Easter Eggs: Liang Calibrator and Big Fat Fish¶
Two optional features, both off by default:
- Liang Calibrator (Sliding-to-Ancestor Device): A switch below the track. When enabled, the six tiers are bound to:
Off → Xiao Nan Liang,Low → Lao Liang,Medium → Liang Zi,High → Liang Sheng,Extra → Liang Shen,Max → Liang Zu. A224pxsquare portrait appears above the track, composed of 31 frames of WebP (frame-00…frame-30). It follows the hand continuously when dragging and snaps to the first frame of that tier when released. Labels and trigger chips get suffixes likeMax Liang Zu. The switch state is persisted inlocalStorage. - Big Fat Fish Thumb: Replaces the slider thumb with an 8-frame running Q-version fish sprite. It loops at
720mswhen idle and accelerates to420mswhen dragging. Enable it in DSH Settings → General → Big Fat Fish slider. It takes effect immediately without a restart, and settings are also persisted inlocalStorage.
Animation Details¶
- The
HighandExtratiers display a sparse blue/purple dot field with random flickering and radial water ripples centered on the thumb. - The
Max/Ultracodetier turns the slider into an animated purple pixel field, and theMaxlabel becomes flowing multicolor gradient text. - The track uses a glass texture: inset shadow plus subtle fractal noise. Glare and glass edge highlights follow the pointer, becoming brighter the closer it gets. Under the
Maxtier, the glow effects are suppressed to keep the pixel field clean. - Tier ticks are faint by default, highlight on hover nearby, and are always visible for the current tier.
Localization & Accessibility¶
Built-in English and Simplified Chinese dictionaries, following DSH’s light/dark design tokens. The slider is keyboard operable (arrow keys, Home/End, PageUp/PageDown), with ARIA labels and focus management. All animations use CSS transitions/animations or lightweight event handling and respect prefers-reduced-motion.
Installation and Enablement¶
Install the bundle from the Git repository, then start the web profile:
dsh plugin --profile web add github:MEMZ-JZY/DSH-Claude-Style-Reasoning-Slider
dsh --profile web
You can also install using a local checkout:
dsh plugin --profile web add ./dsh-client-ui-effort-slider
Note: After installing or removing a bundle, you need to restart the web profile for it to take effect.
Typical Usage¶
-
Click the model/reasoning level trigger chip in the session input to pop up the two-level menu.
-
In the menu, select Model to switch models, or select Effort to adjust the current model’s reasoning level.
-
In the Effort panel, drag or click the slider to select one of the six tiers. When clicking a position that is not supported, the thumb stops at the click location, and the nearest supported tier below is actually applied, with a toast explaining the situation.
-
Click Default to remove
reasoningEffort, leaving it to the vendor’s default behavior; click other capsules to apply vendor-exclusive intensities that cannot be mapped to the slider. -
To enable Liang Calibrator, click the “Sliding-to-Ancestor Device” switch below the track. The portrait and stage name suffixes take effect immediately and are remembered across sessions.
-
To enable Big Fat Fish Thumb, go to DSH Settings → General and turn on Big Fat Fish slider. It takes effect immediately without a restart.
Another common scenario: if the vendor supports effort but does not configure reasoningEfforts (very common in custom OpenRouter routes), you can supplement the levels in DSH’s llm-pi-ai settings to restore the full slider.
Suitable Scenarios and Notes¶
Target audience: Users who work daily on the DSH web interface, frequently switch between multiple vendor models or use custom routers, and want reasoning levels to be intuitively visible and quickly adjustable. If you only stick to one model and one level, the benefit of this plugin is relatively limited.
A few notes:
-
Liang Calibrator and Big Fat Fish Thumb are off by default. Related settings exist in
localStorage, and you can choose not to enable them at all if you dislike such content. -
The plugin runs with the permissions of the current dsh process. It is recommended to read the source code before installing to confirm the behavior meets expectations. The license is MIT, and the repository address is below.
-
The Development section in the README was truncated during scraping. Subsequent content such as the demo page is not covered in this article; if needed, check the repository directly.
Conclusion¶
This plugin solves a specific problem: it normalizes the scattered reasoning tiers across various vendor naming systems into a six-tier slider that is always visible, draggable, and includes fallback support, all without touching the rest of the chat input. All Easter egg features are off by default and are optional add-ons.
Project Directory Page: https://www.skillhub.cn/plugins/MEMZ-JZY/DSH-Claude-Style-Reasoning-Slider
GitHub Repository: https://github.com/MEMZ-JZY/DSH-Claude-Style-Reasoning-Slider