zdjmrq/dsh-command-guard

zdjmrq★ 0TypeScriptLast synced: 2026-08-15

Open on GitHub

DSH plugin: command guard that blocks disaster-tier deletions, escalates high-risk ones, and adds the careful-full-access preview/model-check deletion pipeline

README excerpt

dsh-command-guard DeepSeek Harness(DSH)插件:命令守卫——在派发前判定每一条 pwsh / bash 调用。 它分两个层次:插件本体做 全模式灾难删除拦截 (挂载即生效); patches/ 里附带的 harness 核心补丁(可选)注册 careful-full-access 审慎删除模式。 两者目标一致:把"解析错误的删除命令误删整个盘/工作区"这一类事故挡在执行之前。 English 中文 两个层次 层次 内容 是否必须 第一层:命令守卫(本插件) 灾难级删除在 任何沙箱模式 下拒绝、高风险走审批、审计与提示 挂载即生效,无需改核心 第二层:careful-full-access(harness 侧补丁) 第四档沙箱模式:全权限体验 + 删除预演/二次确认 + 根对象防删 可选, git apply 核心补丁 SandboxMode 是 DSH 核心的枚举类型,第三方插件无法自行添加,因此第二层以补丁形式 随仓库发布,与插件代码版本配套。只想要灾难拦截的用户可以只用第一层。 第一层:命令守卫(插件本体,所有模式生效) 解决什么问题 AI 编码代理最大的无防护风险之一是 误删 :一条解析错误的 Remove-Item -Recurse -Force C:\ 在 danger-full-access (沙箱关、审批关)下会原样执行; 即使在默认的 workspace-write 模式下,整个工作区(含根目录)也可被一条递归删除命令清空。 本插件在工具派发前加一道 命令语义守卫 ——它在任何模式下都生效,包括全权限。 功能 - 四级分级判定 (对每条 pwsh / bash 调用,派发前执行): - 灾难级 → 任何模式下都拒绝 (含 danger-full-access ):盘符根、根级通配 ( X:\ )、UNC/ \\?\ 扩展根、用户主目录、系统目录、工作区根、 Format- / Clear-Disk / Initialize-Disk / Remove-Partition 、 diskpart clean 、 向受保护根 robocopy /MIR 、受保护根的递归 .NET 删除。 - 高风险 → 审批 (审批策略为 never 时自动拒绝):工作区外递归强制删除、 动态目标( $var / $env: / iex )的递归删除、清空回收站、批量删除。 - 普通 → 放行 :单个显式路径的非递归删除等。 - 无法解析 → fail-closed 审批 :AST/词法失败与动态执行; iex 绝不漏过闸门。 - 审计与提示 :每次非放行判定写入 log-only 的 command-guard/decision 会话事件; 注册"删除纪律"系统提示段。 - 配置项 : extraProtectedPaths …

View full README on GitHub →
Tools / Devdeepseek-harnessdsh-plugin

Category