DEV Community

Cover image for Stop Using WSL Just for tmux — psmux is tmux for Windows, Natively
Josh
Josh

Posted on

Stop Using WSL Just for tmux — psmux is tmux for Windows, Natively

You Don't Need WSL Just for tmux

I've seen this conversation a hundred times:

"How do I get tmux on Windows?"
"Install WSL"

And sure, WSL works. But running an entire Linux kernel + distro just to split your terminal? That's like buying a car because you need a cup holder.

What if tmux Just... Worked on Windows?

cargo install psmux
tmux new-session -s work
Enter fullscreen mode Exit fullscreen mode

That's it. psmux gives you tmux — the actual tmux command — running natively on Windows. Not through WSL. Not through Cygwin. A native Windows binary.

Everything You Know Transfers

If you know tmux, you know psmux. The keybindings are identical:

tmux psmux What it does
Ctrl+b % Ctrl+b % Split horizontal
Ctrl+b " Ctrl+b " Split vertical
Ctrl+b d Ctrl+b d Detach
Ctrl+b c Ctrl+b c New window
Ctrl+b [ Ctrl+b [ Copy mode
tmux ls tmux ls List sessions
tmux attach -t x tmux attach -t x Reattach

Your .tmux.conf works too:

set -g prefix C-a
set -g mouse on
set -g base-index 1
bind-key -T prefix h split-window -h
bind-key -T prefix v split-window -v
Enter fullscreen mode Exit fullscreen mode

psmux reads ~/.tmux.conf automatically (along with ~/.psmux.conf and ~/.psmuxrc).

Feature Parity

psmux isn't a toy. It's a serious tmux implementation:

  • Split panes — horizontal and vertical
  • Multiple windows with tabbed navigation
  • Session management — create, detach, reattach, kill, rename
  • Mouse support — resize panes, click tabs
  • Copy mode — vim-like scrollback with visual selection
  • Synchronized panes — type in multiple panes simultaneously
  • Status bar — full tmux format variable support (#S, #I, #W, etc.)
  • Theming — fg, bg, bold, dim, italics, etc.
  • Hooks — run commands on events
  • Layouts — even-horizontal, even-vertical, tiled, main-horizontal
  • Format engine — 100+ tmux-compatible variables
  • Config file — drop-in .tmux.conf compatible

The WSL Tax

Here's what you pay for tmux-via-WSL:

Cost Impact
~2GB disk space WSL distribution + kernel
Memory overhead VM running even when idle
Filesystem bridge Slow Windows file access from WSL
Path translation /mnt/c/Users/...C:\Users\...
Port forwarding localhost sometimes doesn't work
Can't run Windows apps Native Windows tools don't work in WSL panes
Separate package management apt for WSL, winget/choco/scoop for Windows

With psmux: 0 overhead. Native Windows paths. Native tools. One system.

Install Options

# Cargo (recommended)
cargo install psmux

# Scoop
scoop install https://raw.githubusercontent.com/marlocarlo/psmux/master/scoop/psmux.json

# Chocolatey
choco install psmux

# All three install psmux, pmux, AND tmux commands
Enter fullscreen mode Exit fullscreen mode

Related: The PS Suite

psmux is part of a trio of Windows-native TUI tools:

All Rust, all single-binary, all zero-dependency.


Are you using WSL just for tmux? Try psmux and let me know if it replaces your workflow!

Top comments (0)