Understand, discover, and manage DeepSeek Harness plugins from one compact settings page.
DSH Plugin Center adds a native-looking workspace to Settings → Plugins. It turns the active Loader tree into a readable plugin inventory, adds GitHub discovery, and keeps common lifecycle actions close at hand.
- Reads the active DeepSeek Harness Loader tree instead of relying on the dependency file alone.
- Shows each module's effective enabled state, runtime phase, version, package name, repository, and description.
- Detects plugins disabled by a parent entry and separates built-in modules from user-manageable packages.
- Summarizes how many modules are loaded, running, and using a custom description.
- Opens the source repository directly when package metadata provides a valid GitHub URL.
- Uses the package description when one is available and creates a simple fallback when it is not.
- Lets you add separate Chinese and English descriptions to any currently loaded module.
- Prefers your description in the interface, while keeping its source visible as user, package, or generated text.
- Stores overrides locally in
$DSH_HOME/plugin-center/descriptions.jsonusing atomic file replacement.
- Finds up to 100 recently updated, non-archived repositories published under the
dsh-pluginGitHub topic. - Supports instant search across repository name, owner, description, category, and recommendation reason.
- Automatically groups projects into categories such as memory, interface, automation, vision, developer tools, and connectors.
- Shows Stars, category, and last update time, with direct links to each repository.
- Has no Stars limit by default; administrators can add an optional
maxStarsceiling. - Caches GitHub results for 10 minutes and provides a manual refresh button when fresh data is needed.
- Provides a shorter list for users who do not want to inspect every discovery result.
- Adds a plain-language reason and category to each selected project.
- Retrieves live repository descriptions, Stars, and update dates instead of storing stale copies.
- Skips unavailable repositories without breaking the rest of the collection.
- Installs plugins from an npm package name or
github:owner/repository[#ref]specifier. - Updates and removes non-built-in packages that belong to the selected DSH profile.
- Recognizes already installed discovery results and disables duplicate installation.
- Displays operation progress, command output, useful errors, and the required restart notice.
- Protects DeepSeek Harness foundation packages and Plugin Center itself from removal through the page.
- Runs one management operation at a time to avoid overlapping profile changes.
- Lives inside Settings → Plugins and follows the surrounding DeepSeek Harness visual language.
- Uses a compact list layout that works in standard and narrow windows.
- Inherits host colors for light and dark mode and respects reduced-motion preferences.
- Includes loading, empty, error, retry, confirmation, and disabled states for everyday failures.
- DeepSeek Harness with the
webprofile - Node.js 22 or newer
- Permission to restart
dsh webafter changing installed plugins
Open a terminal and run:
dsh plugin --profile web add github:cpp285/dsh-plugin-centerWait for the command to finish before continuing.
dsh --profile web --dump-configThis makes the new bundle entry available to the web profile.
dsh webIf dsh web is already running, stop the current process and start it again so the new plugin is loaded.
Open DeepSeek Harness, then go to:
Settings → Plugins → Plugin Center
The installation is successful when you can see the Installed, Discover, and Featured views shown in the screenshot above.
Run the following commands from the directory that contains this project:
dsh plugin --profile web add ./dsh-plugin-center
dsh --profile web --dump-config
dsh webThe local project is linked into the profile, which is useful while developing the plugin. No build step is required.
- Open Installed to review plugin status, versions, descriptions, repositories, updates, and removal actions.
- Open Discover to browse repositories published under the
dsh-pluginGitHub topic. - Open Featured for a shorter starter list.
- Use Edit description when an installed module needs a clearer explanation.
- Restart
dsh webafter an install, update, or removal when the interface asks you to do so.
- Plugin Center is missing: run the configuration command again, restart
dsh web, and reload the DeepSeek Harness page. - The page still shows an older version: perform a hard refresh after restarting the host.
- GitHub discovery is rate-limited: set
GITHUB_TOKENbefore startingdsh web.
The bundle defaults live in cordis.patch.yml:
config:
profile: web
allowMutations: true
trustedHosts: !!js ctx.webRuntime.trustedHostsOverride the row with id: dsh-plugin-center in your profile's cordis.patch.yml when you need different settings.
| Option | Default | Purpose |
|---|---|---|
profile |
web |
Selects the DSH profile to manage. |
maxStars |
unlimited | Optionally hides discovery results above a Stars threshold. |
allowMutations |
true |
Enables install, update, and removal actions. |
allowRemoteMutations |
false |
Allows management actions from non-loopback addresses when enabled. |
dshCommand |
dsh |
Sets the DSH executable path. |
trustedHosts |
Web defaults | Defines which Host values may access the Plugin Center API. |
GitHub applies a lower API quota to anonymous requests. Set GITHUB_TOKEN before starting dsh web if you need a higher quota. The token is used only by the host process and is never exposed to the browser.
- Install targets accept npm package names or
github:owner/repository[#ref]only. - URLs, local paths, and shell fragments are rejected.
- Plugin commands run as argument arrays without a shell.
- Management actions are limited to local requests by default.
- API requests validate Host, Origin, and cross-site request metadata.
- Only one lifecycle operation can run at a time.
- The interface asks for confirmation before running third-party plugin code.
npm test
npm run checkThe project is written in plain JavaScript and does not require a bundler.
Version 0.1.0 is the first public development release.
