DSH Plugins
返回列表
🖥️

dsh-niubash-only

客户端 更新于 2026.09.29

在终端中运行以下命令:

dsh plugin install YMRwithNoworry/dsh-niubash-only

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

在 DeepSeek Harness 终端执行 dsh plugin install YMRwithNoworry/dsh-niubash-only 即可安装;插件源码见 https://github.com/YMRwithNoworry/dsh-niubash-only。

插件介绍

在 Windows 上跑 DeepSeek Harness 时,模型很容易写出 PowerShell 或 CMD 习惯的命令;有些写法在 Bash 里语法合法,却会静默出错(例如把 $env:PATH 当成空变量展开)。若你希望 agent 的每一次 shell 都落在同一套环境里,而不是在 pwsh、Git Bash 或 WSL 之间漂移,就需要把 dsh 的执行接缝固定到 Niubash。

dsh-niubash-only 是一个 Profile Bundle:它禁用第一方的 bash-sandbox 与 pwsh-sandbox,改由专用执行器把所有 ctx.shell 调用统一成 niu -c,并沿用 dsh 原有的超时、输出上限、后台句柄与取消语义。执行层之外还有两道护栏——拒绝在命令开头把执行权交给别的 shell,并在 spawn 前拦截常见 PowerShell/CMD 方言并提示对应的 Bash 写法;另有 teaching 模块向模型注入规则、手册与工具描述改写,减少看起来对、跑起来错的情况。

默认配置下命令直接在本机运行(不经过 ctx.sandbox 包裹),受限会话里也能照常调用 Niubash;若你需要恢复第一方沙箱语义,可在配置中显式开启。适合已在 Windows 安装 Niubash(rubash 与 WinuxCmd)、使用 dsh 0.2.0-rc.2 且希望唯一 shell、确定性契约的开发者与 agent 用户。

使用场景

  • 在 Windows 上希望 dsh 所有 shell 调用都走 Niubash,而不是 pwsh 或 Git Bash
  • 模型频繁写出 $env: 或 Get-ChildItem 等 PowerShell 习惯,需要 spawn 前拦截并提示 Bash 写法
  • 需要与 dsh 0.2.0-rc.2 对齐的执行接缝,并保留超时、后台任务与取消等第一方语义

适合人员

  • 在 Windows 10/11 已安装 Niubash 与 Node 22.19+ 的 dsh 用户
  • 希望 agent 命令域固定为 niu -c 确定性契约的开发者
  • 需要 teaching 与工具描述改写来减少跨方言静默错误的团队