Save your project's terminal layout to a YAML file and restore it with one command every time you start work
Define separate workspaces for different projects, each with specific panes and auto-starting commands
Snapshot a live tmux session you already have arranged and turn it into a reusable config file
Run pre-load shell hooks to install dependencies automatically before a project session starts
Requires Python 3.10+ and tmux 3.2+ already installed on the system.
tmuxp is a session manager for tmux. Tmux is a terminal multiplexer, a program that lets you split your terminal into multiple panes and windows and keep them all running even if you disconnect. Setting up a specific layout of panes and starting the right commands in each one every time you sit down to work on a project is repetitive. tmuxp solves this by letting you describe that layout in a YAML or JSON config file and then restore the whole thing with a single command. A config file specifies a session name, the windows you want, what layout each window uses, and what commands should run in each pane. Running tmuxp load ./mysession.yaml recreates that exact setup. If you already have a tmux session arranged the way you like, tmuxp freeze can snapshot it to a config file so you can reload it later. Config files from the similar tools tmuxinator and teamocil are also supported. The tool includes a shell mode, tmuxp shell, which opens a Python console with the current tmux server, session, window, and pane available as objects you can inspect and manipulate programmatically. This is useful for debugging or scripting more complex tmux behaviors. A pre-load hook system lets you run arbitrary shell commands (such as installing dependencies) before a session is brought up. tmuxp is a command-line tool installed via pip, Homebrew, or the system package manager on Debian and Ubuntu. It requires Python 3.10 or later and tmux 3.2 or later. It is built on top of libtmux, a separate Python library for controlling tmux. The license is MIT.
← tmux-python on gitmyhub — every repo by this author, as a profile.
Verify against the repo before relying on details.