背景
现有插件恢复机制(plugin-recovery)很扎实:启动失败→检测日志定位问题插件→卸载→重启,还有 resetPluginProfile 兜底。但两条路径的本质都是删除/回滚——用户新装的插件被卸载后就再也装不上了(或装了又崩)。对普通用户来说,装一个插件→崩→被删→再装→再崩,没有第三条路。
建议:恢复界面增加「用干净 profile 启动」选项
dsh 的 profile 本身就是隔离单元(不同 profile = 不同依赖集)。在启动失败恢复界面(或设置页)提供:
- 一键「用干净 profile 启动」:基于 dsh 官方 minimal preset 起一个临时干净 profile(或复用 resetPluginProfile 的 core-bundles 集合,但不改原 profile,而是作为独立启动配置),坏插件根本不加载——从根上绕开崩溃源
- 原 profile 原样保留:不删 manifest、不动 node_modules,用户随时能切回来
- 进入后是完整可用的 dsh:正常对话、执行紧急任务;API Key 独立存储不受影响
- 核心价值:能修好插件,而不是抛弃它——干净环境里可以直接排查新装插件的真实问题:缺依赖就补(如 dsh-pentest 漏声明 zod 那类)、patch 冲突就改、配置错误就调;修好后再切回正常 profile,插件保住了
- 修好后一键回到正常模式
为什么需要
如果这个方向可行,我可以做更多协助工作。
背景
现有插件恢复机制(plugin-recovery)很扎实:启动失败→检测日志定位问题插件→卸载→重启,还有 resetPluginProfile 兜底。但两条路径的本质都是删除/回滚——用户新装的插件被卸载后就再也装不上了(或装了又崩)。对普通用户来说,装一个插件→崩→被删→再装→再崩,没有第三条路。
建议:恢复界面增加「用干净 profile 启动」选项
dsh 的 profile 本身就是隔离单元(不同 profile = 不同依赖集)。在启动失败恢复界面(或设置页)提供:
为什么需要
如果这个方向可行,我可以做更多协助工作。