What is WezTerm?
WezTerm is a terminal emulator that also does the job of a terminal multiplexer, so splitting a window into panes, opening tabs and attaching to a session that survives disconnection are all built in rather than delegated to a separate program. It renders through the GPU, is written in Rust, and runs on Linux, macOS, Windows, FreeBSD and NetBSD. The multiplexer can be reached over SSH or over TLS on TCP/IP, which means a session can be started on one machine and joined from another. It is configured through a Lua file that reloads without restarting, and it implements the iTerm2 and Kitty image protocols plus experimental Sixel graphics. It is free, MIT-licensed, and suits people who live in a terminal and want one program instead of two.
Verified product facts
- Type
- terminal emulatorEditorially reviewed
- Platform
- macOS
- Apple Silicon
- YesDerived
- Pricing
- Open sourceDeveloper-stated
- Open source
- Yes
- Developer
- Wez FurlongDeveloper-stated
- Relationship to Nuanyue
- Third-party product — not published by NuanyueEditorially reviewed
- Licence
- MIT
- Current version
- 20240203-110809Developer-stated
- Official website
- wezterm.org/
Last updated . Facts marked developer-stated come from the developer and are not independently confirmed; editorially reviewed marks a Nuanyue judgement.
Key features
What WezTerm does at a glance.
Runs on Linux, macOS, Windows 10, FreeBSD and NetBSD
Multiplexes panes, tabs and windows
On local and remote hosts, with native mouse and scrollback
Ligatures, colour emoji and font fallback
With true colour and dynamic colour schemes
Hyperlinks
In terminal output
Searchable scrollback, reachable
With the mouse wheel or a keyboard shortcut
Renders underline, double underline, italic, bold and strikethrough
Configuration file
With hot reloading, so changes apply without a restart
Multiple windows, horizontal and vertical splits, and tabs
Built-in SSH client
With native tabs
Connects to serial ports
For embedded and Arduino work
Connects to a local multiplexer server
Over unix domain sockets
Connects to a remote multiplexer
Over SSH, or over TLS on TCP/IP
iTerm2-compatible image protocol and a built-in imgcat command
Kitty graphics protocol support
Sixel graphics support, described
By the project as experimental
What you can use WezTerm for
- Splitting one window into panes without installing tmux
- Starting a session on a remote machine and reattaching to it from somewhere else
- Working with a serial console on embedded hardware from the same terminal
- Displaying images inline in the terminal rather than opening a viewer
Who is WezTerm for?
- Developers who want terminal multiplexing and emulation in a single program
- People who want their terminal configured in a real programming language with live reload
Who is WezTerm not for?
- Anyone who wants a Mac-native terminal that follows Apple's conventions — WezTerm is a cross-platform application with its own interface
- Users who need a frequent release cadence, since the project publishes releases infrequently
Limitations
- The minimum macOS version is not stated in the sources Nuanyue tracks
- The project's releases are infrequent; the current release dates from February 2024, so features land in the repository before they reach a download
- The macOS build is distributed as a zip from GitHub releases rather than through the Mac App Store
- Sixel graphics support is described by the project itself as experimental
- Configuration is written in Lua, which is a real language to learn rather than a settings screen
Strengths and trade-offs
What WezTerm does well, and what to weigh before choosing it. Points marked developer-stated come from the developer’s own material and have not been independently confirmed.
Strengths
- Multiplexes panes, tabs and windows across local and remote hosts, so a separate multiplexer is not needed.Developer-stated
- The multiplexer can be reached over SSH, or over TLS on TCP/IP, so a session can be started on one machine and joined from another.Developer-stated
- Configuration lives in a file that hot-reloads, so changes apply without restarting the terminal.Developer-stated
- Implements the iTerm2 image protocol with a built-in imgcat command, plus Kitty graphics support.Developer-stated
- Renders more text attributes than most terminals, including underline, double underline, italic, bold and strikethrough.Developer-stated
- Free and open source under the MIT licence, so the implementation can be read and the software rebuilt.
- Ships a built-in SSH client with native tabs, and can talk to serial ports for embedded work.Developer-stated
Trade-offs
- Releases are infrequent: the current published release dates from February 2024, so newer work only exists in the repository.
- Configuration is a Lua file rather than a settings interface, which is powerful but has to be learned.Derived
- The macOS build arrives as a zip from GitHub releases, so installing and updating it is a manual step.Derived
- The project describes its Sixel graphics support as experimental, so that feature should not be relied on.
First-use experience
What the app asks of you when you set it up. Only established facts appear here; anything we could not confirm is left out rather than guessed at.
- Installation
- Downloaded as a zip archive from the project's GitHub releases — a single macOS archive rather than separate Intel and Apple silicon builds — and unpacked by hand.
- First launch Derived
- No account or licence is involved. The application starts with defaults and reads a Lua configuration file once you create one.
- System integration Developer-stated
- Can register as the default terminal, and provides its own multiplexer that may run as a local server reachable over a unix domain socket.
- Apple Silicon Derived
- Supported
What it does
A terminal emulator draws text and takes keystrokes; a multiplexer splits one window into panes and lets a session outlive the window it started in. WezTerm does both, which is the main reason to choose it: there is no separate tmux or screen to install and configure, and no boundary between the emulator and the thing managing your panes. The multiplexer is not limited to the local machine — it can be connected to over SSH, or over TLS on TCP/IP, so a session started on a server can be picked up from a laptop somewhere else. A local multiplexer server is also reachable over a unix domain socket.
Rendering goes through the GPU. The project describes itself as a powerful cross-platform terminal emulator and multiplexer written by Wez Furlong and implemented in Rust, and it runs on Linux, macOS, Windows 10, FreeBSD and NetBSD from the same codebase.
Text, fonts and images
The emulator side is more thorough about text than most. It supports ligatures, colour emoji and font fallback with true colour and dynamic colour schemes, and it renders underline, double underline, italic, bold and strikethrough — a longer list of attributes than most terminals manage. Scrollback is searchable, output can carry hyperlinks, and SGR-style mouse reporting works in programs such as vim and tmux. For images it implements the iTerm2 protocol with a built-in imgcat command, supports the Kitty graphics protocol, and offers Sixel graphics that the project itself labels experimental.
Configuration, and the release cadence
Configuration is a Lua file rather than a settings window, and it hot-reloads: you edit the file and the running terminal picks the change up. The project publishes a full configuration and Lua reference alongside a CLI reference. That is a genuine trade: more expressive than a preferences pane, but something you have to learn.
The one thing to check before adopting WezTerm is its release cadence. The current published release is 20240203-110809, from February 2024; the repository is active, but new work reaches the repository long before it reaches a downloadable build. The macOS download is a single zip archive from GitHub releases — one build for both Intel and Apple silicon Macs — which has to be unpacked and installed by hand.
Questions about WezTerm
Does WezTerm need tmux?
No. Multiplexing is built in: the project describes it as multiplexing terminal panes, tabs and windows on local and remote hosts with native mouse and scrollback. The multiplexer can be connected to over SSH, or over TLS on TCP/IP, and a local multiplexer server is reachable over a unix domain socket.Developer-stated
How is WezTerm configured?
Through a configuration file that supports hot reloading, so edits take effect without restarting the application. The project publishes a full configuration and Lua reference rather than offering a graphical settings screen.Developer-stated
Can WezTerm display images in the terminal?
Yes. It implements the iTerm2 image protocol and ships a built-in imgcat command, supports the Kitty graphics protocol, and offers Sixel graphics support that the project describes as experimental.Developer-stated
Is WezTerm still actively released?
The repository is active but releases are infrequent: the current published release is 20240203-110809, dated February 2024. Newer work appears in the repository before it appears in a downloadable build.
What platforms does WezTerm run on?
Linux, macOS, Windows 10, FreeBSD and NetBSD, from a single project written in Rust.Developer-stated
Competitors
Direct competitors: overlapping features aimed at the same users.
kitty
GPU-accelerated terminal emulator that pioneered the graphics protocol.
Both are GPU-accelerated terminals that implement graphics protocols and remote control, but WezTerm folds multiplexing in and is configured in Lua, while kitty keeps the multiplexer as a separate command and is extended with Python kittens.

iTerm2
Terminal emulator with split panes, search and shell integration.
Both are feature-rich terminals with tabs, panes and inline image support, but iTerm2 is a Mac-only application with a graphical preferences window while WezTerm is cross-platform and configured through a file.
Similar apps
Related in purpose, but not a straight swap.
Alacritty
Minimal GPU-accelerated terminal emulator, still in beta.
Both are GPU-accelerated cross-platform terminals written in Rust, but Alacritty deliberately omits tabs and splits while WezTerm includes them.
Links
Sources
Facts on this page are checked against the sources below. Last updated .
- WezTerm — official websiteGrade B
- Wez Furlong — developer websiteGrade B
- WezTerm — documentationGrade C
- WezTerm — source repositoryGrade D



