在 Windows 平台上使用 DeepSeek Harness,当模型尝试调用 Git Bash 或 PowerShell 等进程时,标准的“工作区写入”权限往往会导致进程崩溃。这是因为受限令牌与 MSYS 的内存映射机制不兼容。dsh-workspace-write-plus 插件在权限选择器中新增了第四档:工作区修改++。它在保持文件访问限制在工作区内的前提下,允许特定进程绕过 Windows 进程沙箱,解决了 Git 等工具无法运行的问题。
这是什么¶
这是一个由 yzxxy010 维护的 DSH 插件。它提供了一个预设权限档位,用于修复 Windows ACL 下的 MSYS 内存映射错误,并允许管理员在工作区设置页面自定义放行名单。
核心功能¶
- 增加“工作区修改++”第四档权限。
- 允许特定进程(如 Git Bash、PowerShell)绕过 Windows 进程沙箱。
- 修复 Windows ACL 下 MSYS 内存映射错误。
- 支持在工作区设置页面自定义放行名单(支持通配符)。
- 提供“工作区外写文件”开关。
安装与启用¶
安装插件并重启 DSH:
dsh plugin --profile web add https://github.com/yzxxy010/dsh-workspace-write-plus
安装完成后,在权限选择器中会出现 工作区修改++。点击选中即可生效,或者直接输入命令切换:
/permission workspace-write++
典型用法¶
启用该权限后,可以直接运行 git --version 验证 Git 工具链是否正常工作。
在设置页面添加放行规则。例如,放行 Git 自带的 bash:**/Git/bin/bash.exe;或者放行所有程序:*。
配置说明¶
- 放行规则:是一份可增删的名单,配置后立刻生效,重启保留。
bash:匹配任意目录里的bash.exe。pwsh:匹配任意目录里的 PowerShell。**/Git/bin/bash.exe:只放行 Git 安装目录下的特定 bash。*:匹配该档位下的所有程序,不再套进程沙箱。
- 匹配逻辑:不带斜杠仅匹配文件名,带斜杠或
*/**则按路径匹配(*不跨目录,**可跨任意多层)。 - 注意:名单留空时,该权限退化为“工作区写入、但不弹审批”。
适用场景与注意¶
- 依赖:需要 Node.js >= 18 和 DSH >= 0.1.0。
- 权限范围:文件操作仍限制在工作区内,非完全访问。
- 机制:“工作区修改++”是预设权限,底层沙箱模式未变。
总结¶
如果你需要在保持安全边界的同时使用 Git 或 PowerShell,这个插件提供了必要的灵活性。安装源码并确认许可证(MIT)后即可使用。