用途
plugin-fast-adapt 用于把 DSH 插件适配到新版 DSH,并核查破坏性变更。它同时提供从零造插件的脚手架,以及插件性能与架构审计能力。
主要能力
- 环境探测:
scripts/env-doctor.mjs检查本机 DSH 版本、覆盖层旧包、共享农场悬空软链、两层 patch、已装插件与启用就绪度,包含宿主半与客户端半的激活诊断。 - 定版本:
scripts/guide-sync.mjs读取 npm dist-tags(latest / next / alpha),判断本机在官方通道中的位置,给出目标版本;--check可零参数轮询上游。 - 取差异:
guide-sync.mjs --clone获取目标版本的官方升级指南,优先复用本机已有 harness clone。 - 查命中:
scripts/code-scan.mjs扫描插件代码,按官方变更条目匹配,输出带出处锚点(guideFile/guideLine)与 severity 的命中。 - 接缝查询:
scripts/seams.mjs对某个包名或 API 符号,在官方指南锚点表与本机宿主 node_modules 之间做双源结论。 - 一键编排:
scripts/run.mjs依次执行环境、定版、指南、扫描、体检、冒烟、typecheck,输出统一 JSON 报告,并写入本地运行日志。 - 秒验:
scripts/quick-smoke.mjs用内存模拟 Cordis 上下文,动态载入插件入口,验证加载、apply 与注册。 - 四维体检:
scripts/plugin-audit.mjs从性能、弹性、上下文预算、生命周期四个维度扣分审计,可叠加官方指南交叉。 - 日志诊断:
scripts/log-doctor.mjs解析~/.dsh/logs/中的宿主启动日志,按根因分组给出诊断与动作。 - 下游同步:
scripts/sync-skill.mjs检查并同步技能面到下游技能目录,--check只查漂移。 - 脚手架:
scripts/scaffold.mjs一条命令生成五种形态的可冒烟骨架。 - 自愈:
scripts/env-heal.mjs处理覆盖层旧包,默认 dry-run,--apply时移动到回收目录而非删除。
使用方式
推荐入口为 node scripts/run.mjs <插件目录>,可加 --target、--from、--no-clone、--no-smoke、--no-typecheck、--no-log、--real-smoke 等参数。各脚本也可单独运行。运行日志保存在 ~/.cache/dsh-plugin-fast-adapt/runs/,外发前需用 run-log.mjs sanitize 脱敏。造插件使用 node scripts/scaffold.mjs <namespace>/<name> --form tool|hook|service|config|llm-adapter。
适用场景
- 宿主 DSH 升级后,逐个插件核查是否踩中官方破坏性变更。
- 从零创建符合命名与挂载规范的插件骨架。
- 升级时顺带做性能、弹性、上下文预算与生命周期体检。
- 诊断宿主启动失败、插件报错或装了没生效的问题。
- 批量巡检时,先用原仓库 plugin-fleet-sweep 做广度筛查,再用本技能深查。
限制
- 官方升级指南覆盖范围有限,命中为零不代表没有问题;指南最早只到 dsh-v0.1.7-rc.2,更老插件需转老插件迁移 SOP。
- 扫描为静态启发式匹配,同名符号可能误报,需结合代码上下文确认。
- quick-smoke 会执行插件代码,仅用于自己的或审过的插件。
- 工具不自动修改插件代码,peer 修补建议也只打印不写 package.json。
- 网络仅在
--clone时使用,dist-tags 有 1 小时缓存,网络失败时降级用旧缓存并标 stale。 - 运行日志含本地路径与用户名,外发前必须脱敏。
--real-smoke依赖原仓库 verify-runtime.mjs,Windows 按 POSIX-only 跳过。
暂未提供
资料未提供收费、价格、平台兼容性细节(除 Windows 分支模拟验证、真机待验外)、具体效果数据或使用步骤之外的功能说明。