Preface¶
The plugin system of DeepSeek Harness (DSH) emphasizes “everything is a plugin.” In the Web profile, the built-in conversation.input.model slot in the input box is responsible for model selection; if you want to select both the model and the reasoning effort level in the same entry point, you can override this slot.
dsh-reasoning-effort-hdbzq is a frontend plugin prepared for this purpose: it replaces the model selection control in the input box with a model list plus a three-level reasoning effort slider.
Below are its positioning, features, installation method, typical usage, and precautions.
What This Is¶
This is a DeepSeek Harness frontend plugin, version 0.1.0, licensed under MIT. The repository address is shown as flyemFSB/dsh-reasoning-effort-hdbzq.
It solves the problem of “model selection and reasoning effort levels being scattered across different entry points”: it overrides the built-in conversation.input.model slot, replacing the model selection control with a model list and a three-level reasoning effort slider. The plugin reuses the official modelDirectories service and shared directory store, and does not implement model invocation itself.
Core Features¶
- Overrides the built-in
conversation.input.modelslot; after uninstallation, the built-in model selection slot is automatically restored. - The popup panel displays the model list grouped by provider, including loading, failure, and empty states.
- Provides a draggable three-level slider; dragging is responsive, with elastic bounce-back when out of bounds, and snapping to the nearest level and submitting on release.
- Supports keyboard left/right arrow keys, instant submission by clicking on the track, and
Escapeto close and restore focus. - Effort level names and avatars are mapped by image filename position; falls back to the original host directory names when images are insufficient or exceed three levels.
- The real Effort ID is passed as-is to
session.selectModel; the display name shown in the UI is not written into the model request. - Styling uses the official
--dsw-alias-*semantic tokens, supporting light/dark themes. - Copy supports the official locale dictionary mechanism with
zh/endual dictionaries. - Build output includes an official
__ModuleLoader__closure package containinglib/client.jsand source maps, withstyle data-pluginautomatically injected. - Does not render content when the addressed sub-agent session is hit.
- The number of effort levels varies with the
effortsarray in the model directory: fewer than 3 levels shows only the corresponding count; more than 3 levels shows the host original names starting from the 4th level.
Installation and Activation¶
First, install the plugin in the target Web profile:
dsh plugin --profile web add https://github.com/flyemFSB/dsh-reasoning-effort-hdbzq/releases/download/v0.1.0/dsh-reasoning-effort-hdbzq-0.1.0.tgz
After installation, start it:
dsh --profile web
The target environment needs to provide a DeepSeek Harness Web profile with the conversation.input.model slot and the modelDirectories service, and dsh must be >= 0.1.0-rc.6. Runtime dependencies are provided by the Web profile, with peerDependencies including @deepseek-ai/cordis, multiple dsh-client packages, and clsx.
Typical Usage¶
-
Open the model selection entry point in the input box, and the popup panel will display the model list grouped by provider.
-
Select the target model.
-
Drag the slider to adjust the reasoning effort level; after releasing, it snaps to the nearest level and submits the real Effort ID.
-
You can also use the keyboard left/right arrow keys to adjust the level, or click on the track for instant submission.
-
For rapid consecutive switching, submissions use latest-wins logic with subsequent propagation; if a submission is rejected, it bounces back to the confirmed level.
-
Press
Escapeto close the panel and restore focus.
Source Build and Verification¶
To build and verify from source:
npm install
npm run check
npm run check corresponds to typecheck, unit tests, and a full build. To package:
npm run pack
To rename effort levels, rename the image files and update the ASSET_ORDER in build.mjs accordingly.
Uninstallation¶
dsh plugin --profile web remove dsh-reasoning-effort-hdbzq
After uninstallation, the built-in model selection slot is automatically restored.
Applicable Scenarios and Notes¶
Suitable for:
- Developers who provide the
conversation.input.modelslot in the DeepSeek Harness Web profile and want to select both the model and reasoning effort level in the same panel. - Client plugin developers who want styling to follow light/dark themes and copy to support
zh/en. - DSH plugin developers who want to override official slots rather than implement model requests themselves.
Notes:
- The plugin runs with the current
dshprocess permissions; source code, license, and repository address should be checked before installation. - The MIT license only covers code and materials the maintainer is authorized to license; it does not grant permission for likeness, name, identity, publicity rights, trademarks, copyrights, or other third-party rights. You need to independently confirm the required permissions before public distribution, commercial use, redistribution, or creating derivative versions.
- The slot override has a fixed priority of
-10, relying on the built-in slot’s default priority of0; if the official changes the built-in registration priority or slot name, slot conflict errors may occur. - Effort level display names are mapped by position, not by id; the same image may have different effort semantics across different models.
- Avatars are embedded as data URLs at build time; the tarball does not contain separate static assets.
- This plugin is a browser-side UI pipeline; it does not assemble or send provider requests and has no KV Cache effect.
Links¶
- The catalog page given in the materials:
https://www.skillhub.cn/plugins/flyemFSB/dsh-reasoning-effort-hdbzq - GitHub:
https://github.com/flyemFSB/dsh-reasoning-effort-hdbzq
The community catalog is an independent site and has no official affiliation with DeepSeek / High-Flyer.