On the Windows platform, when using DeepSeek Harness, if the model tries to invoke processes such as Git Bash or PowerShell, the standard “Workspace Write” permission often causes the process to crash. This is because restricted tokens are incompatible with MSYS memory mapping mechanisms. The dsh-workspace-write-plus plugin adds a fourth level to the permission selector: Workspace Modify++. While keeping file access confined to the workspace, it allows specific processes to bypass the Windows process sandbox, resolving issues where tools such as Git fail to run.

What This Is

This is a DSH plugin maintained by yzxxy010. It provides a preset permission level used to fix MSYS memory mapping errors under Windows ACLs and allows administrators to customize allowlists on the workspace settings page.

Core Features

  • Adds the fourth permission level, “Workspace Modify++”.
  • Allows specific processes (such as Git Bash and PowerShell) to bypass the Windows process sandbox.
  • Fixes MSYS memory mapping errors under Windows ACLs.
  • Supports customizing allowlists on the workspace settings page (wildcards supported).
  • Provides a “Write Files Outside Workspace” toggle.

Install and Enable

Install the plugin and restart DSH:

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

After installation, Workspace Modify++ appears in the permission selector. Click it to take effect, or directly enter a command to switch:

/permission workspace-write++

Typical Usage

After enabling this permission, you can run git --version directly to verify that the Git toolchain works correctly.

Add allow rules on the settings page. For example, allow Git’s bundled bash: **/Git/bin/bash.exe; or allow all programs: *.

Configuration

  • Allow rules: This is an add/remove list. Changes take effect immediately and are retained after restart.
    • bash: matches bash.exe in any directory.
    • pwsh: matches PowerShell in any directory.
    • **/Git/bin/bash.exe: allows only the specific bash under the Git installation directory.
    • *: matches all programs under this permission level, no longer using the process sandbox.
  • Matching logic: A value without a slash matches only the file name; with a slash or * / **, it matches by path (* does not cross directories, while ** can cross any number of levels).
  • Note: If the allow list is empty, this permission degrades to “workspace write without prompting for approval”.

Use Cases and Notes

  • Dependencies: Requires Node.js >= 18 and DSH >= 0.1.0.
  • Permission scope: File operations remain restricted to the workspace; this is not full access.
  • Mechanism: “Workspace Modify++” is a preset permission. The underlying sandbox mode remains unchanged.

Summary

If you need to use Git or PowerShell while maintaining a security boundary, this plugin provides the necessary flexibility. Once the source code is installed and the license (MIT) is confirmed, it can be used.