Introduction¶
The philosophy of DSH is “everything is a plugin”. Under the web profile, plugin installation, start/stop, uninstallation, and finding new plugins usually start from the command line or configuration. dsh-plugin-studio puts this entry point into the Web settings page: it manages installed plugins grouped by official/community and includes a built-in GitHub plugin market.
What is this¶
- Package name:
dsh-plugin-studio - Version:
0.3.1 - License: MIT
- Repository path:
fazhu4/dsh-plugin-studio - Note: Information has been scraped, and no explicit maintainer field is provided, so it is not written as a definitive maintainer here.
It targets the DSH 0.1.0 series (web profile) and solves the problem of “viewing installed plugins, one-click start/stop, viewing details, uninstalling community plugins, and searching for and installing new plugins from GitHub within the Web settings page.”
Plugin Management¶
Grouping and Search¶
The plugin management page displays installed plugins grouped by official/community and supports searching.
Descriptions and Details¶
It includes a built-in Chinese/English description library for 129 packages; for unlisted packages, it falls back to the English package.json description. The details panel displays version, homepage, repository, license, and README summary.
Start/Stop and Protected Lines¶
One-click start/stop writes to the user patch layer cordis.patch.yml, and DSH configuration hot reload takes effect in about 1-3 seconds. Hot-loaded and core plugins on the Web service chain belong to protected lines and are prohibited from being switched on/off or uninstalled.
Uninstalling Community Plugins¶
Community plugin uninstallation uses pnpm remove and synchronizes the bundle layer; it is completely removed after restarting the service.
Plugin Market¶
Leaderboards and Search¶
The plugin market is based on GitHub and provides high-favorites, fastest-growing leaderboards, and search.
- High Favorites are sorted by the full GitHub
dsh-plugintopic and may include official main repositories, such asdeepseek-ai/deepseek-harness. - Fastest Growing is an approximate metric: newly created repositories in the last 90 days sorted by stars.
- GitHub search is rate-limited without a token: 10 times/minute, results cached for 60 seconds.
- If repository root
package.jsondetection or npm registry detection fails, the card degrades to a “GitHub Install” label.
One-click Add and Enable¶
After selecting a plugin, one-click add and enable will execute npm installation to the profile and automatically synchronize the bundle layer; it takes effect after restarting the service.
Installation and Enablement¶
Requirements¶
- DSH 0.1.0 series (
webprofile) pnpm(dependency fordsh plugin)
Installation Commands¶
Install a published package from npm:
dsh plugin --profile web add dsh-plugin-studio@0.3.1
Install from a local repository, building is recommended first:
dsh plugin --profile web add file:/path/to/dsh-plugin-studio
When installing from GitHub, you need to use the actual repository path; the example uses a placeholder:
dsh plugin --profile web add github:<your-name>/dsh-plugin-studio
Enabling Entry Point¶
After installation, restart the dsh service, then refresh the page and enter:
- Settings
- Plugins
- Plugin Management / Plugin Market
Typical Usage¶
- View installed plugins: view them grouped by official/community in plugin management, search for package names, and open the details panel to confirm version, homepage, repository, license, and README summary.
- Start/stop plugins: perform one-click start/stop on actionable plugins; it writes to the user patch layer
cordis.patch.yml, and DSH configuration hot reload takes effect in about 1-3 seconds. Protected lines are hard-blocked. - Install new plugins: select a leaderboard or search in the plugin market. After seeing the card, first confirm the repository and installation method; one-click add and enable will npm install to the profile and synchronize the bundle layer, taking effect after restarting the service.
- Uninstall community plugins: uninstallation uses
pnpm removeand synchronizes the bundle layer; after success, it is immediately hidden from the current list, and runtime removal is completed after restarting thedshservice.
Use Cases and Notes¶
Suitable for people who want to maintain multiple plugins in the DSH web profile and wish to complete viewing, start/stop, searching, and installation within the Web settings page.
Notes:
- Plugins run with the permissions of the current
dshprocess; you should check the source code and license before installation. - Installation/uninstallation is equivalent to the CLI
dsh plugin add/remove, andpnpmperforms full TLS validation. - All HTTP routes are restricted to loopback address access only.
- Protected lines are hard-blocked from being switched on/off or uninstalled.
- Package names, runtime plugin IDs, HTTP routes, and local grouping storage files all use
dsh-plugin-studio.
Links¶
- Directory page: https://www.skillhub.cn/plugins/fazhu4/dsh-plugin-studio
- GitHub: https://github.com/fazhu4/dsh-plugin-studio