DSH Plugins
返回列表
🖥️

dsh-pwsh-direct

客户端 更新于 2026.08.19

在终端中运行以下命令:

dsh plugin install 0x1a27/dsh-pwsh-direct

将以下提示词粘贴到 DeepSeek Harness 对话框中:

在 DeepSeek Harness 终端中执行 dsh plugin install 0x1a27/dsh-pwsh-direct 即可安装本插件,源码仓库为 https://github.com/0x1a27/dsh-pwsh-direct

插件介绍

Windows 上跑 DSH Desktop 的开发者都遇到过这个尴尬场景:内置 pwsh/shell 工具返回完全空结果——命令没执行、文件没创建、进程没启动,GUI 只显示一片空白。根因在于 DSH 服务器内嵌于 Electron 主进程,沙箱 runner 以 Electron 可执行文件作为 argv[0] 却不注入 ELECTRON_RUN_AS_NODE=1,每次 spawn 都静默拉起第二个桌面实例,后者丢失单例锁后自杀,留下零输出零副作用的黑洞。

dsh-pwsh-direct 从两层解决这个问题。第一层是启动自愈:每次 DSH 启动时自动定位安装目录与全部 profile 下的 dsh-subprocess-local,幂等地插入 ELECTRON_RUN_AS_NODE=1 注入行,重启后内置 pwsh/shell 即恢复正常工作,升级冲掉补丁后下次启动自动重新修补,全程不阻塞 DSH 启动。第二层是 pwsh_direct 兜底工具:在重启生效前的窗口期,直接以 DSH 进程权限 spawn PowerShell 可执行文件,完全绕过子进程服务层,附带 UTF-8 编码修复、进程树超时杀法、可选的 PowerShell 坑位执行门禁,输出格式与内置 pwsh 一致,模型侧几乎无感切换。

适合在 Windows 上使用 DSH Desktop 标准安装形态(Electron 内嵌服务器、app.asar.unpacked 解包)、Node 20 及以上环境的开发者。插件仅修改 dsh-subprocess-local 一个文件的少量行,无网络访问、无遥测,所有依赖锚点解析失败时自动禁用而不影响 DSH 正常运行,属于低侵入、可回退的本地修复方案。

使用场景

  • 内置 pwsh/shell 返回空结果时的快速修复
  • DSH Desktop 升级冲掉补丁后的窗口期兜底执行
  • 需要绕开子进程服务层直接 spawn PowerShell 的自动化流程

适合人员

  • Windows 上以标准形态运行 DSH Desktop 的开发者
  • 遭遇内置 shell 工具空结果 bug 的 DSH 用户
  • 需要 PowerShell 直通执行能力的自动化脚本开发者