Wintty and WezTerm: the differences

WezTerm is a cross-platform terminal and multiplexer with a configuration language and domains that reach local and remote sessions. 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. Both do tabs, splits and scrollback. This page is about what happens when the window closes, where each one can attach, and where WezTerm is the better choice.

The short version

TopicWinttyWezTerm
Sessions after you close the appPro: 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.Local tabs and windows persist until they are closed. Detaching a mux domain leaves its panes open for the next attach.
PanesPro: the pane tree belongs to the session. Another window can attach and take it over.Splits, tabs and windows. Domains connect the GUI to local, SSH or TLS mux servers.
Remote sessionsNo remote attach. The daemon answers a named pipe on your machine, and winttyc can stream a session's output.SSH and TLS domains attach to a mux server on another machine.
ConfigurationA text file, config.wintty, designed so most users need none. No GUI settings yet.A Lua file, .wezterm.lua, with hot reloading. Mux domains are set up there.
Windows stackWinUI 3 shell with a DirectX 12 renderer. Pro Legacy adds a DirectX 11 renderer for machines without DirectX 12.Rust terminal for Windows 10.0.17763 or later, macOS, Linux, FreeBSD and NetBSD. Setup.exe or zip.
CostMIT 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

WezTerm organizes multiplexing around domains. A domain is a distinct set of windows and tabs, and WezTerm starts with a local domain for the GUI. The multiplexing documentation says the out-of-the-box local tabs and windows persist until they are closed, and that a domain can instead start or connect to a mux server, and wezterm connect attaches the GUI to that domain. That is the configuration that keeps panes independent of the window.

The Wintty model is one daemon per user rather than one server per domain. Pro sessions run in winttyd, which starts at logon through a Scheduled Task. 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 sessions picker, and the winttyc command line.

A Windows reboot ends the sessions in Wintty: the daemon starts at logon with nothing running. On the WezTerm side, the DetachDomain action removes a domain's windows, tabs and panes from the GUI without closing them, and they are still there when you attach again. The same page notes that not every domain supports detaching.

Multiplexing and panes

WezTerm has the wider reach. Panes and tabs can live in a local domain, or in a domain that talks to a mux server over SSH, TLS or a unix socket. The docs state that unix domains are supported on all systems, including Windows, and that SSH domains need WezTerm installed on the remote machine. A Windows GUI can therefore attach to a session running elsewhere, which Wintty does not do.

Wintty's multiplexer is narrower and tied to the session. Every tab and split of a persistent session lives in that session's pane tree, and the daemon stores one authoritative copy. A window renders the tree; closing the window leaves it alone. 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 plainly: there is no status line, there is no remote attach, and splits and resizes are GUI actions rather than command-line verbs.

The WezTerm documentation notes one Windows caveat for its WSL route: connecting into WSL over a unix domain only works with WSL 1, because WSL 2 does not support AF_UNIX interop. By default WezTerm also maps each installed WSL distro to a domain of its own, built from the output of wsl -l -v.

Platform and native Windows integration

Wintty is a WinUI 3 application written in C# that wraps libghostty.dll through P/Invoke. Tabs and splits are native WinUI 3 components rather than drawn cells, and the window can use Mica and Acrylic. Rendering goes through DirectX 12 with DXGI swap chains and DirectComposition, 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.

WezTerm runs on Windows 10.0.17763 or later, macOS, Linux, FreeBSD and NetBSD. The Windows install page offers a setup.exe built with Inno Setup and a portable zip, and lists winget, Scoop and Chocolatey packages, with a nightly build next to the stable one. Wintty is not on winget or Chocolatey: its signed builds sit behind a sponsorship, so a public package listing has nothing to point at.

Licensing and price

WezTerm is free and open source under the MIT license. The repository carries the full 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 WezTerm is the better choice

If you work on more than Windows, WezTerm is the better fit. One Lua configuration and one terminal cover macOS, Linux and Windows, and the same domain model reaches a server over SSH or TLS. Its multiplexer is more flexible than Wintty's for remote work, and its unix domains can attach a Windows GUI to a session over a unix socket. It is also free under the MIT license, with no paid tier between you and session persistence.

Wintty's case is the Windows desktop. If you want a native WinUI 3 terminal, a session daemon that starts at logon without a configuration file, and a pane tree that moves between windows with a picker, Wintty Pro does that. If remote attach or one config across three operating systems is the requirement, WezTerm already has the answer.

Other comparisons

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.