V-dev-388/DSH-plugin-market
V-dev-388★ 0JavaScriptLast synced: 2026-08-15
DSH 插件市场:管理 HTTPS 插件仓库、校验下载并管理静态插件插拔。
README excerpt
DSH 插件市场 这是一个 DSH 插件包,包名为 @deepseek-ai/dsh-host-plugin-market 。它同时提供 Host 插件市场和 Web 设置页:用户可以在设置页添加 HTTPS 插件仓库、刷新目录、安装/移除插件,并对静态插件做启用/停用管理。 功能 - 管理用户添加的插件仓库,仓库状态保存在 $DSH HOME/plugins/market/repositories.json 。 - 下载前验证 HTTPS、manifest 字段、entry 路径和 SHA-256 校验和。 - 静态插件默认展示插拔状态,安装后默认停用,启用/停用写入 $DSH HOME/plugins/market/static.patch.yml ,下次启动 DSH 时生效。 - 动态插件默认只展示运行/停止状态;只有 manifest 声明 controllable: true ,且 Host 显式注入可释放的生命周期控制器时,才提供手动启动/停止。 - 不自动执行下载的插件代码;下载内容只写入已校验的安装目录。 仓库格式 仓库是一个 HTTPS JSON 文件,当前 schema 版本为 1 : 字段要求: - id : [a-z0-9][a-z0-9. -]{0,63} 。 - type : static 或 dynamic 。 - downloadUrl :必须为 HTTPS。 - checksum :小写 SHA-256 十六进制摘要。 - entry :相对路径,禁止绝对路径、反斜杠和 .. 。 - permissions 、 config 、 controllable 为可选字段。 安装 当前 DSH 主线还没有合并本插件所需的 Host 挂载逻辑。首次接入前,请先阅读 核心集成补丁,并把对应改动合入 DSH 核心。 核心补丁就绪后,把本仓库作为依赖加入 DSH 的 profile 或 web bundle,并让 dsh.bundle.patch 指向本包的 cordis.patch.yml : 然后在本包的 cordis.patch.yml 加入对应 bundle 层,或按你的 DSH profile 配置直接挂载 @deepseek-ai/dsh-host-plugin-market 行。 安全边界 - 仓库和下载地址都必须是 HTTPS。 - manifest 会校验版本、重复 ID、字段类型、路径穿越和 SHA-256。 - 下载先写临时目录,校验成功后原子替换安装目录。 - 静态插件只通过 Host 生成的 Loader patch 加载;动态插件不会自动启动任意下载代码。 开发与验证 npm run verify 会先运行静态验证,再执行 npm pack --dry-run 检查发布内容。本仓库的 lib/ 是已经生成的发布…
View full README on GitHub →