Per-project/window tmux recorder using asciinema; records the current pane
and follows the user around the current window.
Install tvmux from pip or uv, or run standalone from uvx, like so:
$ uvx tvmuxThe above will open a textual user interface, where you can view ongoing
recordings, start + stop them etc.
You can start recording from the command line too:
# Start recording the current window
tvmux rec
# list ongoing recordings
tvmux rec ls
# stop them all
tvmux rec stop
# or pick them off like Docker containers
tvmux rec stop $(tvmux rec ls -q)There's also a background server you can manage, and a CLI generated straight from its REST API if you want to poke at it:
tvmux server start|stop|status
tvmux api --helpBy default, it'll save to ~/Videos/tmux/YYYY-MM/. See all configuration options:
# Show default config (TOML format)
tvmux config defaults
# Show available environment variables
tvmux config defaults --format=env
# Show your current config
tvmux config showTo customize, create ~/.tvmux.conf or use environment variables like TVMUX_OUTPUT_DIRECTORY.
| 📺 asciinema | The terminal recorder |
| 🪟 textual | TUI library for Python |
| 🗔 bittty | My terminal |
| 🎬 sh2mp4 | Convert this to MP4 files |