DSH Plugin Gating Hub:框架升级安全与插件版本门控

前言

DSH 框架采用「一切皆插件」的理念。在迭代框架版本或管理插件时,升级失败或版本不兼容往往导致服务中断,且现有的管理方式缺乏对供应链和兼容性的严格校验。DSH Plugin Gating Hub(原名 dsh-plugin-hub)旨在解决这些问题,提供框架升级的安全保障和插件版本门控机制。

插件简介

这是一个为 DSH 框架设计的升级安全与插件版本管理插件。它由 Noob-stupid 维护,采用 MIT 协议。插件核心价值在于:实现升级失败自动回滚、内置多源插件市场以及对供应链变更的严格检测。

核心功能

框架升级安全

插件提供一键升级能力,包含配置备份和全树回滚点。升级过程中若发生失败,系统会自动回滚整棵树;同时内置 15 分钟硬超时检测,防止进程卡死。

环境指纹检测

针对官方桌面更新器或手动 pnpm 造成的框架变更,插件通过环境指纹检测识别差异。只有具备硬证据(如包解析失败、file:// 目标丢失、启动失败日志中提及)时,才会强制禁用插件行;核心插件行不会被误禁。

插件升级门控

支持版本与声明门控(如 dsh.engines.framework、@deepseek-ai/* 范围),内置零依赖的 semver 引擎。安装脚本不会自动授权,且 pnpm 的供应链门控不会被绕过,确保升级不会静默引入不兼容组件。

合约预检与回滚点

在安装前执行数据驱动的合约预检(消息合约、依赖 API、配置 Schema 等),并生成全树回滚点,为异常恢复提供基础。

多源插件市场

内置发现层,支持 500+ 插件和 300+ 技能。支持自定义源,包括私有内网注册表、自定义搜索源、自托管索引源以及本地 Git 仓库,可实现纯内网或离线环境下的插件浏览与安装。

安装与启用

使用官方提供的安装命令添加插件:

dsh plugin --profile web add @noob-stupid/dsh-plugin-console

安装完成后,重启 dsh 服务,刷新页面,进入 设置 -> 插件 -> 插件控制台。

典型用法

在插件控制台中,可以执行插件安装、升级和适配操作。当升级失败时,点击「回滚到上版」按钮,系统会停止服务并恢复全树,确保环境快速回到稳定状态。

适用场景与注意

该插件适合需要严格管控框架升级风险和管理内部插件生态的管理员使用。插件以当前 dsh 进程权限运行,安装前建议检查源码与许可证。需要注意的是,这是一个非官方社区项目,Web 和 Desktop 均支持,且安装脚本不具备自动授权能力。

结尾

DSH Plugin Gating Hub 通过自动回滚和环境指纹检测,降低了 DSH 框架升级的试错成本。更多细节与源码可参考项目主页。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜