A Go CLI for tmux that saves sessions, windows, panes and commands, then restores them lazily from a TUI picker.
drolosoft/cmux-resurrect
A macOS CLI that saves and restores cmux and Ghostty terminal workspaces, including layouts, working directories, and AI coding sessions.
- Stars
- 85
- Forks
- 6
- Open issues
- 0
- Last commit
- 18 days ago
What is it?
crex (cmux-resurrect) saves terminal workspace layouts by name and restores them later. It captures tabs, panes, working directories, and the commands running in each pane, and rebuilds the same split arrangement on restore. On cmux it also preserves sidebar workspace groups, including names, order, collapsed or pinned state, colour, and icon.
The tool detects 15 AI coding tools such as Claude Code, Codex, and Gemini CLI, capturing their session IDs so each pane or tab resumes its conversation on restore. Foreground processes like npm, nvim, and htop are also detected. Layouts can be written as TOML or Markdown blueprints, and 16 built-in templates provide starting setups such as IDE and monitoring layouts.
Access is through an interactive picker (crex pop, bound to Ctrl+G), an interactive shell, an Alfred workflow, and a background auto-save daemon. It works with both cmux and Ghostty on macOS.
Key features
- 01Saves and restores tabs, panes, working directories, and running commands by name.
- 02Preserves cmux sidebar groups, including collapsed, pinned, colour, and icon state.
- 03Detects 15 AI coding tools and resumes their sessions per pane and tab.
- 04Ships 16 built-in layout templates such as IDE and monitoring setups.
- 05Provides a fuzzy-search picker, Alfred integration, and a background auto-save daemon.
Use cases
- Returning to a multi-project development setup after a restart without rebuilding splits by hand.
- Resuming several AI coding agent conversations across worktree tabs at once.
- Sharing reproducible workspace definitions as version-controlled Markdown or TOML files.
Quick start
- 1
Install crex via Homebrew
brew install drolosoft/tap/crex - 2
Run the first-run setup wizard
crex setup - 3
Try the bundled demo layout
crex restore demo - 4
Save your current layout and restore it later
crex save my-day
Things to know
- macOS only.
- Requires cmux or Ghostty as the terminal backend.
- Exact split geometry is supported only on cmux; Ghostty restores per-pane working directories only.
In collections
Topics
FAQ
- What is cmux-resurrect?
- A macOS CLI that saves and restores cmux and Ghostty terminal workspaces, including layouts, working directories, and AI coding sessions. crex (cmux-resurrect) saves terminal workspace layouts by name and restores them later. It captures tabs, panes, working directories, and the commands running in each pane, and rebuilds the same split arrangement on restore. On cmux it also preserves sidebar workspace groups, including names, order, collapsed or pinned state, colour, and icon.
- Is cmux-resurrect free to use? What license does it have?
- cmux-resurrect is open source under the MIT license. Check the license terms before using it in commercial products.
- Is cmux-resurrect still maintained?
- Actively maintained. The last commit to cmux-resurrect was on Oct 19, 2026.
- What can I use cmux-resurrect for?
- Returning to a multi-project development setup after a restart without rebuilding splits by hand. Resuming several AI coding agent conversations across worktree tabs at once. Sharing reproducible workspace definitions as version-controlled Markdown or TOML files.
- How do I install cmux-resurrect?
- Install crex via Homebrew: brew install drolosoft/tap/crex Run the first-run setup wizard: crex setup Try the bundled demo layout: crex restore demo Save your current layout and restore it later: crex save my-day
- Where can I get cmux-resurrect?
- The source code and installation instructions are on GitHub: https://github.com/drolosoft/cmux-resurrect
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A native macOS terminal built on libghostty, with vertical tabs, agent-aware notifications and a scriptable CLI for running AI coding agents in parallel.
A CLI app for running and switching between multiple AI coding agent sessions across Git worktrees and projects, without tmux.
A tmux-style terminal multiplexer whose background server can be driven from scripts and coding agents via JSON CLI commands.
A Go CLI that creates and switches tmux sessions quickly by naming and jumping to projects via zoxide, git repos, and config.
A cross-platform shell that uses Python as its scripting language, mixing shell commands and Python code in one syntax.