dsh-ops plugin for DSH, specifically its workspace preparation script (`prepare-workspace.ps1`) and underlying JavaScript logic (`lib/workspace-preparation.js`).
Raw Developer Origin & Technical Request
GitHub Issue
Oct 14, 2026
环境
OS:Windows(x64)
DSH:Desktop,profile desktop
插件:dsh-ops@0.3.0(官方插件市场安装,纯净包未做任何本地修改)
宿主 pwsh:7.6.6;LocalMachine ExecutionPolicy = RemoteSigned
现象
安装启用后,只要发起会触发工作区准备的调用(run_code / pwsh / bash / pwsh_persistent / bash_persistent),调用会在执行前被中止,报:
代码块
DSH workspace preparation failed (not a user permission denial):
无法加载文件 ...\node_modules\dsh-ops\bin\prepare-workspace.ps1,因为在此系统上禁止运行脚本。
有关详细信息,请参阅 about_Execution_Policies(go.microsoft.com/fwlink/
+ FullyQualifiedErrorId : UnauthorizedAccess
因为失败发生在 tools/execute 钩子阶段,表现不是"某个工具自身报错",而是工具链整体卡住——看起来像模型"停下不动",实际是每次调用都在准备阶段被拦。
复现步骤
Windows 上全新安装 dsh-ops@0.3.0(官方市场,未打任何补丁);
重启 Desktop,任意会话发起一次 pwsh 或 run_code;
必现上述错误。
另外直接对比调用 lib/workspace-preparation.js 导出的 prepareWorkspace():
纯净 0.3.0 → reject,错误信息同上;
手动给子进程加 -ExecutionPolicy Bypass 并清掉 PSModulePath → resolve 成功。
根因
lib/workspace-preparation.js 的 runPreparation() 里,用 Windows PowerShell 5.1 执行插件自带的 prepare-workspace.ps1:
js
const executable = path.join(windows, 'System32/WindowsPowerShell/v1.0/powershell.exe')
const child = spawn(executable, ['-NoProfile', '-NonInteractive', '-File', script,
'-Workspace', root, '-BackupDir', backups], { windowsHide: true, stdio: ['ignore','pipe','pipe'] })
两个从 pwsh 7 宿主继承来的 Windows 5.1 陷阱叠加:
执行策略:pwsh 7 默认 RemoteSigned,但 5.1 在该机器上是受限/未定义,加载 .ps1 直接 UnauthorizedAccess。插件注释里其实已提到需要 Bypass,但 spawn 参数里漏了。
PSModulePath 泄漏:宿主的 pwsh 7 PSModulePath 传入 5.1 子进程后,5.1 无法自动加载自带 inbox 模块,Get-Acl 会报 CommandNotFoundException。
即:...
Developer Debate & Comments
No active discussions extracted for this entry yet.
Adjacent Repository Pain Points
Other highly discussed features and pain points extracted from T-Auto/dsh-ops.
Frequently Asked Questions
Market intelligence mapped to dsh-ops plugin for DSH, specifically its workspace preparation script (`prepare-workspace.ps1`) and underlying JavaScript logic (`lib/workspace-preparation.js`)..
What problem does dsh-ops plugin for DSH, specifically its workspace preparation script (`prepare-workspace.ps1`) and underlying JavaScript logic (`lib/workspace-preparation.js`). solve?
Are engineers actively discussing dsh-ops plugin for DSH, specifically its workspace preparation script (`prepare-workspace.ps1`) and underlying JavaScript logic (`lib/workspace-preparation.js`).?
Which technical concepts are associated with dsh-ops plugin for DSH, specifically its workspace preparation script (`prepare-workspace.ps1`) and underlying JavaScript logic (`lib/workspace-preparation.js`).?
Are developers creating tools for dsh-ops plugin for DSH, specifically its workspace preparation script (`prepare-workspace.ps1`) and underlying JavaScript logic (`lib/workspace-preparation.js`).?
Engagement Signals
Cross-Market Term Frequency
Quantifies the cross-market adoption of foundational terms like spawn and dsh-ops@0.3.0 by tracking occurrence frequency across active SaaS architectures and enterprise developer debates.
SaaS Metrics