Repolode
alchemmist

alchemmist/lazy-tmux

A Go CLI for tmux that saves sessions, windows, panes and commands, then restores them lazily from a TUI picker.

Stars
244
Forks
9
Open issues
55
Last commit
4 days ago

What is it?

lazy-tmux is a command-line tool for saving and restoring tmux sessions. It captures windows, pane layouts, running commands and optionally scrollback history, so you can kill the tmux server and bring your work back later.

Restoration is lazy: you choose which sessions or windows to bring back from an interactive TUI tree-and-table browser with fuzzy search, or from a lighter fzf-based picker. An autosave daemon snapshots all sessions in the background, and a bootstrap option can restore the latest session when tmux starts.

The project also tracks Codex, Antex and Claude Code agent sessions in panes, restoring the original conversation only when its identity has been verified. It supports tmux versions from 2.9 through 3.7b and is installable via Homebrew, AUR and Docker.

Key features

  • 01Saves current, specific or all sessions, including windows, panes, layouts and running commands.
  • 02Lazy restore brings back only the sessions or windows you select.
  • 03Background autosave daemon snapshots sessions periodically.
  • 04Interactive TUI picker with tree view, table and fuzzy search.
  • 05Optional fzf-based picker and a sessions-only mode for popups.
  • 06Optional scrollback capture and replay.

Use cases

  • Restoring a full development environment after rebooting or killing the tmux server.
  • Switching quickly between many tmux sessions from a popup picker.
  • Keeping long-running commands like npm or docker-compose laid out across panes after a restart.

Quick start

  1. 1

    Build from source after cloning the project

    make build
  2. 2

    The binary is written to bin/lazy-tmux; run it from there

    bin/lazy-tmux

Things to know

  • Requires Go and a cloned repository to build from source; no install command is given in the README.
  • Agent integrations for Codex and Claude need lifecycle hooks installed and trusted manually inside each client.
  • Full configuration and usage details are only documented on the external website.

Topics

FAQ

What is lazy-tmux?
A Go CLI for tmux that saves sessions, windows, panes and commands, then restores them lazily from a TUI picker. lazy-tmux is a command-line tool for saving and restoring tmux sessions. It captures windows, pane layouts, running commands and optionally scrollback history, so you can kill the tmux server and bring your work back later.
Is lazy-tmux free to use? What license does it have?
lazy-tmux is open source under the MIT license. Check the license terms before using it in commercial products.
Is lazy-tmux still maintained?
Actively maintained. The last commit to lazy-tmux was on Oct 17, 2026.
What can I use lazy-tmux for?
Restoring a full development environment after rebooting or killing the tmux server. Switching quickly between many tmux sessions from a popup picker. Keeping long-running commands like npm or docker-compose laid out across panes after a restart.
How do I install lazy-tmux?
Build from source after cloning the project: make build The binary is written to bin/lazy-tmux; run it from there: bin/lazy-tmux
Where can I get lazy-tmux?
The source code and installation instructions are on GitHub: https://github.com/alchemmist/lazy-tmux

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects