dsh-gitbash-shell:Windows 平台 Git Bash 执行器插件

DeepSeek Harness (DSH) 的官方 Windows 组合默认使用 PowerShell (pwsh) 作为 Shell 执行器 (ctx.shell),且各预设中的 tool-bash 行在 Windows 上会被禁用。本插件用于在 Windows 平台上将执行器替换为 Git for Windows 的 bash.exe,并为所有模式物化对应的 Git Bash 版本预设。

核心功能

该插件主要实现以下能力:

  • 执行器替换:在 Windows 上禁用 pwsh-sandbox,启用 Git Bash 执行器,所有 Agent 模式均通过 Git Bash 运行。
  • 预设物化:自动在用户预设根目录下创建四个 Git Bash 版本的预设:standard-gitbash(标准模式)、minimal-gitbash(极简模式)、code-gitbash(PTC 模式)和 cordis-gitbash(创造模式)。
  • 版本兼容:支持 dsh 0.1.1 与 0.1.2+ 的双版本适配,以及 dsh 0.1.6 的工作流引擎行改名适配。
  • 路径处理:支持 POSIX 路径方言(MSYS 路径),模型在 Windows 上看到的路径将以 /c/... 形式呈现。
  • 生态联动:与 dsh-ptc-cordis-preset 联动,支持 PTC 创造模式自动启用 Git Bash;与 dsh-better-sidebar 联动,接管终端 Shell 设置。

安装

通过官方 Web 图形界面安装该插件:

dsh plugin --profile web add dsh-gitbash-shell

安装后需要重启该 profile 的 host 才能生效。该插件会自动检测包声明的 dsh.bundle 并追加到 dsh.profile.bundles 中。

配置与使用

1. 选择预设模式

插件物化了多个预设,你可以通过配置 gitbash-presets 行的 presets 数组来选择需要加载的模式:

- id: gitbash-presets
  config:
    presets: [standard-gitbash, minimal-gitbash]   # 默认物化全部 4 个

2. 设置默认 Agent 模式

在 agent-presets 配置中,将 default 设置为 Git Bash 模式,新会话将直接以 Git Bash 启动:

- id: agent-presets
  config:
    default: code-gitbash   # 或 standard-gitbash / minimal-gitbash

3. 自定义执行器参数

可以自定义 Git Bash 的路径和超时时间:

- id: gitbash-executor
  config:
    bashPath: "D:/Tools/Git/bin/bash.exe"   # 默认为 C:/Program Files/Git/bin/bash.exe
    timeoutMs: 60000                         # 默认 60s

4. 路径方言设置

在设置中启用 posixPaths 以在 Windows 上使用 MSYS 路径(v0.10.0 起默认开启)。开启后,模型看到的路径会转换为 /c/Users/... 格式,文件工具会自动处理路径转换。

环境要求与注意事项

  • 平台限制:仅限 Windows 平台,必须安装 Git for Windows。
  • 依赖版本:
    • 需要 Node.js >= 18。
    • 需要 dsh >= 0.1.0。
    • 若要使用 PTC 创造模式的 Git Bash 版本,需安装 dsh-ptc-cordis-preset v0.5.0+。
  • 权限与行为:
    • 安装后 pwsh-sandbox 会被禁用。
    • 插件以当前 dsh 进程权限运行,建议在安装前检查源码与许可证。
    • 卸载插件时,未改动的 * -gitbash 预设会被自动清理。

总结

dsh-gitbash-shell 是在 Windows 上统一 Agent Shell 行为的必要工具。它解决了原生 PowerShell 在 Git 工作流中路径处理繁琐的问题,并通过物化预设和路径方言转换,让 DSH 在 Windows 上的体验接近 Linux 原生环境。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜