zellij_skill

This skill enables remote control of zellij interactive sessions by sending keystrokes and scraping pane output to automate CLIs.
  • Python

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.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational