a1141171521/dsh-plugin-conflict-guard

a1141171521★ 2JavaScriptLast synced: 2026-08-20

Open on GitHub

1.安装新插件前检测是否和现有插件存在冲突 2.检测已安装的插件是否存在冲突

README excerpt

dsh-plugin-conflict-guard 🛡️ DSH (DeepSeek Harness) 动态插件:安装前检测插件间功能冲突,由用户决定是否继续安装。 在 DSH 中安装新插件( cordis define )或激活插件( cordis run )之前,本插件会静态分析新插件声明的能力,与 已安装插件登记表 及 当前实时运行时 对比,发现重复占用时弹出询问窗口,点名冲突双方,由你决定"继续安装"或"取消安装"。 语言: English 中文 中文 为什么需要它 DSH 插件(Cordis 动态插件)可以提供服务、注册工具、注入槽位、注册命令/技能/设置命名空间等能力。当多个插件修改同一个功能时,会导致功能冲突甚至不可用。本插件把"冲突检测"提前到 安装动作发生之前 ,而不是装完才发现问题。 功能 - 安装前检测 :在 tools/pre-execute 瀑布流中拦截 cordis define / cordis run ,在任何插件被创建或激活之前介入。 - 能力声明提取 :静态分析新插件源码,提取其声明的能力: - 服务( ctx.provide )、工具( harness.registerTool 等)、槽位( slots.inject / slots.register ) - 设置命名空间( settings.register )、命令( commands.register )、技能( skills.register ) - 语言包( locale.register )、主题( theme.overrideTokens / theme.register ) - 双重对比 : - 登记表 :通过 cordis/dynamic-package / cordis/dynamic-retract 事件跟踪已安装插件及其声明,冲突来源显示为 插件「名字」 ; - 实时运行时 :叠加 tools.schemas() 、 commands.list() 、 settings.describe() 、 skills.list() 等实时快照,冲突来源显示为 现有运行时/其他插件 。 - 用户决定 :发现冲突时通过 userQuestions.ask() 弹出询问(普通问答 UI,不经过审批服务),列出每处冲突及占用方;选"取消安装"则拒绝该次安装( deny ),选"继续安装"才放行。 - 冲突分级 :服务/工具/设置/命令/技能为 hard (可能直接导致不可用);槽位/主题/语言包为 soft (可能共存); 事件监听不拦截 (多监听器是正常且可叠加的)。 - 设置页 : 设置 → 插件 → 插件冲突检测 页签,列出已安装插件的能力声明 chips,并可"立即扫描全部插件冲突"。 - 自我保护 :不拦截自身的更新;对守卫启用前已存在的插件(无声明记…

View full README on GitHub →
Tools / Devconflict-detectiondeepseek-harnessdshdsh-plugindsh-plugins

Category