About
About tmux and tmux.app: history, mission and standards
tmux is a free, open-source terminal multiplexer created by Nicholas Marriott in 2007 and released under the ISC license. tmux.app is an independent guide to it: every command on this site is run on a real tmux 3.8 build before it is published.
What tmux.app is
tmux.app is an independent documentation site for tmux. It is not the official tmux website and is not affiliated with, endorsed by or connected to the tmux project, its author or the OpenBSD project. We write guides, references and tools for people who use tmux every day, from their first tmux new to scripting a whole workspace.
The official tmux resources are:
- github.com/tmux/tmux: source code, releases and the issue tracker.
- The tmux wiki: installation notes, the FAQ and getting-started pages written by the project.
- tmux(1) on man.openbsd.org: the manual page. Our man tmux guide explains how to read it.
Why this site exists: the tmux manual is complete but dense, and much of what you find online was written for tmux 1.x or 2.x and is now wrong (key binding syntax, color options and defaults have all changed). tmux.app aims to give you short, correct answers for the version you actually run, with the reasoning and the edge cases behind them.
A short history of tmux
Nicholas Marriott made the first commit to tmux on July 9, 2007. The commit message describes the starting point: detaching, reattaching, creating and listing sessions already worked, but there was "no status bar yet and no key remapping or other customisation." As of October 2026, tmux is 19 years old.
The name is short for terminal multiplexer: one terminal holds many sessions, windows and panes, and they keep running on a server process after you disconnect. tmux was written as a newer alternative to GNU Screen; see Screen vs tmux for how the two differ today.
| Date | Milestone | Source |
|---|---|---|
| 9 Jul 2007 | Initial import to CVS by Nicholas Marriott | First commit in the tmux git history |
| 1 Jun 2009 | tmux imported into the OpenBSD base system | tmux CHANGES file |
| 20 Sep 2009 | tmux 1.0 released | git tag 1.0 |
| 18 Oct 2009 | OpenBSD 4.6 ships tmux, replacing window(1) | OpenBSD 4.6 release notes |
| 2015 | Portable tmux development moves to GitHub; tmux 2.0 released on May 5, 2015 | git history, tag 2.0 |
| 14 Jun 2019 | tmux 3.0 released | git tag 3.0 |
| 8 Oct 2026 | tmux 3.8: movable floating panes, built-in themes, mouse on by default | git tag 3.8, CHANGES |
tmux is developed in the OpenBSD source tree and synced to the "portable" version on GitHub, which builds on Linux, macOS, FreeBSD, NetBSD and Solaris. Since 2007 the GitHub repository has collected 12,613 commits and 45 release tags. Development picked up sharply in 2026, the year floating panes arrived in 3.7 and 3.8.
Source: git log of github.com/tmux/tmux, counted 28 Oct 2026 (2026 = year to date)
Show the data
| Year | Commits |
|---|---|
| 2007 | 372 |
| 2008 | 269 |
| 2009 | 1,941 |
| 2010 | 575 |
| 2011 | 485 |
| 2012 | 507 |
| 2013 | 519 |
| 2014 | 292 |
| 2015 | 683 |
| 2016 | 416 |
| 2017 | 844 |
| 2018 | 343 |
| 2019 | 873 |
| 2020 | 979 |
| 2021 | 563 |
| 2022 | 302 |
| 2023 | 191 |
| 2024 | 279 |
| 2025 | 346 |
| 2026 | 1,834 |
tmux is open source under the ISC license, a short permissive license that lets you use, copy, modify and distribute it with or without fee, as long as the copyright and permission notice stay with the code. The full release history, with dates and highlights for every version, is on tmux releases and changelog.
How pages are made and tested
We do not write commands from memory. Each page goes through the same checks before it is published:
Build the real thing
tmux 3.8 is compiled from the official release tarball (
tmux-3.8.tar.gzfrom the GitHub release). Ubuntu 24.04's packaged tmux 3.4 sits next to it, so we can say when something behaves differently on older versions people really run.Run every command and key
Every command and key binding on a page is run on a private tmux server with no config file, so your
~/.tmux.confand ours never get in the way:shelltmux -L check -f /dev/null new -d tmux -L check list-sessions tmux -L check kill-serverGenerate reference tables from the build
The key binding, command and option tables are not typed by hand. They are generated from the output of
list-keys,list-commandsandshow-optionson tmux 3.8, matched to the 3.8 manual page. If a default changes in a new release, the tables change with it.Use primary sources for everything else
Release dates come from the official git tags and the CHANGES file. Facts about other tools (versions, distro packages, GitHub stars, Zellij, cmux, plugins) are fetched from their own pages, and the page says the date they were fetched.
Show real screens
Screenshots marked "Real screenshot" are taken from a real xterm window running tmux 3.8 on a virtual display. A script drives tmux with the same commands the guides document, then captures the window. Nothing is mocked up, and each screenshot lists the exact commands that produced it.

How this was captured
Captured 2026-10-28 17:56 UTC from a real xterm window running tmux 3.8 on Ubuntu 24.04. Nothing is mocked up. The commands that set up the screen:
tmux new-session -d -s work -n editor -x 110 -y 29
tmux new-session -d -s api -n server
tmux new-session -d -s logs
tmux split-window -h -t work:editor
tmux split-window -v -t work:editor.1
tmux new-window -d -t work -n tests
tmux send-keys -t work:editor.0 'clear; uptime -p; nproc; echo; df -h / | column -t; echo; ps -o pid,comm' Enter
tmux send-keys -t work:editor.1 'clear; tmux -V; tmux ls' Enter
tmux send-keys -t work:editor.2 'clear; tmux list-panes -F '"'"'#{pane_index}: #{pane_width}x#{pane_height}'"'"'' Enter
tmux select-pane -t work:editor.1Corrections policy
If something on tmux.app is wrong, out of date or unclear, email hello@tmux.app. Include the page address, what you expected, what happened, and your tmux version (tmux -V) and operating system.
We reproduce the problem on a real tmux build. When it is confirmed, we fix the page and update its "Updated" date at the top. If the error changed the meaning of an instruction, we say so on the page. We do not quietly rewrite advice without changing the date.
For bugs in tmux itself, report them to the tmux project instead; the contact page explains how to write a report the developers can act on.
How the site is funded
tmux.app is free to read and has no accounts, paywalls or newsletters. It is paid for by advertising served through Ezoic. Ads appear in marked slots on guide pages; see the privacy policy for what the ad and analytics scripts do.
Ads never influence what we recommend. No company pays to be listed, ranked or mentioned, and there are no sponsored posts or affiliate links in our comparisons, plugin lists or install guides. When we recommend one tool or setting over another, it is because we tested it and it works better for the task.