Install your first plugin
Add capabilities to AI like installing apps: read every segment of the install command, install the hugely popular open-design, and dodge the GitHub build-authorization trap.
6 min read
After this tutorial you will
- Understand how plugins get installed into DSH (it's one command)
- Be able to read and adapt install commands
- Have your first plugin installed and active
How plugin installation works
A DSH plugin is essentially a regular npm package, installed through the dsh plugin command. The experience is a lot like installing a phone app — except you type a command instead of tapping a button.
A typical install command:
dsh plugin --profile web add github:nexu-io/open-design
Piece by piece:
| Segment | Meaning |
|---|---|
dsh | The DeepSeek Harness CLI entry |
plugin | The plugin-management subcommand |
--profile web | Which profile to install into (web is the one almost everyone has) |
add | Install |
github:nexu-io/open-design | Install nexu-io/open-design from GitHub |
Which terminal? The one running dsh works, and so does a fresh terminal window — they're equivalent.
Where to find plugins
The plugin directory on this site indexes 4,000+ community plugins, sorted by stars and searchable, each with a detail page. Search engines work too — try "deepseek harness plugin" plus whatever feature you want.
Three rules of thumb when picking:
- Stars matter: high stars usually mean many users, so answers to problems are easier to find;
- Check freshness: DSH moves fast; a plugin untouched for six months may lag behind;
- Read the README: every plugin's detail page shows the full README — confirm it does what you expect before installing.
Hands-on: install open-design
open-design is the hottest plugin in the ecosystem (80k+ stars). With it, AI can produce slide decks, posters, and web mockups for you directly.
Step 1 — make sure dsh is running (the terminal window is open).
Step 2 — open another terminal and paste:
dsh plugin --profile web add github:nexu-io/open-design
Step 3 — wait for the install to finish, then restart dsh (Ctrl + C in the original terminal, run dsh web again) so the plugin loads.
Step 4 — refresh the browser and tell the AI: "make me a deck introducing DeepSeek Harness" — it will invoke the design workspace and deliver the files.
Install command variants
Every plugin's detail page on this site shows a copy-ready install command. They come in a few shapes:
# From GitHub (most common)
dsh plugin --profile web add github:nexu-io/open-design
# From npm (if published there)
dsh plugin --profile web add some-plugin-name
# From a local folder (when writing your own)
dsh plugin --profile web add ./my-plugin
The pattern is simple: add followed by the source. GitHub takes github:owner/repo, npm takes the bare package name, local takes a path.
The profile switcher at the top right of this site remembers your profile name and rewrites every install command shown here — set it first if you don't use the default
web.
Install fails? It's usually this one trap
When installing from GitHub, an error mentioning a prepare script or allowBuilds is pnpm's safety mechanism at work (DSH manages plugins with pnpm, which by default refuses to run build scripts of unfamiliar packages).
Two steps fix it:
- Note the package name in the error (e.g.
dsh-xxx), open~/.dsh/profiles/web/pnpm-workspace.yaml, and add:
allowBuilds:
dsh-xxx: true
- Re-run the
addcommand.
This is you personally authorizing "this package may run its build script on my machine." Grant it only to plugins you trust — when unsure, check the repository source and stars first.
For more failure scenarios (permissions, network, command not found), see the FAQ.
How many should I install
Start with "install on demand": when you catch yourself wishing for a feature, search the directory for it. Installing dozens at once slows startup and invites conflicts — the joy of DSH is assembling it like LEGO over time, not buying out the store.
Next up
More plugins means more management: how to upgrade, how to uninstall, how to clean up?