Wintty and psmux: the differences
psmux is a native Windows multiplexer that speaks the tmux command language and reads your .tmux.conf. Wintty is a Windows terminal built on the Ghostty core, and its Pro tier puts sessions and the pane tree in a per-user daemon. psmux runs inside a terminal such as Windows Terminal, and Wintty is the terminal window itself. This page covers what that changes, and where psmux is the better choice.
The short version
| Topic | Wintty | psmux |
|---|---|---|
| Sessions after you close the app | Pro: sessions run in winttyd, a per-user daemon. Close the app, or take an update that leaves the daemon alone, and the programs keep running; reattach with layout and scrollback. | One detached server per session. Closing the window kills only the client; servers survive terminal crashes and SSH disconnects. |
| After a reboot | A reboot ends the sessions. The daemon starts at logon with nothing running. | The psmux-resurrect plugin saves and restores sessions across a reboot; psmux-continuum adds automatic periodic saves. |
| Panes | Pro: the pane tree belongs to the session. Another window can attach and take it over. | tmux windows and panes with prefix keys, five layouts, floating panes and cross-session pane moves. |
| Configuration and scripts | A text config file and a command palette. The winttyc CLI lists, creates and feeds whole sessions; there is no tmux command language. | Reads .tmux.conf, supports 90+ tmux commands and 140+ format variables, and installs psmux, pmux and tmux aliases. |
| Where it sits | A terminal emulator with the multiplexer built into Pro. | A multiplexer whose client runs inside Windows Terminal or another console host. |
| Cost | MIT source, free to build. Signed builds come with sponsorship, and Pro, the tier with sessions and the multiplexer, is paid. | Free and open source under the MIT license. |
Sessions and persistence
psmux uses a client and server model close to tmux's. psmux new-session starts a detached server for that session, and psmux attach starts a client that connects over loopback TCP. The architecture docs put the boundary plainly: closing the window kills only the client. The server keeps the panes and their ConPTY processes. The features page adds that servers survive SSH disconnects and terminal crashes, and that the psmux-resurrect plugin saves and restores sessions across a reboot.
Wintty runs one daemon for the user rather than one server per session. winttyd starts at logon through a Scheduled Task and holds every persistent session. Close the app or install an update that does not change the daemon, and the programs keep running. Reopen Wintty and the sessions come back with their programs, pane layout and scrollback. The persistent sessions docs describe the lifecycle, the picker and the winttyc command line. A Windows reboot ends the sessions; the daemon starts at logon with nothing running.
The practical difference is where the state lives. psmux keeps the session in a tmux-shaped server that accepts commands, so its scripts and its plugin ecosystem can drive it. Wintty keeps the session in a daemon that a native Windows app renders, so the picker and the pane tree are part of the app rather than a full-screen terminal UI.
Multiplexing and panes
psmux is the closer match for tmux muscle memory. It reads .tmux.conf, installs psmux, pmux and tmux aliases, and implements 90+ tmux commands and 140+ format variables. It has tmux-style prefix keys, five layouts, floating panes, copy mode with vi keys, control mode for tooling, and cross-session moves that keep a live pane running while it is transferred. Each pane runs in its own ConPTY, with no WSL, Cygwin or MSYS2 layer.
Wintty's multiplexer is the session tree. Every tab and split of a persistent session lives in that session's pane tree, and the daemon stores one authoritative copy. Open the sessions picker in another window, confirm the takeover, and the session moves with its splits, sizes and scrollback. A session carries up to 64 tabs, and a tab up to 64 panes. The multiplexer docs also state the limits: there is no status line, there is no remote attach, and splits and resizes are GUI actions rather than command-line verbs.
Platform and native Windows integration
psmux is a Rust program that drives ConPTY through the Win32 API. Its README lists Windows 10 and Windows 11, recommends PowerShell 7 or newer, and offers winget, Cargo, Scoop, Chocolatey and zip installs. Its docs cover panes running pwsh, cmd, Git Bash, WSL and nushell side by side. The psmux client runs inside Windows Terminal or any other console host; the architecture docs describes using Windows Terminal as the window and psmux as the multiplexer inside it.
Wintty is a WinUI 3 application written in C# that wraps libghostty.dll through P/Invoke. Tabs and splits are native WinUI 3 components, and the window can use Mica and Acrylic. Rendering goes through DirectX 12, and the standard renderer requires feature level 12_0. Pro Legacy is cut from a snapshot of Pro about six months behind and built against DirectX 11 with WARP, for machines and Remote Desktop sessions where the DirectX 12 renderer cannot run. It is tested on Windows 11; Windows 10 is untested.
Licensing and price
psmux is free and open source under the MIT license. The repository carries the source and the license text.
Wintty's source is MIT licensed and free to build. A sponsorship gets a signed, self-updating build, and Pro adds the paid feature set that includes persistent sessions and the multiplexer. Pro Enterprise is arranged directly and adds the per-machine MSI. Pro Legacy is included with Pro. The tiers page lists what each one carries.
Where psmux is the better choice
If you already know tmux, psmux is the shorter path. Your .tmux.conf works, your scripts keep their commands, and the prefix keys are the ones in your fingers. It runs inside the terminal you already use, and it is free. Its README lists Windows 10 and Windows 11; Wintty's docs state only that Pro Legacy is tested on Windows 11 and untested on Windows 10. The server model also gives you an attach path over SSH, which Wintty does not offer.
Wintty's case is the integrated Windows app. The terminal, the session daemon, the pane tree and the sessions picker are one product, with native WinUI 3 tabs and DirectX 12 rendering. If you want tmux compatibility, use psmux. If you want the session model without a tmux config or a prefix key, Wintty Pro is the closer fit.
Other comparisons
- Wintty vs Windows Terminal
- Wintty vs WezTerm
- Wintty vs Zellij
- Wintty vs Warp
- tmux on Windows
- Persistent sessions
- Terminal multiplexer
Getting Wintty
The tier split behind the table's Pro labels: persistent sessions and the multiplexer are Pro features, Pro Enterprise adds the MSI, and Pro Legacy adds the DirectX 11 renderer. The tiers page compares them all.
Signed installers are a thank you for sponsors, and building from source stays free. The download page lists both.
Built on Ghostty
Wintty is built on the Ghostty terminal core. It is not affiliated with, or endorsed by, the Ghostty project. We are big fans of Ghostty and hope much of Wintty's work becomes part of an official Ghostty for Windows someday.