sesh
Sesh is a CLI that creates and manages tmux sessions from anywhere on your
machine. Instead of remembering which sessions exist and manually cd-ing to a
project before attaching, you fuzzy-find across your running sessions, your
zoxide history, and your configured projects β then jump straight in. If a
session doesnβt exist yet, sesh creates it and names it for you.
Features
- β‘ Smart session creation β names sessions after the git repo, git
remote, or directory so you never end up with
0,1, and2. - π Zoxide integration β your most-visited directories become sessions you can jump to instantly.
- βοΈ Per-project configuration β define startup commands, windows, and
preview commands for a project in
sesh.toml. - β³οΈ Wildcard configs β apply one config to every project matching a glob instead of repeating yourself.
- π Built-in picker β an interactive session selector out of the box, or wire it up to fzf, television, or gum.
- πͺ Window management β
sesh windowlists, switches, and creates windows the same waysesh connecthandles sessions. - π Last session switching β bounce between your two most recent sessions with a single command.
- π Clone and connect β clone a git repo and start a session for it in one step.
- β¨οΈ Shell completions β tab completion for Bash, Zsh, fish, and PowerShell.
Get started
Sesh installs via Homebrew, Go, Nix, Conda, and the AUR. Installation steps,
the full sesh.toml reference, and example tmux keybindings all live on
GitHub.
joshmedeski/sesh
Smart session manager for the terminal