dsh-win-multi-bash: A DSH plugin that adds Git Bash and WSL Bash support to DeepSeek Harness
dinosaur-mc/dsh-win-multi-bash
A DSH plugin adding Git Bash / WSL Bash support on Windows, providing git_bash and wsl_bash tools plus a shell-select executor routing shell calls.
dsh-win-multi-bash is a Windows multi-bash plugin for DeepSeek Harness that routes the single ctx.shell seat across Git Bash, WSL, and pwsh via a shell-select executor, keeping pwsh as the default. Once installed, you can call the git_bash and wsl_bash tools directly in DSH, with automatic Git Bash discovery and lazy sandbox probing. It solves the single-shell limitation on Windows, making bash-family tools available in DSH while keeping existing pwsh behavior unchanged.
How to Install
dsh plugin --profile web add dsh-win-multi-bash- Category
- Tools & Capabilities
- Platform
- DSH Plugin
- Author
- dinosaur-mc
- Distribution
- Plugin
dsh-win-multi-bash Key Features
dsh-win-multi-bash Repo Summary
What Does It Do?
dsh-win-multi-bash is a Windows multi-bash DSH plugin for DeepSeek Harness that adds Git Bash and WSL Bash support. It solves the limitation of a single shell seat on Windows by routing ctx.shell across Git Bash, WSL, and pwsh via a shell-select executor, keeping pwsh as the default until a bash-family tool is called. Core capabilities include git_bash and wsl_bash model tools, automatic Git Bash discovery, and lazy sandbox probing.
Core Features
- git_bash tool: uses Git for Windows' MSYS bash, supporting request.shell: 'git-bash'.
- wsl_bash tool: uses the WSL distro's Linux userland, supporting request.shell: 'wsl-bash'.
- shell-select executor: occupies the single ctx.shell seat and routes to a backend based on request.shell ?? default, with default staying pwsh.
- Automatic Git Bash discovery: searches explicit bashPath, git.exe layout directories, Program Files layouts on fixed drives, bash.exe on PATH, and the registry install path, rejecting symlinks and WSL aliases.
- Sandbox behavior: pwsh uses a windows-acl restricted-token runner, wsl_bash uses bwrap, and git_bash degrades to unconfined on probe failure, with probe verdicts cached.
How to Use This Plugin?
After enabling it in DSH, just call the git_bash or wsl_bash tool, and the plugin routes to the appropriate backend. For sandboxing, with sandbox: auto, Git Bash probes the windows-acl runner and WSL probes bwrap; if you explicitly set sandbox: bwrap and bubblewrap is missing, it fails loudly on the first wsl_bash command. Note that git_bash usually cannot be sandboxed, so for sensitive operations prefer pwsh or wsl_bash.
This page is an independent rewrite of the plugin's official README — for authoritative documentation and the latest changes, refer to the source: dinosaur-mc/dsh-win-multi-bash. The plugin is third-party code that runs on your machine once installed; inclusion does not imply endorsement — please review the source before installing.
