Psmux
╔═══════════════════════════════════════════════════════════╗ ║ ██████╗ ███████╗███╗ ███╗██╗ ██╗██╗ ██╗ ║ ║ ██╔══██╗██╔════╝████╗ ████║██║ ██║╚██╗██╔╝ ║ ║ ██████╔╝███████╗██╔████╔██║██║ ██║ ╚███╔╝ ║ ║ ██╔═══╝ ╚════██║██║╚██╔╝██║██║ ██║ ██╔██╗ ║ ║ ██║ ███████║██║ ╚═╝ ██║╚██████╔╝██╔╝ ██╗ ║ ║ ╚═╝ ╚══════╝╚═╝ ╚═╝ ╚═════╝ ╚═╝ ╚═╝ ║ ║ Born in PowerShell. Made in Rust. 🦀 ║ ║ Terminal Multiplexer for Windows ║ ╚═══════════════════════════════════════════════════════════╝
The native Windows tmux. Born in PowerShell, made in Rust.
Full mouse support · tmux themes · tmux config · 90+ commands · blazing fast
Install · Usage · Get Started · Use Cases · Tutorials · Claude Code · Architecture · Features · Compatibility · Performance · Plugins · Keys · Scripting · Config · Mouse/SSH · FAQ · Related Projects
#psmux
The real tmux for Windows. Not a port, not a wrapper, not a workaround.
psmux is a native Windows terminal multiplexer built from the ground up in Rust. It uses Windows ConPTY directly, speaks the tmux command language, reads your .tmux.conf, and supports tmux themes. All without WSL, Cygwin, or MSYS2.
💡 Tip: psmux ships with
tmuxandpmuxaliases. Just typetmuxand it works!
👀 On Windows 👇
#Installation
#Using WinGet
winget install psmux
#Using Cargo
cargo install psmux
This installs psmux, pmux, and tmux binaries to your Cargo bin directory.
#Using Scoop
scoop bucket add psmux https://github.com/psmux/scoop-psmux scoop install psmux
#Using Chocolatey
choco install psmux
#From GitHub Releases
Download the latest .zip from GitHub Releases and add to your PATH.
#From Source
git clone https://github.com/psmux/psmux.git cd psmux cargo build --release
Built binaries:
target\release\psmux.exe target\release\pmux.exe target\release\tmux.exe
#Docker (build environment)
A ready-made Windows container with Rust + MSVC + SSH for building psmux:
cd docker docker build -t psmux-dev . docker run -d --name psmux-dev -p 127.0.0.1:2222:22 -e ADMIN_PASSWORD=YourPass123! psmux-dev ssh ContainerAdministrator@localhost -p 2222
See docker/README.md for full details.
#Requirements
- Windows 10 or Windows 11
- PowerShell 7+ (recommended) or cmd.exe
- Download PowerShell:
winget install --id Microsoft.PowerShell - Or visit: https://aka.ms/powershell
- Download PowerShell:
#Why psmux?
If you've used tmux on Linux/macOS and wished you had something like it on Windows, this is it. Split panes, multiple windows, session persistence, full mouse support, tmux themes, 90+ tmux-compatible commands (run psmux list-commands for the live list), 140+ format variables, 53 vim copy-mode keys. Your existing .tmux.conf works. Full details: docs/features.md · docs/compatibility.md
#Usage
Use psmux, pmux, or tmux. They're identical:
psmux # Start a new session psmux new-session -s work # Named session psmux ls # List sessions psmux attach -t work # Attach to a session psmux list-commands # List every command psmux accepts psmux --help # Show help
#Claude Code Agent Teams
psmux has first-class support for Claude Code agent teams. When Claude Code runs inside a psmux session, teammate agents automatically spawn in separate tmux panes instead of running in-process.
psmux new-session -s work # Start a psmux session claude # Run Claude Code, agent teams just work
No extra configuration needed. Full guide: docs/claude-code.md
#Documentation
The full index with one line summaries of every page lives in docs/README.md. AI assistants and crawlers can start from llms.txt.
#Tutorials
| Tutorial | What you will learn |
|---|---|
| Getting Started on Windows | Install, first session, prefix key, splits, detach and reattach, first config, Windows Terminal profile |
| Cross Platform tmux Scripts | Write one tmux automation script that runs unchanged on Windows (psmux), Linux and macOS (tmux) |
| Terminal AI Agents and TUIs | Run Claude Code, Codex CLI, Gemini CLI, neovim, lazygit and other TUIs in scripted multi pane layouts |
| Dev Environment Layouts | Multi window and multi pane project sessions, layout presets, bootstrap scripts, save and restore |
#Guides and reference
| Topic | Description |
|---|---|
| Windows Use Cases | Practical Windows scenarios: startup services, AI agents, dashboards, remote admin |
| Architecture | How psmux multiplexes natively: client/server, one ConPTY per pane, input and output paths, warm pool |
| Features | Full feature list: mouse, copy mode, layouts, format engine |
| Compatibility | tmux command/config compatibility matrix |
| Performance | Benchmarks and optimization details |
| Key Bindings | Default keys and customization |
| Scripting | Commands, hooks, targets, pipe-pane |
| Command Reference | Per-command flag tables |
| Configuration | Config files, options, environment variables |
| Multi-Shell | Running pwsh, cmd, Git Bash, WSL, and nushell side by side |
| Pane Titles | Pane titles, border labels, and why pwsh shows a path |
| Chooser Preview | Live preview pane in choose-tree and choose-session |
| Warm Sessions | The pre-spawned server behind instant session creation |
| Diagnostics | Debug logs, crash logs, state files, what to attach to a bug report |
| Plugins & Themes | Plugin ecosystem: Catppuccin, Dracula, Nord, and more |
| Mouse Over SSH | SSH mouse support and Windows version requirements |
| Control Mode | The -C / -CC wire protocol for IDE and plugin authors |
| iTerm2 Control Mode | Driving psmux from the iTerm2 tmux gateway over SSH |
| Developer Integration | Driving psmux from Python, Node.js, Go, Rust, and libtmux |
| Claude Code | Agent teams integration guide |
| FAQ | Common questions and answers |
#Related Projects
|
pstop htop for Windows: real-time system monitor with per-core CPU bars, tree view, 7 color schemes cargo install pstop
|
psnet Real-time TUI network monitor: live speed graphs, connections, traffic log, packet sniffer cargo install psnet
|
|
Tmux Plugin Panel TUI plugin & theme manager for tmux and psmux: browse, install, update from your terminal cargo install tmuxpanel
|
OMP Manager Oh My Posh setup wizard: browse 100+ themes, install fonts, configure shells automatically cargo install omp-manager
|
#License
MIT
#Contributing
Contributions welcome: bug reports, PRs, docs, and test scripts via GitHub Issues.
Filing a bug? See docs/diagnostics.md for the logs and state files to attach.
If psmux helps your Windows workflow, consider giving it a ⭐ on GitHub!
#psmux in Numbers
Made with ❤️ for PowerShell using Rust 🦀