dsh plugins vs dsh plugin: 4 search intents and entry points
The difference between dsh plugins and dsh plugin is not grammar; it is what you want to do when you type it: find, install, check commands, or read source. Four intents, four entry points. Choosing the wrong entry point produces "I found it but cannot install it" or "I installed it but cannot find it."
Start with the results: what each term points to
Put the four common spellings side by side and the difference is obvious. This is not random search behavior; it comes from page titles, repository naming, and command docs.
| Search term | More common target | Typical page |
|---|---|---|
| dsh plugins | Lists, collections, ecosystem overviews | Market categories, roundups, GitHub topic |
| dsh plugin | Commands, a single plugin, installation | CLI docs, plugin detail, install guides |
| dsh-plugin | Package and repository prefix | npm package page, GitHub repository |
| dsh 插件 | Chinese explanations and introductions | Concept articles, Chinese tutorials |
The plural feels like browsing; the singular feels like doing. When you search dsh plugins, you usually have not decided which plugin to install. When you search dsh plugin, you usually have a specific action in mind.
The hyphenated form is an identifier, not natural language. dsh-plugin appears in package names, repository names, and topics. Its job is to identify, not to describe. Searching articles with it tends to produce noisier results.
Intent one: finding plugins, start in the market
The first entry point for discovery is DSH Plugin Hub, not a search engine. It lives under Settings, Plugin Market, and puts category, search, source, and compatible version on the same card (source).
- Open Settings, Plugin Market, and narrow by category first: memory, browser, interface, model, tools.
- Search within the category by Chinese name, English name, or package name; each has a different hit rate.
- Read the card's source, version, update time, and verification status to rule out a same-name plugin from another author.
- Open the detail page, then copy the install command or install directly.
Off-site search is for discovery, not confirmation. Searching dsh plugins returns blog posts, roundups, and GitHub topics, but these pages rarely include compatible versions or verification status. Discovery ends with a check in the Hub or repository.
Chinese terms help with introductions; English terms help with precision. dsh 插件 tends to return explanatory articles, while dsh-plugin returns repositories and package pages. Knowing your stage prevents using an introduction as an installation source.
Intent two: installing, trust the command
The reliable entry point for installation is the dsh plugin command family. Buttons, copied commands, and one-click installs all end at that command (source).
- Confirm the target profile: dsh plugin --profile web list should list state for that profile.
- Install with dsh plugin --profile web add <package-or-reference>; a package name comes from npm, and a reference can be github:owner/repo.
- Restart after installation so the plugin registers during startup.
- Verify with list and dsh --dump-config: the package is listed and the config tree contains its section.
Omitting --profile is the most common mistake. The command falls back to the default profile while you look for the entry in another environment, then conclude it did not work. Confirm the profile first.
The command and the plugin name look alike but behave differently. dsh plugin add is an action; dsh-plugin-xxx is an identifier. When an article mixes them, trust the command line: the line you can paste and run is the installation entry.
Intent three: checking commands, ask the CLI
Do not search articles for command syntax; ask the CLI. Versions change and old articles go stale, while --help always matches the installed version.
- Run dsh plugin --help to see the subcommands supported by your version.
- Run dsh plugin add --help to see installation and profile options.
- Copy an example into a non-critical profile and try it.
- Record the version number so you can compare with article syntax later.
Help text is shorter than articles but more accurate. Articles omit version prerequisites; help does not. When an article says an option exists but the CLI rejects it, check help before deciding whether the article is outdated.
Write your own cheat sheet. Install, list, remove, and update cover daily use. Writing them down beats searching every time and protects you from inconsistent article syntax.
Intent four: reading source, go to GitHub and npm
The entry point for source is the repository, not the market. The market shows metadata; the repository has implementation, commits, and issues (source).
- Use the source label on the Hub detail page to confirm owner and repository name.
- Open the repository and read the README install section and compatible version, then check engines and dependencies in package.json.
- For troubleshooting, read issues and commits to see whether a problem is fixed and in which version.
- To install an unreleased build, use a github: reference instead of an npm package name.
Same-name repositories are common; owner is the unique key. Names like dsh-memory or dsh-browser may have several implementations. Checking only the name leads to installing the wrong one.
npm pages confirm versions; GitHub pages confirm implementation. When they disagree, trust the repository's package.json and release notes; the npm latest tag can lag behind.
Three places where the wrong entry point hurts
Most "found it but useless" cases fall into three buckets. Each has a clear diagnostic action.
- Installed into the wrong profile. The article told you to install into web, but you look in the desktop app. Run list in both profiles to see where the package landed.
- Mistook the display name for the package name. Display names can repeat; package names and owners cannot. Compare the source label and install command on the detail page.
- Treated an index as real time. There is a delay between a repository appearing and the Hub indexing it. Search GitHub topics or npm first, then check the Hub again.
All three share one pattern: the entry point does not match the goal. Finding used a command entry, installing used an article entry, and source reading used a market entry. The actions were fine; the entries were wrong.
One table for intents and entries
Keep this table nearby when you are unsure.
| What you want to do | Which entry | Success signal |
|---|---|---|
| You do not know what to install | Browse DSH Plugin Hub categories | You can name two or three candidates and their sources |
| You have a package name | dsh plugin --profile web add | The package appears in list |
| You forgot a command option | dsh plugin --help | The subcommand exists in this version |
| You want to confirm implementation | GitHub repository | You can see the apply entry and engines |
| You need to pin a version | npm page or repository release | The install command includes a version |
Pick the right entry and the following actions make sense. The same word pointing to different entries at different stages is normal search-intent layering, not contradiction.
Next steps
Decide the intent, then open the matching entry. To find plugins, go to DSH Plugin Hub. To install, read How to install a DSH plugin. To understand plugin versus plugin package, read What dsh plugins really means.
Sources: dsh CLI README, DeepSeek Harness docs - Your first plugin, GitHub topic: dsh-plugin, DSH Plugin Hub plugin page
FAQ
dsh plugins and dsh plugin return different results because the intents differ: the plural points to lists, collections, and repository topics, while the singular points to commands, one plugin, and installation. Search engines map word form and page titles onto those intents.
DeepSeek Harness plugins are easier to find in DSH Plugin Hub, which organizes them by category and shows source and compatible version. External search is useful for discovering new repositories, but you still verify in the market or repository.
dsh plugin means different things by context: in a terminal it is a command family followed by subcommands such as add, list, and remove, while in a package or repository name, dsh-plugin is a prefix. Spaces and arguments signal a command; hyphens and an owner signal a package.
A same-name dsh plugin page must be verified on three points: owner and repository name, package name, and compatible version. Only owner and package name uniquely identify the source, so copy the install command from that page rather than trusting the display name.
Related Terms
- dsh plugin
- dsh plugin has two meanings: the plugin command family in the terminal and the naming prefix used in package and repository names.— dsh CLI README
- plugin market
- The plugin market is the built-in discovery interface in DeepSeek Harness, showing community plugins by category and keyword with source and compatible version.— dshplugin/dsh-plugin-hub
- GitHub topic
- A GitHub topic is a public repository label; the dsh-plugin topic groups scattered plugin repositories into a browsable list.— GitHub
- profile
- A profile is the target environment for plugin installation; web, headless, and desktop are independent, and omitting the profile installs into the default one.— dsh CLI README
Sources
- dsh CLI README· deepseek-ai
- DeepSeek Harness docs - Your first plugin· deepseek-harness
- GitHub topic: dsh-plugin· GitHub
- DSH Plugin Hub plugin page· dsh-plugin.org