# psmux > psmux is a native terminal multiplexer for Windows 10 and 11, built in Rust. It is a tmux alternative with full command, keybinding, and .tmux.conf compatibility that requires no WSL, Cygwin, or MSYS2. It works with Windows Terminal, PowerShell, and cmd.exe. Key facts: * Single native Windows binary with zero dependencies * 90+ tmux compatible commands and 140+ format variables (run `psmux list-commands` for the live list) * Vim style copy mode with 53 keybindings, full mouse support * Reads your existing .tmux.conf so tmux muscle memory carries over * Installable via winget, Scoop, Chocolatey, Cargo, or a PowerShell one liner * Used by engineers at Microsoft, Google, IBM, Tencent, Sony, and 500+ companies * Recommended multiplexer for Claude Code Agent Teams on Windows * MIT licensed, open source ## Install * winget: `winget install psmux` * Scoop: `scoop install psmux` * Chocolatey: `choco install psmux` * Cargo: `cargo install psmux` * PowerShell: `irm https://raw.githubusercontent.com/psmux/psmux/master/scripts/install.ps1 | iex` ## Documentation ### Getting Started * [Getting Started with psmux: tmux on Windows in 10 Minutes](https://psmux.pages.dev/docs/tutorials/getting-started-windows): psmux is a native terminal multiplexer for Windows that speaks the tmux command language. This tutorial walks a Windows user from installation to a working,... * [FAQ](https://psmux.pages.dev/docs/faq): Answers to the questions people ask most about psmux, the native tmux for Windows: what it runs on, how it relates to tmux and Windows Terminal, whether an e... * [Features](https://psmux.pages.dev/docs/features): psmux brings the tmux feature set to Windows natively: sessions that outlive the terminal window, split panes and windows, full mouse support, a vim style co... * [Windows Use Cases](https://psmux.pages.dev/docs/use-cases): Native tmux on Windows is not just "splits and tabs." Because psmux runs a real background server that keeps your shells, panes, and running processes alive... ### Tutorials * [Write One tmux Script That Runs on Windows, Linux and macOS with psmux](https://psmux.pages.dev/docs/tutorials/cross-platform-tmux-scripts): psmux is a tmux compatible terminal multiplexer for Windows, and it ships a tmux.exe alias. That means automation written against tmux, whether a session boo... * [Running Terminal AI Agents and Multi Pane TUIs on Windows with psmux](https://psmux.pages.dev/docs/tutorials/terminal-agents-and-tuis): This tutorial shows how to run terminal AI coding agents (Claude Code, Codex CLI, Gemini CLI, aider, opencode and similar) and full screen TUI programs (neov... * [Multi Window and Multi Pane Development Layouts on Windows with psmux](https://psmux.pages.dev/docs/tutorials/dev-environment-layouts): This tutorial shows how to design a project session in psmux, the native tmux for Windows: one window per concern (editor, server, tests, git), panes sized a... ### Configuration * [Configuration](https://psmux.pages.dev/docs/configuration): Config syntax is tmux-compatible. Most .tmux.conf lines work as-is. * [Key Bindings](https://psmux.pages.dev/docs/keybindings): Default prefix: Ctrl+b (same as tmux). Change with set -g prefix C-a. * [psmux Plugins and Themes: the tmux plugin ecosystem on Windows](https://psmux.pages.dev/docs/plugins): psmux plugins are ports of the most popular tmux plugins, reimplemented in PowerShell so they run natively on Windows without bash, cygwin, or WSL. A psmux p... * [Pane Titles and OSC Escape Sequences](https://psmux.pages.dev/docs/pane-titles): Every pane in psmux has a title. By default this is the system hostname, matching tmux convention. You can see it in the status bar, pane border labels, and... ### Compatibility * [tmux Compatibility](https://psmux.pages.dev/docs/compatibility): psmux is the most tmux-compatible terminal multiplexer on Windows. * [psmux Command and Flag Reference](https://psmux.pages.dev/docs/tmux_args_reference): This is the reference for the commands psmux itself accepts and the flags psmux itself parses. Every entry was read out of the psmux Rust sources, not out of... * [Multi-Shell Workflows](https://psmux.pages.dev/docs/multi-shell): psmux lets you run any combination of shells side by side in the same session. PowerShell, Git Bash, cmd.exe, WSL, Nushell, or any other shell or program, ea... * [Mouse Over SSH](https://psmux.pages.dev/docs/mouse-ssh): psmux has first-class mouse support over a normal SSH pseudo-terminal when the server runs Windows 11 build 22523 or newer. On Windows 10 and earlier Windows... ### How It Works * [How psmux Multiplexes Natively on Windows](https://psmux.pages.dev/docs/architecture): psmux is a terminal multiplexer for Windows, a tmux for Windows written in Rust that drives real ConPTY pseudo consoles directly through the Win32 API. This... * [psmux Performance: How Fast Is tmux for Windows?](https://psmux.pages.dev/docs/performance): psmux is a native terminal multiplexer for Windows, and this page is its performance record: what a psmux command costs, how long a new pane takes to show a... * [Warm Sessions](https://psmux.pages.dev/docs/warm-sessions): psmux uses a background warm session (warm) to make new session creation nearly instant. This page explains how it works and how to interact with it if needed. ### Advanced * [Scripting & Automation](https://psmux.pages.dev/docs/scripting): psmux supports tmux-compatible commands for scripting and automation. * [Control Mode](https://psmux.pages.dev/docs/control-mode): Control mode lets external programs drive psmux programmatically over a structured text protocol. Instead of rendering a TUI, psmux sends machine-readable no... * [Using psmux with iTerm2 (`tmux -CC` integration)](https://psmux.pages.dev/docs/iterm2-control-mode): iTerm2's tmux integration treats tmux -CC as a wire protocol. Each tmux window becomes a native iTerm2 tab, panes become native iTerm2 split panes, scrollbac... * [Live Preview in Choosers](https://psmux.pages.dev/docs/preview): The choose-session and choose-tree pickers in psmux include a live preview pane that shows the actual content of the highlighted session, window, or pane. Th... * [Diagnostics](https://psmux.pages.dev/docs/diagnostics): psmux runs its server detached, with no visible stderr. When something goes wrong there is nowhere for an error message to land on screen, so psmux writes wh... ### Integrations * [Claude Code Agent Teams](https://psmux.pages.dev/docs/claude-code): psmux has first-class support for Claude Code agent teams. When Claude Code runs inside a psmux session, it automatically spawns teammate agents in separate... * [Developer Integration Guide](https://psmux.pages.dev/docs/integration): This guide is for developers who want to build tools, scripts, IDE extensions, or automation pipelines that use psmux on Windows, especially if you already h... ### More Guides * [Design: a shared multi session server (issue #798)](https://psmux.pages.dev/docs/design/multi-session-server): Status: stage 1, steps 1 and 2 implemented. Step 1 is the switch (PSMUXSERVERMODE and server-mode); step 2 is a minimal shared server behind it (one process... * [Program status (OSC 7501)](https://psmux.pages.dev/docs/program-status): Programs can report their state with OSC 7501, revision 0.4. Support is off by default; set -g program-status on enables collection and capability replies. p... * [Full documentation in one file](https://psmux.pages.dev/llms-full.txt): every guide inlined as markdown ## Resources * [GitHub repository](https://github.com/psmux/psmux): source code, releases, issues * [Live adoption stats](https://psmux.pages.dev/live-stats.json): machine readable JSON with stars, contributors, companies, and ecosystem data, refreshed twice weekly * [crates.io package](https://crates.io/crates/psmux): Rust crate * [Chocolatey package](https://community.chocolatey.org/packages/psmux): Windows package manager listing ## Usage * Start a session: `psmux new-session -s work` * List sessions: `psmux ls` * Attach: `psmux attach -t work` * Default prefix is Ctrl+b, identical to tmux * The binaries psmux, pmux, and tmux are aliases of the same executable