DSH Web GUI Plugin Control Center: Displays the installed plugins for the current profile in an aggregated card list, showing name, version, and description, and provides online enable/disable toggles.
Introduction¶
When developing agents with DeepSeek Harness (DSH), plugins are core components. Managing these plugins usually involves editing configuration files or restarting services. When disabling a plugin, simply removing the loading logic may leave plugin residue (for example, a pet plugin becoming an unresponsive “zombie”). This plugin aims to provide a visualized plugin management entry point through the Web GUI, solving issues of manual configuration maintenance and state synchronization.
Core Features¶
- Adds a top-level “Plugin Control” section to the settings page.
- Displays each Loader plugin entry as a card: name, version, description, and enabled status.
- Supports search and “Show installed plugins only” filtering.
- The online toggle writes directly to the profile-level
cordis.patch.yml, and takes effect hot via DSH’s existing HMR watcher. - Settings-aware toggle: For plugins that control their UI through their own settings (such as dsh-pet), disabling writes its setting toggle, ensuring the plugin truly disappears instead of leaving residue.
- Core infrastructure entries and this plugin itself cannot be disabled, preventing accidental operations.
Installation¶
Install it using the official CLI command:
dsh plugin --profile web add https://github.com/CloudFan-cyf/dsh-plugin-control
After installation, restart dsh web to load the new UI. Subsequent plugin toggle operations will use HMR hot updates and do not require another restart.
Typical Usage¶
- Restart
dsh web. - Open Settings → Plugin Control.
- View the installed plugins for the current profile in the card list.
- Click the toggle on a card to enable or disable the plugin.
Applicable Scenarios and Notes¶
- Applicable scenario: Web environment users who need to quickly view and manage the status of installed plugins.
- Layer conflicts: This plugin only manages the profile-level
cordis.patch.yml. If a patch with the same name exists in the home layer (~/.dsh/cordis.patch.yml), the user needs to handle it manually. - Comment handling: When rewriting the patch file, YAML comments may be normalized and lost, but the semantics are preserved.
- Security limits: The API path prefix is
/api/dsh-plugin-control, and only loopback + same-origin requests are allowed. - Permission requirements: The plugin runs with the permissions of the current dsh process; please review the source code and license before installation.
- Automatic backup: Before the first rewrite of the patch file, the system automatically backs it up as
cordis.patch.yml.dsh-plugin-control.bak.
Ecosystem Background¶
DSH’s philosophy is “everything is a plugin.” The community directory has no official affiliation with DeepSeek / High-Flyer. This plugin is maintained by community developer CloudFan-cyf and is licensed under the MIT License.