A zellij port of tmux-workbench by Leon (LeON-Nie-code)
Zellij Workbench indexes your zellij sessions across your machine and SSH servers, remembers the project context around them, and gives you one fast CLI/TUI entry point to get back to work.
It does not replace zellij. It makes zellij workspaces easier to find, inspect, and resume — locally and over SSH.
Scans zellij sessions on your machine and any number of SSH servers, batched into one round trip per host — not one per session.
Every workspace gets a <server>/<session> ID. Attach back to it, or recreate it if it's gone, from any machine.
Filter with server: status: tag: git: prefixes alongside plain text, live as you type.
Branch, commit, dirty state, ahead/behind counts, and remote URL captured for every workspace on scan.
Annotate workspaces and keep that metadata across rescans, even after the underlying session disappears.
Tracks zellij's own exited-but-resurrectable sessions as a first-class presence state, shown as active* in the TUI.
Requires zellij, git, and ssh for remote servers.
Install and initialize a config.
curl -fsSL https://raw.githubusercontent.com/ileadall42/zellij-workbench/main/install.sh | bash
zw init
Add a remote server (reuses your existing ~/.ssh/config).
zw add-server prod --ssh "ssh prod"
Scan, then browse in the TUI.
zw scan
zw
Or attach directly by ID from the CLI.
zw attach prod/api
Shown live in the status bar of the TUI itself, so this is a reference, not something you need to memorize.
| Enter | attach to the selected workspace |
| / | search — supports server: status: tag: git: |
| n | edit note in $EDITOR |
| a | archive / unarchive |
| v | cycle all / active / archived views |
| s | cycle server filter |
| r | rescan (also auto-refreshes every 30s) |
| j / k | move |
| q | quit |