DshMarketPlace/dsh-plugins-store
Browse and install DSH plugins from inside DeepSeek Harness. /store, a settings tab, and agent tools — bilingual.
已收录
1
Market
Bundle 已验证
预览
功能介绍
不离开 harness 就能找插件、装插件:/store 命令、设置页的插件标签页、两个可供 agent 调用的工具和一个随包技能,安装前先确认并列出检测到的风险项。
适合
- 希望直接在会话或设置界面中查找并安装插件的 DSH 用户。
- 需要由 Agent 搜索、安装插件,并在风险项确认后继续的工作流。
不适合
- 要求每个目录条目都经过安全审计的用户;该目录明确不提供此类保证。
- 无法指定 DSH profile 的环境,因为安装时必须明确提供 profile。
- 完全离线的工作流;目录搜索需要访问公共目录 API。
README
· 简体中文
Browse and install DeepSeek Harness plugins from inside DSH, in English or Chinese. Backed by DSH Marketplace, which writes a page per plugin rather than linking straight out to GitHub.
The npm package is
dshmarketplace-plugin; this repository isdsh-plugins-store. The names differ because the shorter one was taken.
Install
dsh plugin --profile web add dshmarketplace-plugin
Then /store in any session, or Settings → Plugins → Plugin store.
--profile is not optional. dsh plugin forwards to pnpm inside a profile
directory, so dsh plugin add x exits with required option ‘–profile
<name>’ not specified and installs nothing. Swap web for your profile if
you run another one.
What it does
/store |
Opens the catalogue over the session — search by capability, see what each plugin reaches, install without leaving the harness. |
| Settings tab | The same catalogue, docked under Settings → Plugins. |
| Agent tools |
dshmarketplace_search and dshmarketplace_install, so “find me a memory plugin and set it up” works in conversation. |
| Bundled skill | Teaches the agent to search rather than recall a plugin name from training data — for an ecosystem this young, a remembered name is usually wrong. |
| Bilingual | Every listing carries a hand-written English and Chinese description. The plugin follows your DSH language setting, live. |
Safety
Plugins run with your agent’s permissions, and a listing is not a security review. Three things this plugin does about that.
Install commands are validated, never interpolated. The catalogue supplies a
command already built; src/installer.js accepts only a bare npm specifier or
github:owner/repo, refuses anything containing .., and passes arguments as an
array rather than through a shell. If the catalogue were ever compromised, the
blast radius stops there. tests/installer.test.js covers that boundary
specifically — writing it found a real hole, since ../../etc/passwd is only
word characters, dots and slashes.
The browser half cannot reach the shell. It talks to two exact-path local endpoints, and the install endpoint takes a catalogue entry rather than a command, so the client cannot widen what runs.
Risk flags gate both paths. Listings carry detected install script,
terminal surface and requires credentials flags. Anything flagged stops for
an explicit confirmation, in the UI and on the agent path alike — and the
confirmation says plainly that an empty list would not have meant it was safe.
Privacy
The plugin sends exactly one thing anywhere: after a successful install, the plugin’s public identifier, so install counts are real. No machine id, no session id, no user, no query, no telemetry of any other kind. Searches go to the public catalogue API in order to answer them and carry no identifiers.
DSHM_NO_TELEMETRY=1 # disables the install count entirely
DSHM_API=https://… # point at a different catalogue
Development
npm install
npm test # the install-command boundary, and catalogue helpers
npm run build # esbuild → lib/index.js (node) and lib/client.js (browser)
The browser bundle may only require react and
@deepseek-ai/dsh-client-ui-primitives, and must announce itself through
window.__ModuleLoader__.load. build.mjs enforces both against the emitted
code before writing it, so an unsupported import fails here instead of inside
someone else’s harness.
Related
- dshmarketplace.dev — the catalogue, with a written page per plugin
-
dshmarketplace-cli— the same catalogue for coding agents outside DSH -
GET /api/v1/plugins— the public API all three read
Contact
- Community — LINUX DO
- Issues — GitHub Issues
Acknowledgements
- LINUX DO — where the DSH ecosystem is actually being discussed, and where this project is published and takes its feedback. Plugins whose authors posted them there carry a verified badge in the catalogue.
- awesome-dsh-plugin (CC0-1.0) — the community registry the catalogue is seeded from.
- ZASENJC/dsh-plugins-store (MIT) — reading its source is how the DSH client plugin API was worked out. No code was copied; the manifest shape, the two entry points and the slot names are public interface, and having them written down saved a lot of guessing.
License
MIT. Independent project, not affiliated with DeepSeek. DeepSeek and DeepSeek Harness are marks of their respective owner, used here only to describe what this plugin is for.
常见问题常见问题
在启用了 DSH 的终端中执行已验证命令 dsh plugin --profile default add github:DshMarketPlace/dsh-plugins-store。命令会解析公开 package 元数据,并保持插件与本页展示的目录身份一致。
兼容性以页面上展示的 bundle 与 profile 状态为准。如果某个 profile 尚未检测到,请先保持禁用,并在生产启用前阅读仓库文档。
GitHub 链接和 activity 元数据是 release 与维护状态的来源。新版本发布后重新查看本页,确认目录已经观察到最新版本。