tmux
What it is
tmux is a free terminal multiplexer for creating and controlling multiple terminals from one screen. Work is arranged in sessions that can hold multiple windows, with each window split into rectangular panes that have their own pseudo-terminals. Sessions continue running when detached or after a disconnection, so they can be reattached later. Multiple tmux instances can connect to the same session. A server manages sessions while client processes display them and communicate through a socket; the command-line interface also includes a control mode. The project lists OpenBSD, FreeBSD, NetBSD, Linux, macOS, and Solaris as supported systems. Users can build it from a release tarball or version control, and binary packages are available on some platforms. Building requires libevent 2.x, ncurses, a C compiler, make, pkg-config, and a suitable yacc implementation. The project identifies its source code under the ISC license.
For and against
For
- Sessions persist through detachment or disconnection.
- Windows can be split into rectangular panes.
- Multiple instances can connect to one session.
- Available on several listed operating systems.
Against
- Building requires several development tools and libraries.
- Binary packages are available only on some platforms.
The verdict
tmux is suited to terminal workflows that benefit from persistent sessions and pane-based layouts. Building it requires several dependencies, though some platforms offer binary packages.
Who it suits
tmux suits people who need to work with multiple terminals from one screen or keep sessions running across SSH disconnections. It also supports multiple instances connecting to a shared session.
Plans and prices
Open source
No paid tiers or usage limits stated
Read 30 Sep 2026 · github.com
On the record
- Control mode
- The command-line interface supports a control mode for controlling tmux.github.com · read 30 Sep 2026
- Dependencies
- Building tmux requires libevent 2.x, ncurses, a C compiler, make, pkg-config, and a suitable yacc implementation.github.com · read 30 Sep 2026
- Installation
- Users can build and install tmux from a release tarball or from version control, and some platforms provide binary packages.github.com · read 30 Sep 2026
- Intended users
- The project describes tmux as a tool for working with multiple terminals from one screen, including sessions that can persist across SSH disconnections.github.com · read 30 Sep 2026
- License
- The repository identifies tmux source code under the ISC license.github.com · read 30 Sep 2026
- Persistent sessions
- Sessions continue running after accidental disconnection or intentional detachment and can later be reattached.github.com · read 30 Sep 2026
- Purpose
- tmux is a terminal multiplexer that lets users create, access, and control multiple terminals from one screen.github.com · read 30 Sep 2026
- Security reporting
- The project asks users to report security issues to [email protected].github.com · read 30 Sep 2026
- Separate server processes
- A single server manages sessions while clients display them, and the server and clients communicate through a socket.github.com · read 30 Sep 2026
- Shared sessions
- Multiple tmux instances can connect to the same session.github.com · read 30 Sep 2026
- Support
- The project directs users to its tmux-users mailing list for general discussion and bug reports.github.com · read 30 Sep 2026
- Windows and panes
- A session can contain multiple windows, and a window can be split into rectangular panes, each with its own pseudo-terminal.github.com · read 30 Sep 2026