huguangyu666/dsh-store

dsh 插件商店:npm 权威目录 + awesome 精选(550+ 插件、11 分类)、dsh 字段质量验证、官方 `dsh plugin add/remove` 一键安装,侧边栏与设置页入口。

Bundle 已验证 MIT JavaScript 未知
Bundle 已验证

已收录

4

Market

Bundle 已验证

版本未知
语言JavaScript
许可证MIT
在 GitHub 查看

功能介绍

dsh 插件商店:npm 权威目录 + awesome 精选(550+ 插件、11 分类)、dsh 字段质量验证、官方 `dsh plugin add/remove` 一键安装,侧边栏与设置页入口。

适合

  • 希望在统一界面中发现、筛选、比较并安装插件的 DSH 用户。
  • 希望在管理 profile 前验证 npm 包并识别已安装插件的管理员。
  • 需要定期检查更新,或启用、停用、安装和卸载插件的工作流。

不适合

  • 已经明确知道所需包、并愿意直接使用官方 DSH 插件命令的用户,收益有限。
  • 要求对仅收录于 GitHub 的精选条目一键安装的工作流;这类条目只提供 GitHub 跳转。
  • 无法访问 npm 和目录数据源、且要求目录始终即时更新而非使用缓存的环境。

README

dsh-store

Awesome DSH Plugin

已收录于 awesome-dsh-plugin 精选列表(Development & Runtime)

DeepSeek Harness 插件商店:上游基础设施。聚合 npm registry + awesome 精选 + GitHub 星标的 dsh 插件目录,质量验证 + 分类 + 星标排序,在 dsh 内一键安装 / 卸载(走官方 dsh plugin add/remove),装完重启即生效。

与社区其他商店的差异

能力 dsh-store 社区其他商店(dsh-market / plugin-hub / workshop 等)
数据源 npm registry 权威源(插件实际安装处)+ awesome 精选 + GitHub 星标 多为 GitHub topic / awesome 目录(二手源、含蹭话题噪声)
质量验证 dsh 字段后台验证,自动剔除噪声(250→222 实测) 无
安装 官方 dsh plugin add/remove(dsh.profile.bundles 层,与命令行等价),失败自动回退 pnpm + patch 多为 clone / 手改 patch
可安装性 目录里每个 npm 条目都能真的装上 GitHub-only 列表装上即报错
已安装识别 三源合并(bundles + dependencies + patch) 大多无
客户端 侧边栏按钮 + 设置页分区 + 完整页面 部分有设置页

功能

  • 聚合目录:npm registry 关键词精确搜索(keywords:dsh-plugin)+ awesome-dsh-plugin 精选(324 个,11 分类)+ AdamPlatin123 自动雷达(运行级验证)+ GitHub 星标合并,750+ 插件
  • 精选叠加:awesome 人工精选插件打「精选」徽章 + 分类;雷达验证通过的显示「雷达验证」徽章;未上 npm 的精选显示 GitHub 跳转
  • 质量过滤:后台验证每个包的 package.json 是否有 dsh 字段(真插件标记),剔除噪声
  • 一键安装:官方 dsh plugin add(自动 reconcile dsh.profile.bundles),失败回退 pnpm add + patch 合并
  • 一键卸载:官方 dsh plugin remove,自动清理 patch 残留
  • 已安装管理:已安装插件可一键「停用 / 启用」(写 cordis.patch.yml 的 disabled,HMR 实时生效,无需重启)
  • 更新检查:一键检查所有已安装插件是否有新版本,列出可更新项,一键更新
  • 详情 README:点插件详情异步加载 README 摘要(本地优先,npm 兜底)
  • 一键重启:装完需要重启的改动提供一键重启
  • 命令:/plugin-store(摘要)、/plugin-install <包名>(直接安装)

安装

npm i dsh-plugin-store

profile patch(~/.dsh/profiles/<profile>/cordis.patch.yml):

- insert:
    - id: plugin-store
      name: 'dsh-store'

或者官方命令:dsh plugin --profile web add dsh-store。

重启 dsh,打开 http://<dsh地址>:<端口>/plugin-store。

使用

  • 浏览:搜索 / 分类筛选 / 按星标·最新·名称排序,卡片显示精选徽章、描述、作者、版本、星标
  • 安装:点「安装」→ 官方 dsh plugin add → 点「立即重启」生效
  • 已安装管理:已安装插件显示「停用 / 启用」按钮(写 cordis.patch.yml 的 disabled,HMR 实时生效,无需重启)
  • 更新检查:顶部「检查更新」按钮 → 列出可更新插件 → 一键更新
  • 详情:点卡片看完整描述、分类、README 摘要与仓库链接;未上 npm 的精选跳 GitHub
  • 命令行:/plugin-install dsh-plugin-xxx
配置

~/.dsh/plugin-store/config.json:

{ "proxy": "http://127.0.0.1:7892", "profile": "web" }
字段 说明
proxy GitHub API 代理(国内环境需要);环境变量 DSH_PLUGIN_STORE_PROXY 可覆盖
profile 安装目标 profile(默认 web);环境变量 DSH_PLUGIN_STORE_PROFILE 可覆盖

目录缓存 24h(~/.dsh/plugin-store/catalog.json),页面「刷新目录」强制更新。

数据源与质量

源 用途
registry.npmjs.org/-/v1/search?text=keywords:dsh-plugin 插件清单(权威,可安装)
awesome-dsh-plugin 精选列表 分类 + 精选徽章(324 个,人工审核)
api.github.com/search/repositories?q=topic:dsh-plugin 星标 / 仓库 / 更新信息合并
AdamPlatin123/awesome-dsh-plugins 雷达 运行级验证状态(✅ 运行级可用等,194+ 条目)

质量验证:安装前后台逐个 GET 每个包的 /latest 检查 dsh 字段(缓存 7 天),无该字段的剔除——npm 关键词搜索会混入蹭关键词的包,这个过滤保证目录里都是真插件。

架构

┌─ dsh-store ─────────────────────────────────────────────┐
│ host:catalog 引擎(npm + awesome + 雷达 + GitHub → 合并 → 验证 → 缓存)│
│       安装引擎(官方 dsh plugin add/remove → 回退 pnpm + patch)│
│       API:/plugin-store/api/{catalog,refresh,install,uninstall,restart} │
│ client:侧边栏「插件商店」按钮 + 设置页分区(--dsw-* 变量) │
└────────────────────────────────────────────────────────┘

无外部运行时依赖(curl 为 Windows 自带;pnpm 走 PowerShell shim 解析;官方 dsh plugin 路径自动注入代理)。

开发

npm run build      # esbuild 构建 lib/index.js + lib/client.js
node test-mock.mjs # mock + 集成测试(隔离 profile,真实 pnpm 安装/卸载,22 项)

许可

MIT

常见问题常见问题

在启用了 DSH 的终端中执行已验证命令 dsh plugin --profile default add github:huguangyu666/dsh-store。命令会解析公开 package 元数据,并保持插件与本页展示的目录身份一致。