gilvt
Comparison

gilvt vs tmux for coding agents

gilvt is a native macOS terminal and Agent workspace. tmux is a terminal server that keeps processes alive independently of the terminal window. The overlap is visible; the underlying job is different.

Choose tmux for detach/attach, remote persistence and shared terminal sessions. Choose gilvt for native macOS UI, Claude Code and Codex status, notifications and per-turn review. Use both when you need remote persistence and local Agent awareness.

The process ownership is the essential difference

gilvt directly owns a PTY for each pane and renders it with its terminal emulator. Tabs and splits are native application layout. When the app exits, those PTY clients are gone; gilvt can rebuild the workspace and resume supported Agent sessions, but it does not preserve arbitrary process memory.

Gilvt.app → PTY → shell / claude / codex

tmux inserts a server between the outer terminal and the real shells. The server owns the PTYs, so closing a terminal window only disconnects the client.

gilvt / Terminal.app → tmux client ⇄ tmux server → PTYs → processes

Capability comparison

Capabilitygilvttmux
Native macOS applicationYesNo; runs inside a terminal
Terminal renderingOwn GPU-rendered emulatorRenders through the outer terminal
Detach and reconnect to the same processNoCore feature
Remote SSH persistenceDepends on the SSH connectionExcellent
Multiple clients on one sessionNoYes
Claude Code / Codex stateBuilt inRequires scripts or plugins
Per-turn commands, files and diffBuilt inNot a core concept
Quick Look, Markdown and editorNative viewsExternal tools
Automation ecosystemEarlyMature CLI, hooks and plugins

Restore is not the same as persistence

gilvt saves the application workspace: windows, tabs, splits, directories and durable Agent identifiers. On relaunch it reconstructs that layout and offers Agent sessions for resume. A Python REPL's memory or a running development server is not checkpointed.

As long as the tmux server survives, attaching returns to the exact same shell, editor and process. After a machine reboot, ordinary tmux processes are also gone; plugins can rebuild layouts but cannot restore arbitrary in-memory state.

Why gilvt understands more about agents

tmux primarily models sessions, windows and panes. gilvt also models Agent sessions, turns, approvals, questions, tool calls, artifacts and resumable history. That enables an attention queue and review workflow rather than only a pane grid.

This semantic layer is useful when several agents run locally and the bottleneck is deciding where to look next.

When to use tmux inside gilvt

The combination is especially useful for remote development:

gilvt on macOS → SSH → tmux on server → long-running Agent or service

tmux keeps the remote processes alive across network interruptions. gilvt remains the local terminal and workspace. Some fine-grained Agent metadata may be harder to associate with inner tmux panes, so the exact integration depends on where hooks and session identifiers run.

Which should you choose?

gilvt does not position itself as a tmux replacement. It replaces the outer terminal-plus-dashboard workflow, while tmux remains a strong process-persistence layer.