Preface¶
In DSH / DeepSeek Harness, when models execute Windows shell commands, common tool paths include native pwsh or bash that relies on WSL. For Windows environments without WSL but with Git for Windows already installed, dsh-tool-gitbash provides a more direct option: registering the gitbash tool as a DSH tool plugin, using the bash.exe bundled with Git for Windows.
What This Is¶
dsh-tool-gitbash is a Git Bash tool plugin for Windows. The GitHub repository is named dsh-win-gitbash, maintained by buhuikongpan, and licensed under MIT.
It is registered as the gitbash tool in the form of a DSH tool plugin, replacing native pwsh / WSL-only bash without requiring WSL.
Core Capabilities¶
The following main capabilities have been verified:
- Relies on the
bash.exebundled with Git for Windows and automatically detects multiple installation paths. - Supports file sandbox mode, timeout control, output truncation, and background tasks.
- Supports the
run_in_backgroundparameter, exposed only whenenableRunInBackgroundis enabled. - Supports sandbox-restricted escalation prompts and permission requests, triggered by the dual conditions of
sandbox_permissionsandjustification. - Supports working directory resolution: sandbox root takes precedence; otherwise, the session cwd is normalized via
canonicalPath. - Supports explicit configuration of the bash path via
bashPath. - The invocation card is consistent with native pwsh, reusing DSH’s built-in terminal card.
Installation and Enablement¶
First, install Git for Windows to ensure the system provides bash.exe.
Then run the installation command:
dsh plugin add dsh-tool-gitbash
After installation, enable the bundle in the DSH composition/profile and restart. The model will only gain access to the gitbash tool after the restart.
The installation command automatically handles @deepseek-ai/* peer dependencies. The required peer dependencies include:
@deepseek-ai/cordis
@deepseek-ai/dsh-tools
@deepseek-ai/dsh-llm
@deepseek-ai/dsh-sandbox
@deepseek-ai/dsh-shell
@deepseek-ai/dsh-timeout
Alternatively, you can search for dsh-tool-gitbash in DSH Web Settings → Plugin Marketplace (dsh-market) for one-click installation.
You can also place the package in DSH’s node_modules or reference it as a local dependency, then enable the plugin in the DSH composition and restart.
Configuration and Typical Usage¶
The tool parameters include:
| Parameter | Description |
|---|---|
command |
The Git Bash command to execute |
description |
A one-sentence description of the command’s purpose |
timeoutMs |
Timeout, default 120s, maximum 600s |
workdir |
Working directory |
run_in_background |
Run in background, exposed only when enableRunInBackground is enabled |
sandbox_permissions / justification |
Sandbox escalation, available when a sandbox is configured |
If automatic detection fails to locate bash, you can configure bashPath in the cordis.patch.yml plugin line, for example:
- insert:
- id: tool-gitbash
name: 'dsh-tool-gitbash'
config:
bashPath: 'C:\Users\me\scoop\apps\git\current\bin\bash.exe'
This step explicitly specifies the bash.exe path to avoid automatic detection failure.
Applicable Scenarios and Notes¶
It is suitable for providing bash execution capability to DSH models on Windows, especially when Git for Windows is already installed and WSL dependency is undesirable.
Notes to keep in mind:
- Git for Windows must be installed to provide
bash.exe. - Automatic detection skips the WSL launcher under System32.
timeoutMsdefaults to 120s with a maximum of 600s.- The
run_in_backgroundparameter is exposed only whenenableRunInBackgroundis enabled. - Sandbox escalation is triggered by the dual conditions of
sandbox_permissionsandjustification, and goes throughapproveEscalation+ctx.approval. - The plugin runs with the current dsh process permissions; review the source code and license before installation.
Links¶
GitHub repository:
https://github.com/buhuikongpan/dsh-win-gitbash