liujianqiao701/dsh-compat-vet ↗★ 0
dsh-compat-vet
DSH 插件兼容性体检:自动探测本机 dsh 版本与能力(含实测校准),适配任意 dsh 版本;启动时检查已装插件是否冲突,在 DSH 页面上给出中文预警与一键修复(隔离/卸载/升级),并提前预警「快要不适配」的插件 适合安装了较多插件的用户,用于自动探测版本兼容性并预警冲突。
Install
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:liujianqiao701/dsh-compat-vetREADME
Read the full README ↗从 npm 安装(给使用者的那条路)
已发布到 npm:dsh-compat-vet(latest = 0.3.1)
dsh plugin --profile web add dsh-compat-vet
源码仓库:liujianqiao701/dsh-compat-vet
「陌生人装上能不能用」是实测过的,不是推断:
node scripts/verify-tarball-install.mjs --from-npm dsh-compat-vet会在空白 profile 里用 dsh 自己的安装命令装registry 上那个包、真启动、取回页面横幅代码、再卸载干净(16 项)。 单测跑的是源码目录,而别人装到的是 npm 包 —— 两者不是一回事(files少一项就够让单测全绿而别人装完是坏的)。
关于名字(改过两次): 最初叫
dsh-plugin-doctor—— 但这个名字在 npm 上已经被别人占用(作者Xrainsmile,0.1.1), 生态里另有两个同名插件,所以第一次改成了dsh-compat-doctor(并以此名发布过一次)。 随后发现doctor/guard/health/sentinel这一族名字在插件目录里已经用滥 (dsh-doctor3 条、dsh-plugin-doctor3 条、dsh-plugin-guard2 条,dsh-plugin-sentinel、dsh-boot-guard、dsh-startup-guard、dsh-conflict-guardian等均已占用), 而compat在 4392 条目录里只被用过 2 次且都不是这个用途 —— 因此最终定名dsh-compat-vet。名字牵连的地方(客户端的模块 id 必须等于包名,否则 dsh 路由不到横幅)都已对齐:
package.json的name/bin、lib/client.js的模块 id、cordis.patch.yml的name、lib/index.js的name导出、页面接口前缀、横幅 DOM id、存储键、备份目录名、全部测试与文档。上架进度与投稿文件见
publish/:收录到插件市场(dshmarket 的清单来自 awesome-dsh-plugin) 需要往那边提一个 PR,加一个 YAML 条目;npm 发布与收录是独立的, 发不发 npm 都不影响收录,收录也不依赖 npm。