Awesome Open Source
Awesome Open Source

3mux is a terminal multiplexer with out-of-the-box support for search, mouse-controlled scrollback, and i3-like keybindings. Imagine tmux with a smaller learning curve and more user-friendly defaults.


  • batteries included
  • i3-like keybindings
  • session management
    • optionally interactive
    • self-documenting
  • search
  • scrollback
  • mouse support
    • drag to resize panes
    • click to select pane
    • scrollwheel

Key Bindings

Key(s) Description
Create a new pane
Alt+Shift+F Make the selected pane fullscreen. Useful for copying text
Select an adjacent pane
Move the selected pane
Alt+R Enter resize mode. Resize selected pane with arrow keys or h/j/k/l. Exit using any other key(s)
Alt+/ Enter search mode. Type query, navigate between results with arrow keys or n/N
Scroll Move through scrollback
Shift Many terminal emulators support selecting text while pressing this key

Supported tmux Bindings

Key(s) Description
Ctrl+b " Split horizontally
Ctrl+b % Split vertically
Ctrl+b { Move pane left
Ctrl+b } Move pane right

Supported screen Bindings

Key(s) Description
Ctrl+a | Split horizontally
Ctrl+a S Split vertically
Ctrl+a Tab Cycle forward through panes

Installation Instructions

Using Homebrew
brew update
brew install 3mux
Using Nix flakes (requires Nix 2.4+)
nix run github:aaronjanse/3mux
Package manager

Packages for 3mux

Building from source
  1. Install Golang
  2. go get
  3. Run 3mux to launch the terminal multiplexer

To update 3mux, run go get -u

Warning: Arrow-key-controlled pane management is currently unsupported on Please use the default vim-like keybindings instead.
Preferences > Profiles > Keyboard > Use Option as Meta Key


Preferences > Profiles > Keys > Option Key > Esc+


3mux searches XDG_CONFIG_HOME to find its config. If it cannot, it writes a config to ~/.config/3mux/config.toml upon the first run. Modifiers in shortcuts (e.g. Alt) are case-insensitive.

You can detect if you're running a script inside 3mux by checking if THREEMUX is equal to 1.


All help is welcome! You can help the project by filing issues recording what works well, what doesn't work well, and/or a feature you want. Pull Requests would be very much appreciated.

Related Projects

Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
go (15,168
hacktoberfest (4,261
tui (155
tmux (144
i3 (67
i3wm (66