Before You Install a DSH Plugin
DeepSeek Harness is built around named profiles. A profile is the composition that boots for a particular surface or workflow, and it owns its out-of-tree plugin dependencies. That means the first installation decision is not only which plugin to add, but which profile should receive it.
The official distribution includes Web and headless profile templates. Community projects may target those profiles or introduce their own profile such as a terminal UI. Read the plugin page or repository first and use the profile named by the author.
- Confirm the target profile: web, headless, TUI, or another named profile.
- Check the package or Git install target documented by the plugin author.
- Review the plugin version, license, repository activity, dependencies, and security signals before executing third-party code.
- Remember that DeepSeek Harness is currently in developer preview, so plugin compatibility can change between releases.
Install a Plugin with dsh plugin
The product CLI exposes a plugin-management mode that selects a profile and forwards the remaining package-manager arguments into that profile directory. In practice, the common operation is add followed by the package or Git spec.
If the dsh executable is already available on your PATH, use the short form. If you normally launch Harness through npm, the same command can be run through npx.
dsh plugin --profile web add <package-or-git-spec>npx -y @deepseek-ai/dsh plugin --profile web add <package-or-git-spec>Use the exact target from the plugin author or the DSH Plugin Registry. A package name and a GitHub spec are not interchangeable unless the project supports both.
npm Package vs GitHub Plugin Spec
Published plugins commonly install from npm, while some community plugins are installed directly from a Git repository. Because the DSH plugin command delegates package management to pnpm, package specs supported by pnpm can be used when the plugin documentation provides them.
npm package
Best when the author publishes versioned releases to npm. It gives you a clear package name and normal package-manager version resolution.
GitHub / Git spec
Useful for repositories that are installed directly from source or publish a specific plugin path. Follow the repository’s documented spec exactly.
Verify What the Profile Will Load
After installation, inspect the composed profile instead of assuming that a successful package download means the plugin is mounted correctly. The config dump shows the plugin tree after bundle layers and user patches have been composed.
- Look for the plugin or the rows inserted by its bundle patch.
- Confirm the profile named in the install command matches the profile you actually boot.
- Restart a long-running profile after installing or removing a plugin unless the project explicitly documents hot-loading behavior.
- Run any plugin-specific health check or verification command supplied by the author.
dsh --profile web --dump-configdsh webRemove or Troubleshoot a DSH Plugin
The plugin command forwards pnpm-style operations, so the same profile-scoped workflow can remove a package or explain why a dependency is present. When troubleshooting, separate package installation from composition: a package can exist in the profile while its bundle or patch still fails to load.
- Package not found: verify the npm or Git spec and whether the author publishes that target.
- Plugin installed but absent from the tree: inspect package dsh.bundle metadata and the composed config.
- Plugin loads but the feature is missing: verify you installed it into the profile that owns the required UI or runtime services.
- Breakage after a Harness update: compare the plugin’s supported DSH versions and current peer dependencies.
dsh plugin --profile web remove <package>dsh plugin --profile web why <package>A Practical DSH Plugin Install Checklist
1. Pick the profile
Install into the same profile you will boot: Web, headless, TUI, or another composition.
2. Use the documented target
Copy the npm package or Git spec from the plugin’s current source documentation.
3. Inspect the tree
Run --dump-config and verify the expected plugin rows are present before relying on the feature.
4. Check runtime evidence
Review plugin-specific health checks and version compatibility evidence when it is available.
Primary references
This guide is grounded primarily in the current DeepSeek AI Harness repository and development documentation. Harness is still in developer preview, so exact commands and contracts can change with later releases.