Introduction¶
DeepSeek Harness (DSH) adopts a “everything is a plugin” architecture. The official settings page provides a read-only plugin list, does not allow switching plugin states at runtime, and does not distinguish plugin hierarchies from different sources. When it is necessary to quickly enable or disable a plugin during development debugging, this mechanism can be inconvenient.
dsh-plugin-hotplug solves this problem. It is a hot-plug manager and an alternative plugin list UI. It replaces the official read-only list with a source-aware manifest and provides safe runtime control capabilities.
Plugin Information¶
- Name: dsh-plugin-hotplug
- Description: Hot-plug manager and alternative plugin list UI for DeepSeek Harness (DSH)
- Author: zhangnan
- License: MIT
Core Features¶
This plugin provides the following capabilities for list display and runtime control:
- Hierarchical grouping: Displays items grouped by the current profile, third-party Profile Bundles, the global layer, and DSH built-in plugins.
- Instant control: Enables or disables plugins from the current profile and third-party Bundles without restarting the DSH process.
- State persistence: Writes switch states into the current profile’s
cordis.patch.yml. - Lifecycle management: Implements reversible hot unloading and restoration based on the Cordis Loader lifecycle.
- State separation: Displays configuration state and runtime Fiber stage state separately in the UI.
- Safety protection: Protects Web transport, UI Shell, global plugins, and the manager itself from accidental removal.
Installation and Usage¶
- Install the plugin:
dsh plugin --profile web add -w dsh-plugin-hotplug
- After installation, restart the Web Profile to activate the manager.
- In the settings page, the plugin replaces the original read-only list tab and provides operable switches.
Applicable Scenarios and Notes¶
- Profile Patch plugins: Plugins inserted through the current profile’s Patch can be controlled with enable/disable switches.
- Third-party Bundles: Supports enabling or disabling third-party Profile Bundles.
- Hierarchy limitation: Because the profile patch layer takes priority over the global layer, global-layer plugins are displayed as read-only in the list. DSH built-in plugins are also read-only.
- Core protection: Web transport, the UI entry point, global plugins, and this plugin itself are always protected and will not be accidentally removed.
- State writing: The plugin writes persistent state to a small managed area instead of rewriting the entire user patch file.
Summary¶
This tool provides DSH users with more granular plugin management and addresses the limitations of the official interface. Through the hot-plug mechanism, plugin debugging and configuration management become more convenient.
- Plugin directory: https://www.skillhub.cn/plugins/zhangnan/dsh-plugin-hotplug
- Source code: https://github.com/zhangnan/dsh-plugin-hotplug