A Zellij plugin for quickly searching and switching between tabs.
Tabto cycle through tab listUpandDownto cycle through tab listEnterto switch to the selected tab- Start typing to filter the tab list
EscorCtrl + cto exit- Quick jump to a tab by pressing it's displayed number
To enable quick jumps, you need to set the config option for it to
quick_jump true. The downside is that you won't be able to properly filter down tabs that have a number in their name.
I rename my tabs so once I have a lot of them I have to start
counting and then press Ctrl + t then <tab num>. So I wanted something
that let’s me type to filter the tab list and then press enter to jump to the selected tab.
Download room.wasm from the latest release
mkdir -p ~/.config/zellij/plugins/mv room.wasm ~/.config/zellij/plugins/
You don't need to keep
room.wasmat this specified location. It's just where I like to keep my zellij plugins.
mkdir -p ~/.config/zellij/plugins && \
curl -L "https://github.com/rvcas/room/releases/latest/download/room.wasm" -o ~/.config/zellij/plugins/room.wasm
Add the following to your zellij config somewhere inside the keybinds section:
shared_except "locked" {
bind "Ctrl y" {
LaunchOrFocusPlugin "file:~/.config/zellij/plugins/room.wasm" {
floating true
ignore_case true
quick_jump true
}
}
}You likely already have a
shared_except "locked"section in your configs. Feel free to addbindthere.
The ignore_case defaults to false if absent. If set to true, filtering the tab names ignores
the case of the filter string and the tab name.
This plugin supports pipe commands for programmatic pane focusing via Zellij's plugin pipe system.
Focus a specific terminal pane by ID:
zellij pipe --plugin file:~/.config/zellij/plugins/room.wasm --name focus-pane -- <pane_id>Claude Code supports terminal notifications to alert you when it needs input or permission. When running Claude Code inside Zellij, even if terminal notification passthrough worked, clicking a notification wouldn't navigate you to the correct Zellij tab and pane.
claude-zellij-whip solves this by sending native macOS notifications that, when clicked:
- Focus your terminal window
- Switch to the correct Zellij tab
- Focus the exact pane where Claude Code is running
Zellij's CLI supports switching tabs but doesn't have a command to focus a specific pane by ID. The plugin API does support this via focus_terminal_pane, so this pipe command bridges that gap.
If you find any issues or want to suggest ideas please open an issue.
Make sure you have rust installed then run:
zellij action new-tab --layout ./dev.kdl