kimiya1010/dsh-plugin-market
A DeepSeek Harness plugin market: search and one-click install GitHub dsh-plugin plugins straight from the web GUI
已收录
1
Market
Bundle 已验证
功能介绍
DeepSeek Harness 插件市场:在 Web 界面里搜索并一键安装 GitHub 上的 dsh-plugin 插件。
适合
- 希望不使用命令行即可发现 GitHub 上 DSH 插件仓库的 DSH Web 用户。
- 希望一键安装、卸载并查看已安装第三方插件的用户。
- 将仓库发布到 GitHub dsh-plugin 主题下、希望被市场检索到的插件作者。
不适合
- GitHub 之外的插件目录,或未标记 dsh-plugin 主题的仓库。
- 不能允许安装并执行第三方仓库代码的安全敏感环境。
- 要求安装来源不可变、但又未将 GitHub 安装规格固定到具体提交的工作流。
README
dsh-plugin-market
| *English | 简体中文* |
A DeepSeek Harness (DSH) plugin that lets users search for and install other plugins directly from the web GUI — no need to drop to a command line.
It adds a “Plugin market” tab under Settings → Plugins:
- 🔍 Search GitHub repositories tagged
dsh-plugin(sorted by stars) - 📋 Show each plugin’s name, description, and star count, with a link to its GitHub repo
- ⚡ One-click install (internally runs
dsh plugin --profile web add github:owner/repo) - 🗑️ One-click uninstall of installed third-party plugins
- 📦 List the plugins currently installed in the profile (
dsh.profile.bundles)
Install
Install it like any other DSH bundle:
# Install into your web profile straight from GitHub
dsh plugin --profile web add github:kimiya1010/dsh-plugin-market
# Restart the web GUI to activate it
dsh web
Or from a local checkout:
dsh plugin --profile web add ./dsh-plugin-market
Note: this plugin is plain JavaScript with no
preparebuild script, so agithub:install needs noallowedBuildsentry — it works out of the box.
Directory layout
dsh-plugin-market/
├── package.json # dsh.bundle (patch layer) + dsh.client (browser half) declaration
├── cordis.patch.yml # inserts the loader row into the composition
├── index.js # Host half: registers the /api/plugin-market HTTP bridge + search/install/uninstall
└── client.js # Client half: Settings "Plugin market" tab UI
How it works
-
Host half (
index.js): injects thewebServerservice and registers a same-origin prefix route/api/plugin-market:-
GET /api/plugin-market/search?q=<keyword>— calls the GitHub Search API (topic:dsh-plugin) -
POST /api/plugin-market/install(body{ "spec": "github:owner/repo" }) — runsdsh plugin add -
GET /api/plugin-market/list— reads the profile’sdsh.profile.bundles -
POST /api/plugin-market/remove(body{ "name": "…" }) — runsdsh plugin remove
-
-
Client half (
client.js): registers the “Plugin market” page into thesettings.plugins.tabslot and calls the HTTP bridge over same-originfetch, rendering the search box, result list, install/uninstall buttons, and the installed list.
Because the bridge lives on the port the web GUI itself listens on (same origin), there is no cross-origin issue and no change to the framework’s own Remote descriptors.
Publishing your own fork
Push this repo to your own GitHub and tag it with dsh-plugin
so other users’ plugin markets can find it. You can also publish to npm:
npm publish --access public
Security note
Installing a third-party plugin runs its author’s code on your machine (a prepare script may run
at install time, and the bundle is loaded at runtime). Only install plugins from sources you trust,
and pin to a commit (github:owner/repo#<sha>) when you want to prevent upstream changes from
silently altering behavior.
License
MIT
常见问题常见问题
在启用了 DSH 的终端中执行已验证命令 dsh plugin --profile default add github:kimiya1010/dsh-plugin-market。命令会解析公开 package 元数据,并保持插件与本页展示的目录身份一致。
兼容性以页面上展示的 bundle 与 profile 状态为准。如果某个 profile 尚未检测到,请先保持禁用,并在生产启用前阅读仓库文档。
GitHub 链接和 activity 元数据是 release 与维护状态的来源。新版本发布后重新查看本页,确认目录已经观察到最新版本。