quil
v1.92.0 github
Compare · all comparisons

Quil vs tmux

The de-facto Unix terminal multiplexer. Server-side sessions, scriptable plugins, steep learning curve, shipped by default on most distros alongside screen.

tmux · where it wins

Ubiquity, stability, and the largest plugin ecosystem of any multiplexer.

Ubiquity, stability, and the largest plugin ecosystem of any multiplexer. If you need a standard tool on a standard Unix host, tmux is still the answer.

Quil · where it takes over

Reboot survival. AI continuity. Typed panes.

Zero persistence across host reboots. You can bolt on tmux-resurrect or tmux-continuum, but even those only restore layout and working directories — not AI session state, not running processes, not scrollback.

Where they fit

tmux is great for what it does — a stable, battle-tested server multiplexer built in 2007 — but it was never designed to survive a host reboot, understand AI coding sessions, or treat different panes as different types of work. Quil is for the problem tmux doesn't solve.

Capability matrix

Feature by feature

capabilityquiltmux
Session persistence while the multiplexer server is running yes yes
Survives a full host reboot yes no
└── Quil's defining capability. Zellij is the one honest partial: session serialization is on by default, so after a reboot it brings back the layout, the tabs and the working directories, and offers each pane's command behind a “Press ENTER to run” prompt. What it does not bring back is the work — no running processes, no scrollback unless you turned that on, and no idea an AI session ever existed. tmux, WezTerm and Screen lose the session outright; tmux-resurrect gets tmux to roughly where Zellij already is.
AI session auto-resume (Claude Code, OpenCode, Codex) yes no
Remote attach: local client, sessions on another host yes no
└── tmux, Zellij and Screen run their client ON the remote — you ssh in first, and a dropped link means re-attaching by hand. WezTerm's mux domains and Quil's `quil --remote <host>` both keep the client local and reconnect by themselves. Quil opens no port on the server (it is one `ssh -T` channel) and installs itself on a bare host.
Agent state per group, visible at a glance yes no
└── Not "does it have a sidebar" — the claim is that the multiplexer knows an agent is mid-turn, versus waiting on a permission prompt, versus finished. That needs a feed from the agent itself; Quil reads Claude Code and OpenCode hook events. Every project row carries a roll-up of its agents and keeps updating while you are looking at a different project, which is the point: the one that got stuck is the one you are not watching.
Several hosts' sessions side by side in one client yes no
└── WezTerm's mux domains genuinely do this — you can attach several and mix their tabs in one window. tmux, Zellij and Screen run the client on the remote, so a second host means a second terminal. Quil dials each host over its own `ssh -T` channel, gives each its own reconnect state, and groups their projects in the same sidebar; one daemon dying leaves the rest interactive.
Typed panes (Terminal / AI / SSH / Webhook) yes no
Plugin system yes partial
└── Quil uses declarative TOML. Zellij uses WASM. WezTerm uses Lua. tmux uses shell scripts.
Mouse support yes yes
Ghost buffers (last 500 lines instant on reconnect) yes no
Command palette (fuzzy action + pane launcher) yes partial
└── WezTerm's is built in (Ctrl+Shift+P, frecency-ranked). tmux has a command prompt but it is not fuzzy. Zellij's comes from community plugins (cmd-pal), not the core.
Search every pane's scrollback from one prompt yes no
└── Every other tool searches one pane at a time in copy mode — including WezTerm, whose palette is command-only. Across panes, tmux needs the third-party tmux-grep plugin. In Quil it is the same box as the command palette: type, and matching panes appear under `Found in panes` with a preview and a match count.
MCP server for AI agents yes no
Notification center + idle analysis yes no
Pane notes editor (Alt+E) yes no
Windows native (no WSL) yes no
Declarative keybindings (config file) yes yes
Migrating from tmux

Coming from tmux?

Coming from tmux? Put `preset = "tmux"` in ~/.quil/bindings.toml for a Ctrl+B prefix keymap (Ctrl+B c for a new tab, Ctrl+B % to split). Any action can be rebound there too, including the six tab layouts that ship unbound.

Questions

Can I run Quil and tmux side by side?

Yes. They don't share sockets or state, so you can experiment with Quil without touching your tmux setup. Some users run Quil for AI-heavy projects and tmux for traditional admin sessions.

Does Quil read my tmux sessions?

Not currently — Quil maintains its own workspace state under ~/.quil/. A tmux import helper is on the future roadmap.

Is Quil a tmux replacement?

It depends on what you use tmux for. If you need reboot persistence + AI session continuity, yes. If you need a headless multiplexer for classical server administration, tmux remains the right tool.

Is Quil a good tmux alternative for AI coding agents?

For AI-heavy work, yes. tmux keeps sessions alive while its server runs, but it loses everything on a host reboot and has no concept of an AI session. Quil survives a full reboot, auto-resumes Claude Code and OpenCode sessions with the current (post-rotation) session id, and exposes an MCP server so an AI assistant can read and drive the panes directly. For classic headless server administration, tmux is still the better fit.

What is the best tmux alternative that survives a reboot?

tmux, WezTerm and GNU Screen lose the session when the host reboots — their persistence only lasts while the server process is alive. Zellij is the exception, and a partial one: it serializes the session by default, so a reboot returns the layout, the tabs and the directories, with each command waiting behind a “Press ENTER to run” prompt. Nothing is still running, and an AI session comes back as a command line to re-type. Quil was built for that second half: its daemon snapshots the whole workspace to disk continuously, so after a reboot you type one command and the layout, working directories, scrollback, and AI sessions come back in under 30 seconds.