2.5k
GitHub Stars
2
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill openclaw/skills --skill zellij- _meta.json283 B
- SKILL.md5.3 KB
Overview
This skill lets you remote-control zellij terminal multiplexer sessions: send keystrokes, spawn processes, and scrape pane output for interactive CLIs. It manages a configurable zellij data directory, targets panes by id, and includes helpers to wait for prompts or capture full pane output. Use it when you need programmatic interaction with TTY-based tools and multi-agent workflows.
How this skill works
The skill starts and manages zellij sessions in a specified data directory (defaulting to a temp-based path or CLAWDBOT_ZELLIJ_DATA_DIR). It sends input using zellij action write-chars/write for control keys, captures output via zellij pipe, and discovers panes and sessions with list-sessions and helper scripts. Additional helpers poll panes for text or list panes to automate wait-and-collect patterns.
When to use it
- Drive interactive REPLs or CLIs that require a real TTY
- Run and monitor multiple coding agents in parallel (isolated sessions)
- Capture pane output for scraping logs, prompts, or command results
- Send complex keystroke sequences or control keys (Ctrl+C, Enter) to a specific pane
- Automate workflows that need session lifecycle control (create, attach, delete)
Best practices
- Set CLAWDBOT_ZELLIJ_DATA_DIR or pass an explicit data-dir to isolate state
- Keep session names short and avoid spaces to simplify discovery
- Target panes by numeric pane-id; find ids with list-sessions --long or helper scripts
- Prefer zellij exec/background for non-interactive long jobs; use zellij only for real TTYs
- Use wait-for-text.sh to detect prompts or completion instead of blind sleeps
- Kill sessions when done to avoid accumulating state in the data directory
Example use cases
- Start a python REPL in a detached zellij session and send test commands, then pipe output to capture results
- Run multiple agent sessions (agent-1..agent-N) each in its own worktree, send task commands, and poll panes for the shell prompt to mark completion
- Automate an interactive installer by sending keystrokes and waiting for specific prompts with wait-for-text.sh
- Capture full terminal output from a pane via zellij pipe for post-processing or archival
- Clean up stale sessions on a data directory with a cleanup script to reclaim resources
FAQ
This skill targets macOS and Linux; for Windows use WSL and install zellij inside WSL.
How do I send control keys like Ctrl+C?
Use zellij action write with the control key code (example: zellij action --session "$SESSION" write 2 for Ctrl+C) or write-chars for literal characters.