tmux Integration
tmux integration keeps terminal sessions available after CrispyVibe quits. Quitting the app detaches the sessions and leaves them running. When you reopen CrispyVibe, it automatically reattaches to their full shell state, scrollback history, and running processes.
Enabling tmux integration
- Open App Settings > Terminal.
- Toggle tmux Integration on.
When enabled, a tmux configuration card appears with:
- On quit picker — choose between Detach keep alive or Terminate
- On tab close picker — choose between Detach or Terminate
- Manage Sessions button — opens the Session Manager
Binary detection
CrispyVibe checks for tmux in this order:
/opt/homebrew/bin/tmux/usr/local/bin/tmux/usr/bin/tmux
If CrispyVibe does not find a binary, it falls back to a direct shell without error.
How sessions work
- New terminal tabs create tmux sessions with the prefix
crispyvibes- - CrispyVibe applies these server options: mouse on, history-limit 50000, status off, escape-time 0
- When you relaunch the app, CrispyVibe automatically reattaches persisted tmux sessions with their previous shell state, scrollback, and running processes
- CrispyVibe skips preset commands when reattaching (preserving the existing session state) but runs them normally for new sessions
- Restarting a tab preserves the tmux session name
Session Manager
Open from App Settings > Terminal > tmux Integration > Manage Sessions.
Active sessions
- Green indicator
- Shows working directory, current command, and last-activity time
Orphaned sessions
- Orange indicator (zero attached clients)
- Kill button per row
- Kill All Orphans button for bulk cleanup
Use the Refresh button to update the list. If no sessions exist, the manager displays “No tmux sessions found.”
Remote tmux
For SSH-backed projects, the session name is derived from a stable hash of ssh://user@host:port/path. Reconnecting to the same remote reattaches to the same tmux session.
tmux priming menu
The terminal commands menu includes a nested tmux submenu that exposes the session priming options as individual commands:
- Mouse — enable mouse support
- Scrollback — raise the history limit
- Hidden status — hide tmux’s own status bar (CrispyVibe provides the tab UI)
- Fast escape — set
escape-time 0 - Truecolor — enable 24-bit color
- Best terminfo — select the richest available terminal profile
Choose Apply All to run them in one step. CrispyVibe automatically applies the same options when launching a session. Use the menu to apply or reapply them to remote sessions or shells where tmux was not primed.
VibeSpace Sessions sidebar
The sidebar groups sessions from the current VibeSpace by project, with separate local and remote sections. For sessions created outside CrispyVibe, it displays the tmux session name.
Session row actions
| Action | Effect |
|---|---|
| Preview | Temporary spotlight view of the session |
| Open in Project | Attach to the existing session |
| Terminate | Kill the tmux session |
Known limitations
- Requires tmux installed on the local machine (or remote host for SSH projects)
- Falls back silently to a direct shell when tmux is unavailable