dsh-sandbox-permission-guard
其他 活跃维护

dsh-sandbox-permission-guard

JachinShen/dsh-sandbox-permission-guard

轻量级Cordis权限守护插件,自动拦截冗余沙箱越权触发的失败报错,无需额外配置,部署后直接过滤无效权限校验错误,减少无用告警干扰。

0
Stars 标星
0
Forks 分支
0
Watchers 关注
0
Open Issues
JavaScript
主要语言
MIT
开源协议
8 KB
仓库大小
1 个月前
最后推送
一键安装扩展 / 插件指令
dsh plugin --profile web add github:JachinShen/dsh-sandbox-permission-guard
git clone https://github.com/JachinShen/dsh-sandbox-permission-guard.git
git clone git@github.com:JachinShen/dsh-sandbox-permission-guard.git
README.md main

dsh-sandbox-permission-guard

用于 DeepSeek Harness (DSH) 的 Cordis 插件。

当当前会话已经拥有足够的 sandbox 权限时,它会:

  • 从模型可见的 bash 和 write Schema 中隐藏无用的 sandbox_permissions 和 justification;
  • 在原始 Bash 或文件写入权限验证前删除已经满足的遗留权限申请;
  • 继续实际执行命令或文件写入,而不是只改写失败消息;
  • 保留真正需要更高权限时的原始审批流程。

解决的问题

会话已经是 danger-full-access 时,重复提交同级权限原本会导致:

Error: sandbox escalation to "danger-full-access" is not strictly wider than this call's current "danger-full-access" mode

本插件在 Agent 的实际工具作用域中覆盖 bash 和 write。正常调用不再看到权限参数;遗留调用即使携带冗余参数,也会清理后实际执行。write 的 diff 卡片展示钩子会完整保留。

安装

DSH 在线安装器使用:

https://github.com/JachinShen/dsh-sandbox-permission-guard

或安装 Git 依赖:

pnpm add github:JachinShen/dsh-sandbox-permission-guard

在 Host Cordis composition 中加入:

- id: sandbox-permission-guard
  name: dsh-sandbox-permission-guard

插件依赖 Host 的 agents 服务,并为当前及以后创建的 Agent 安装作用域内的 Bash 与 Write guard。

仅当当前权限等级已经大于或等于请求等级时删除冗余请求;真正的升级仍交给 DSH 原审批逻辑。

行为矩阵

当前权限 请求权限 行为
danger-full-access 无 正常执行
danger-full-access danger-full-access 删除冗余参数并执行
danger-full-access workspace-write 删除已满足的参数并执行
workspace-write workspace-write 删除冗余参数并执行
workspace-write danger-full-access 保留请求并走正常审批

以上判断同时适用于 bash 与 write。

测试

npm test

初始版本针对 DSH 0.1.0-rc.6 开发并验证。0.2.0 起同时覆盖 write。

License

MIT