Winuxsh

Bash, native on Windows. No WSL. No VM. No /mnt/c. No cmdlet dialect. Just the shell your fingers already know — and the one your AI agent actually speaks.

This is the Winuxsh documentation. Start with the guides, or jump straight into the shell:

C:\Users\you\repo
❯ test -f Cargo.toml && echo "rust, obviously"
rust, obviously

❯ printf "%s\n" alpha beta gamma | grep beta
beta

❯ cd "C:\Program Files"
C:\Program Files

What Winuxsh is

  • Bash syntax. if, for, case, $(...), pipes, redirects, heredocs, functions, aliases — the whole grammar, powered by rubash, which passes the GNU Bash project's own test suite (86/86 upstream tests green).
  • Windows-native. One binary, one process. Native Windows paths (C:\... and C:/...), direct execution of git.exe, node.exe, cargo.exe, python.exe — no VM, no emulation layer, no path conversion roulette.
  • Unix commands included. WinuxCmd ships ls, cat, grep, find, test, printf, and friends as Windows command links, with no separate installation.
  • AI-native. winuxsh -c is a contract: no banners, stable stdout/stderr, exact exit-code propagation. What an agent writes is what the process receives — the quoting roulette of PowerShell and the path mangling of MSYS/Git Bash are both gone.
  • A prompt you'll enjoy. 27 bundled themes (agnoster, spaceship, pure, catppuccin-mocha, tokyonight, p10 family, ...), a git prompt that grows teeth inside any repository, syntax highlighting, autosuggestions, vi and emacs modes, and Ctrl+R history search.
  • Plugins with a permission model. 40+ bundled packs (git, docker, kubectl, npm, zoxide, direnv, fzf, thefuck, ...), with reviewed source packs and process adapters declaring the host access they need.

The documentation

GuideWhat it covers
Getting StartedZero to a git prompt in ten minutes
Advanced UsageExecution modes, startup files, themes, plugins, completion, debugging
Install & Self-UpdateInstaller, portable zip, Windows Terminal profile, updates
Bash Compatibility MatrixWhat Bash surface is verified, layer by layer
Architecturerubash + WinuxCmd + reedline, path model, host contract
Windows Path Contractlogical root, dispatcher selection, and layer ownership
RoadmapWhat is done, what is next

Get it

Download the installer from GitHub Releases, or build from source:

git clone https://github.com/unixwin/winuxsh.git
cd winuxsh
cargo build --release
target\release\winuxsh.exe

Keep it current with winuxsh --self-update (or self-update inside the shell) and wpm update winuxcmd for the Unix command set. Questions and bug reports go to github.com/unixwin/winuxsh/issues.

Shell semantics live upstream in rubash — fix the engine, and every Bash user on Windows wins.