Skip to content
dsh.fish
Bundle

dsh-plugin-hotplug

Hot-plug manager and replacement plugin inventory UI for DeepSeek Harness profiles.

Source
zhangnan
License
MIT
Updated
Updated 2 days ago

Readme

# dsh-plugin-hotplug

English | [简体中文](./README.zh-CN.md)

A hot-plug manager and replacement plugin inventory UI for DeepSeek Harness (DSH).

It replaces the official read-only plugin list in the settings page with a source-aware inventory and safe runtime controls.

## Features

- Groups plugins by the current profile, third-party Profile Bundles, the home-level global layer, and DSH built-ins.
- Enables or disables current-profile plugins and third-party bundles immediately.
- Persists toggle state in the current profile's `cordis.patch.yml`.
- Uses the Cordis Loader lifecycle for reversible hot unload and restore.
- Shows configured state and runtime fiber phase separately.
- Protects the Web transport, UI shell, global plugins, and the manager itself from accidental removal.
- Includes English and Chinese UI labels.

## Installation

```bash
dsh plugin --profile web add -w dsh-plugin-hotplug
dsh --profile web
```

This package is a two-sided DSH Profile Bundle. Its bundled patch mounts both host and client components and disables the official read-only inventory tab. Restart the profile after installation or host-side updates.

The plugin targets Web profiles because its client component replaces a settings-page tab.

## Source groups and controls

- Plugins inserted by the current profile patch can be toggled.
- Third-party Profile Bundles can be toggled.
- Home-level global plugins are listed as read-only because the profile patch layer is applied before the home layer.
- DSH built-in plugins are listed as read-only.
- Core Web transport and UI entries, plus this plugin itself, are always protected.

Runtime changes use `ctx.loader.update(...)` so Cordis disposes or restores plugin effects through its normal lifecycle. Persistent state is written as a small managed section instead of rewriting the entire user patch.

## Uninstallation

```bash
dsh plugin --profile web remove dsh-plugin-hotplug
```

Restart the profile after removal so the official inventory tab is restored from the Web bundle.

## License

MIT

Install

dsh plugin --profile web add github:zhangnan/dsh-plugin-hotplug

Profile: web

  • This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.
Source