在 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)後即可使用。