mrkeyoor.com_
Sat 31 Oct 13:11 UTC
Dev Toolsevaluationupdated 12 Oct 2026

tmux review

tmux lets you keep several command-line programs in one terminal workspace and return to them after disconnecting. It runs those programs under a background server, so a dropped SSH connection doesn't have to end your remote work.

+80stars / 7d
Verdict

Our tmux run passed a 19-second install, a 21-second build, and a 3-second test step, making this checkout straightforward to try in the lab environment. I'd use it for remote interactive work that needs to survive dropped connections, provided you're willing to learn the prefix key. Choose a service manager for jobs that need restart guarantees, and don't share a tmux socket with untrusted users.

We ran it

Lab card: what happened when we ran tmuxScreenshot of tmux (github.com/tmux/tmux)
Install✓ · 19s
Build✓ · 21s
Tests✓ · 3sran, no count parsed
Repo637 files~146,927 lines of source · 5.4 MB · 2 CI workflows

Answers from our run

Does tmux build from source?

Dependencies installed in 19 seconds, and the build succeeded in 21 seconds. We cloned commit 95c1c3d into a clean Debian container with 3 CPUs and no project-specific setup.

Do tmux's tests pass?

Yes. The project's own test command exited successfully in 3 seconds, although its output did not expose an individual test count.

Who should not use tmux?

Developers requiring a native Windows program: the README lists Unix platforms and gives no native Windows route.

What are the alternatives to tmux?

Zellij, WezTerm. Our tmux run passed a 19-second install, a 21-second build, and a 3-second test step, making this checkout straightforward to try in the lab environment.

Setup4/519-second install passed; source builds require system tooling
Docs4/5Useful manual and wiki; everyday controls take study
Community5/5October 12 push and current issue activity show ongoing work
Maturity4/5Build and test step passed; terminal-specific reports remain

Discussed on

  1. hnTmux has left SourceForge504 points
  2. hnTmux 2.0 released353 points
  3. hnSystemd developer asks tmux to add systemd specific code194 points
  4. hnTmux 1.9 released182 points
  5. hnTmux 3.518 points

Who it’s for

Developers who work over SSH and want to reconnect to the same editor and shells.
Operators keeping interactive investigations and logs together in named sessions.
Terminal users willing to learn the prefix key and configure pane behavior for their own workflow.

Who it’s NOT for

Developers requiring a native Windows program: the README lists Unix platforms and gives no native Windows route.
Operators expecting jobs to recover after a reboot or server crash: tmux sessions depend on a running server, and the FAQ says they are gone if it is killed.
Providers sharing terminals with untrusted users: the FAQ says socket access grants control of the server, even with read-only attachments.
Ghostty and Neovim users who require reliable theme-change notifications without investigation: open issue 5726 reports tmux 3.8 dropping palette updates when the light-or-dark value stays the same.

Setup reality

Our fresh Debian sandbox installed commit 95c1c3d in 19 seconds, built it in 21 seconds, and passed the reported test step in 3 seconds on October 11, 2026. It had 3 CPUs and 8 GB of RAM, used image lab-cpp:1, and ran without privileges or secrets. The checkout was 5.4 MB across 637 files.

Personal use needs no cloud credentials or external service. The README names libevent and ncurses plus the C build tools, with autoconf and automake for a Git checkout. Configuration is optional, and the repository supplies an example file. Our successful run doesn't establish which packages were already present in the lab image.

The documented platforms are Unix systems, including Linux and macOS. Terminal capabilities and prefix-key habits need attention. Detaching keeps the workspace alive only while the tmux server remains running, so plan separately for host reboots and automatic service recovery.

A dropped SSH connection needn't end your session

Start tmux new -s work on a remote machine before opening your editor or running an interactive command. If your connection drops, the tmux server keeps that workspace alive. Connect again and use tmux attach -t work to return. That's the reason I'd choose tmux over adding another terminal tab: the programs live on the machine running tmux, independently of the terminal you're looking through. The getting-started guide describes this exact remote-work pattern.

The 19-second install makes trying it a reasonable first step, but keeping a session alive has a boundary. The server is a running process, and its sessions disappear if that process is killed. A host reboot therefore ends them too. Use tmux for an editor, an investigation, or an interactive job you intend to revisit. A service that needs automatic restart after failure belongs under a service manager. Detaching won't restart a failed command.

What happened when we ran it

Our sandbox installed tmux commit 95c1c3d in 19 seconds, built it in 21 seconds, and completed the test step successfully in 3 seconds. We ran it on October 11, 2026, in a fresh Debian container using image lab-cpp:1, with 3 CPUs and 8 GB of RAM. The container was unprivileged and held no secrets. All reported steps passed. Those are setup results, not measurements of typing latency or terminal rendering speed.

The checkout contained 637 files, roughly 146,927 lines of source, and occupied 5.4 MB. The lab found 2 CI workflow files, no Dockerfile, and no tests directory. The successful test step and absent directory can both be true: the summary doesn't identify the command or enumerate the cases it ran. We can't turn that result into a claim about complete test coverage. Nor is the checkout size an installed footprint or a runtime memory measurement.

The prefix key takes practice, and the README targets Unix

By default, you press Ctrl-b before a tmux command key. Ctrl-b followed by d detaches, while the manual explains window creation, pane splitting, and copy mode for moving through earlier output. Sessions group windows, and windows contain panes. That hierarchy pays off when one project needs an editor beside logs and another needs its own workspace. If you only want local side-by-side shells, learning these controls may buy you little.

The 8 GB available in our sandbox isn't a stated minimum for tmux. Platform choice matters more here: the README lists Linux, macOS, the BSDs, and Solaris, without a native Windows route. Its source instructions name libevent, ncurses, a C compiler, make, pkg-config, and yacc or bison. A Git checkout also needs autoconf and automake. The successful run doesn't make those requirements optional. The README does tell you about them, so there's no hidden-package failure to report.

Sharing a tmux socket requires trusting the other person

The FAQ's socket warning is unusually direct: anyone who can access the socket must be trusted to control the server. Even a read-only attachment isn't a security boundary. That's fine for showing a colleague a debugging session under an agreed trust arrangement. It rules out treating tmux as an isolated terminal service for unrelated customers. Socket permissions decide who gets access, and access carries more authority than watching a screen might suggest.

The install completed in 19 seconds in an unprivileged container with no secrets, which gives the setup result a useful limit. It tells you nothing about a shared production session containing deployment credentials or an authenticated shell. For ordinary personal use, tmux needs no cloud account, API key, or external backend. Keep the socket restricted to the people who should control those programs. If your product needs tenant isolation, choosing tmux won't supply the missing boundary.

Version 3.8 has a reported palette-notification problem

Open issue 5726 describes tmux 3.8 dropping palette-update notifications when a terminal changes between themes with the same light-or-dark value. The reporter names Ghostty on macOS and Neovim inside the pane. An editor can consequently miss the cue to refresh its colors. This is a specific user report, not something our sandbox reproduced. Separately, the FAQ tells users to check that TERM correctly describes the terminal both outside and inside tmux before reporting display problems.

The passing 3-second test step doesn't settle either interaction with your terminal. Before moving your daily workspace, attach with the terminal you actually use and try your editor's shortcuts, scrolling, and theme changes. The shipped example configuration adjusts RGB support and enables mouse handling, so configuration is part of using tmux comfortably. Keep that file small enough to understand. A copied configuration that changes the prefix and terminal settings can make someone else's convenience your troubleshooting problem.

October activity supports adoption, with two different alternatives

The repository was pushed on October 12, 2026, and GitHub returned 49,912 stars with 35 open issues and PRs combined. Release 3.8 shipped on September 9. Recent issue updates include terminal-input reports, while the release changes describe floating-pane improvements and built-in light and dark themes. Pushes and issue activity together show ongoing maintenance. Popularity alone wouldn't establish that, and the open count shouldn't be read as a tally of confirmed defects.

The 21-second build in our environment removes one practical obstacle to trying tmux, though it won't choose your preferred interface. Pick Zellij when configurable layouts and WebAssembly plugins are part of the workspace you want. Pick WezTerm when you want the graphical terminal emulator and multiplexer together. I'd start tmux with a named session and its default controls. Detach, reconnect, and return to the same editor before spending an evening on a status-bar theme.

Alternatives

ProjectWhat it isPick it when
Zellij gh↗A terminal workspace with configurable layouts and WebAssembly plugins.pick this instead when built-in layout and plugin features match the workspace you want.
WezTerm gh↗A graphical terminal emulator with its own multiplexer.pick this instead when you want to choose the terminal emulator and multiplexer together.

What people are saying

  1. [hackernews] Make Tmux the OS

Sources

  1. tmux source and README
  2. tmux getting-started guide
  3. tmux manual
  4. tmux FAQ
  5. tmux 3.8 release
  6. Palette-notification report, issue 5726
  7. Zellij source and README
  8. WezTerm source and README

More dev tools reviews

rufus · linux-insides · cat-catch · date-fns · okhttp · the-craft-of-selfteaching · the whole board →