Repository navigation
Releases
Releases · inxups/dsh-user-plugins
v0.1.0
First release. A dsh plugin pair (host + browser) that adds a My installed plugins tab to the dsh web GUI under Settings → Plugins.
It lists the packages installed into each dsh profile with dsh plugin --profile <name> add, showing the install spec, on-disk version, contributed kind, and each plugin's live loader phase — things the shipped Loader inventory does not report.
What it does
- Host half, zero runtime dependencies: scans
$DSH_HOME/profiles/*and serves a read-only snapshot atGET /dsh-user-plugins/api/list. - Browser half, platform modules only: a tab in
settings.plugins.tabbuilt from the platform's own UI atoms (Button,Input,Tag,StateDot), so it follows the GUI's design tokens and themes. - Shipped
@deepseek-ai/*packages are filtered out of the view; the endpoint still returns the complete snapshot. - Locale namespace
settings.userPluginswith Chinese and English dictionaries; the tab follows a live language switch without re-registration.
Install
dsh plugin --profile web add github:inxups/dsh-user-pluginsThen restart dsh. No build step and no profile configuration are required — the client bundle ships in the repository.
Verified
- 27 tests across three layers: 13 host (hermetic, fixture-driven), 12 client, 2 end-to-end against a real profile.
- CI runs the suite on Node 20 and 22, and rebuilds the client bundle to fail if the committed artifact has drifted from its source.
- Install path checked against pnpm 11 from a real git URL with no
allowBuildsconfiguration: the package resolves and both halves load.
Notes
- The two end-to-end tests read a real
~/.dsh; they skip themselves where no profile is installed. - Requires dsh with the web GUI profile, and Node 20+ to build from source.