packages/dsh-plugin-manager
zhu1090093659/dsh-web设置 → 插件 分区里的插件管理 Tab:从 npm/git 安装带进度、下次启动生效的启停开关、安装冲突对账可撤销、失败一键转交修复会话。
把 dsh 插件打包成场景配方:一次说清"我要一套 XX 环境",而不是一个一个装插件。V2EX 有人做过"插件组合索引"但没做成可安装插件——本插件把 recipe 做进 DSH 本体。
recipe 工具:list(浏览全部配方)→ search(按需求匹配)→ apply(展开配方:有序插件 + 安装命令)→ compose(多个配方合并去重)。dsh plugin --profile <profile> add dsh-recipe
| id | 名称 | 插件数 |
|---|---|---|
browser-dev-env | 浏览器开发环境 | 4 |
notification-suite | 通知全家桶 | 6 |
academic-writing | 学术写作套装 | 5 |
mobile-remote | 移动远程控制 | 3 |
security-hardening | 安全加固套装 | 4 |
memory-kit | 记忆持久化套装 | 5 |
fun-break | 娱乐休闲 | 4 |
model-routing | 模型路由优化 | 5 |
workflow-automation | 工作流自动化 | 5 |
market-manager | 插件市场管理 | 5 |
recipe 工具:
| action | 参数 | 行为 |
|---|---|---|
list | — | 列出全部配方 |
search | need | 按自然语言需求匹配配方 |
apply | recipeId 或 need | 展开配方:有序插件清单 + 安装命令序列 |
compose | recipeId(逗号分隔) | 合并多个配方为整套环境(去重、保序) |
"一键应用整套"输出即点菜单:逐条 dsh plugin add 命令 + 一行合并命令;模型可直接执行或交给用户确认。
lib/recipe.js(检索/展开/组合/命令序列)零依赖;lib/recipe-data.json(配方)+ lib/plugins.json(84 个插件目录,与 dsh-need-finder 同源)。{ id, name, nameZh, description, descriptionZh, tags, plugins: [{name, config?}] }——依赖顺序即数组顺序;compose 做并集去重,天然支持 DAG 化编排的前置。node test/recipe.test.mjs
MIT