DeepSeek Harness plugin

dsh-windows-shell-policy

DSH Windows default shell policy plugin: probe git-bash/MSYS2, switch bash/pwsh from the plugin config card, register the bash tool and trim the prompt tool surface. DSH Windows 默认 Shell 策略插件:探测

Jump to install

Source facts

Repository
LAN-TINA-WS/dsh-windows-shell-policy
Latest update
Aug 21, 2026
Category
Tools & Capabilities
GitHub stars
3
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-21

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/LAN-TINA-WS/dsh-windows-shell-policy
Plugin: dsh-windows-shell-policy
Author: LAN-TINA-WS

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer4 files
README.en.mdSource · read only
README language

dsh-windows-shell-policy — Windows Default Shell Policy Plugin

中文 | English

![Default Shell config card](docs/screenshots/shell-policy-card.png)

![npm version](https://www.npmjs.com/package/dsh-windows-shell-policy) ![npm downloads](https://www.npmjs.com/package/dsh-windows-shell-policy) ![GitHub release](https://github.com/LAN-TINA-WS/dsh-windows-shell-policy/releases/latest) ![GitHub downloads](https://github.com/LAN-TINA-WS/dsh-windows-shell-policy/releases) ![GitHub stars](https://github.com/LAN-TINA-WS/dsh-windows-shell-policy) ![license](LICENSE)

dsh-windows-shell-policy

A Windows default shell policy plugin for DeepSeek Harness. DSH enables PowerShell (pwsh) by default on Windows, but bash dominates LLM training corpora, so agents make significantly more errors running POSIX commands through pwsh. This plugin probes for git-bash/MSYS2/Cygwin, adds a collapsible "Default Shell" card under Settings → Plugins → Plugin config to switch between bash and pwsh, dynamically registers the bash tool, and trims the prompt tool surface so the agent faces exactly one shell tool.

> Latest Release · dsh-plugin ecosystem · Feedback

Showcase

![bash terminal card](docs/screenshots/bash-terminal-card.png)

CapabilityDescription
bash probingExplicit bashPath → common Git install paths (Program Files / x86) → MSYS2 / Cygwin → PATH
Config cardCollapsible "Default Shell" card (same chrome as the official Terminal / Agent loop / Web search cards) showing probe status and the effective shell; auto / bash / pwsh radio choice with staged edit + save/discard
Policyauto uses bash when found, else pwsh; explicit bash / pwsh forces that shell; takes effect on the next request
bash toolDynamically registered when effective=bash (git-bash execution over the subprocess seam, timeout / output truncation / exit-code markers), rendered as a terminal card (click to inspect command, cwd, output and exit status — identical to the official shell tools)
Prompt trimmingsystem-prompt/assemble hides pwsh or bash per policy, so the agent's tool surface keeps exactly one shell tool
Persistencepreferred is stored in the settings document shell-policy section and survives restarts
Clean uninstalldsh plugin --profile web remove or dev_uninject_plugin restores everything (tool unregistered, prompt restored, junction removed)

Quick Install

GitHub direct install (recommended, fastest in CN, no npm wait):

dsh plugin --profile web add github:LAN-TINA-WS/dsh-windows-shell-policy
# restart dsh web, open Settings → Plugins → Plugin config

npm install (one command):

dsh plugin --profile web add dsh-windows-shell-policy

Release ZIP install:

1. Download dsh-windows-shell-policy-v*.zip from Releases and unzip 2. dsh plugin --profile web add link:<unzipped dir> 3. Restart dsh web, open Settings → Plugins → Plugin config

Injector install (no restart, dev environments):

DSH_CHECKOUT=<checkout> bash scripts/build.sh   # produces lib/index.js + lib/client.js
dev_inject_plugin <this dir>                   # host+UI take effect immediately

Configuration Guide

Expand the "Default Shell" card under Settings → Plugins → Plugin config:

OptionBehavior
autoUse bash when git-bash is found, else fall back to pwsh (works out of the box)
bashForce git-bash (falls back to pwsh with a notice when no bash is found)
pwshForce PowerShell (DSH default behavior)

Changes take effect on the next request after saving; preferred persists in the settings document shell-policy section across restarts. An explicit bash path can be set via shell-policy.bashPath in settings.yaml (card editing is on the roadmap).

Feedback

Issues, feature requests, usage experience: file at issue #1 (feedback welcome).

Contributors

ContributorContribution
LAN-TINA-WSAuthor and maintainer

License

This project is licensed under the [MIT License](LICENSE).

Developer Docs

Craft notes (authoring conventions, DSH capability lists, composition promotion log) live in [docs/](docs/):

DocContent
[conventions.md](docs/conventions.md)Plugin authoring conventions and failure quick-reference
[capabilities-host.md](docs/capabilities-host.md)DSH Host services/events used by this plugin
[capabilities-client.md](docs/capabilities-client.md)DSH Client slots/services used by this plugin
[roadmap-composition.md](docs/roadmap-composition.md)Composition promotion log

Repo layout: src/ (host + client sources), scripts/ (build), docs/ (docs and screenshots), cordis.patch.yml (bundle patch assembly).