Back to home@yzxxy010

dsh-workspace-write-plus

DSH 第四档权限 工作区修改++:文件仍锁工作区,通配符放行 Git Bash 等进程沙箱。

Stars
0
Language
JavaScript
Created
Sep 7, 2026
Updated
Sep 7, 2026

Introduction

工作区修改++

Windows 上用 DeepSeek Harness,一跑 git 就炸:

fatal error - couldn't create signal pipe, Win32 error 5

这不是 Git 坏了。官方「工作区写入」会给子进程套一层受限令牌,Git for Windows / MSYS 需要内存映射和命名管道,一套上就起不来。

这个插件在权限选择器里加第四档:工作区修改++。文件还是只能改工作区,但放行的程序(默认 Git Bash 和 PowerShell)不再套那层进程沙箱。选上之后,git --version 就能正常出来。

它不是「完全访问」。不想把整个磁盘交给模型的时候用这一档。

安装

dsh plugin --profile web add https://github.com/yzxxy010/dsh-workspace-write-plus

装完重启一次 DSH。输入框旁边的权限选择器里会出现 工作区修改++,命令是 /permission workspace-write++

怎么用

  1. 选中 工作区修改++
  2. git、该跑脚本就直接跑
  3. 想放行别的程序,打开 设置 → 工作区修改++

默认已经放行了 bashpwsh。Windows 上 Git Bash 往往是从 PowerShell 拉起来的,两个都要放,子进程才不会继续继承受限令牌。

放行规则

设置页是一份可增删的名单,一行一条。改完立刻生效,存在 DSH 自己的设置里,重启还在。

你写下的实际匹配
bash任意目录里的 bash.exe
pwsh任意目录里的 PowerShell
aa任意目录里的 aa.exe
**/Git/bin/bash.exe只放行 Git 自带的那一个 bash
C:/Program Files/Git/**Git 安装目录下的所有程序
*这一档里所有程序都不套进程沙箱

不带斜杠,只看文件名;带斜杠或 * / **,按路径匹配。* 不跨目录,** 可以跨任意多层。

名单留空的话,所有程序仍走进程沙箱——等于这一档退化成「工作区写入、但不弹审批」。

另外还有一个单独开关:工作区外写文件。默认关。打开后,write / edit 也可以写到工作区外面。这和放行 Shell 不是一回事,按需再开。

和另外三档

权限选择器里还是那四个格子,底层沙箱模式其实只有三种。++ 是一档预设,不是新的沙箱类型。

文件进程沙箱审批
只读不能写包裹要问
工作区写入只能写工作区包裹,Windows 上 Git Bash 会挂要问
工作区修改++只能写工作区命中规则的程序跳过不问
完全访问不限制不包裹不问

许可

MIT。