website/public/skills/clrun/SKILL.md
Run and control interactive CLI sessions for AI agents. Handles TUI prompts (select lists, checkboxes, confirms), persistent shell state, and long-running processes. Use when you need to execute terminal commands, respond to interactive prompts, navigate scaffolding wizards like create-vue or create-vite, or manage dev servers.
npx skillsauth add tablesearch/clrun clrunInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
No more --yes flags or command retries. clrun gives you full control over interactive terminal sessions with structured YAML responses.
Node.js:
npm install -g clrun
Python (uv):
uv tool install clrun-cli
(pip: pip install clrun-cli)
| Action | Command |
|--------|---------|
| Run a command | clrun <command> |
| Send text + Enter | clrun <id> "text" |
| Send keystrokes | clrun key <id> down enter |
| Toggle checkbox | clrun key <id> space |
| Accept default | clrun key <id> enter |
| View output | clrun tail <id> |
| Check sessions | clrun status |
| Kill session | clrun kill <id> |
| Interrupt | clrun key <id> ctrl-c |
Text input — sends text followed by Enter:
clrun <id> "my-project-name" # Type and press Enter
clrun <id> "" # Just press Enter
Keystroke input — sends raw keys for TUI navigation:
clrun key <id> down down enter # Select 3rd item in list
clrun key <id> space down space enter # Toggle checkboxes 1 and 2
clrun key <id> enter # Accept default
Available keys: up, down, left, right, enter, tab, escape, space, backspace, delete, home, end, pageup, pagedown, ctrl-c, ctrl-d, ctrl-z, ctrl-l, ctrl-a, ctrl-e, y, n
When you tail a session, identify the prompt type to choose the right input:
| You see | Type | Action |
|---------|------|--------|
| ◆ Name: │ default | Text input | clrun <id> "value" or clrun key <id> enter |
| ● Opt1 ○ Opt2 ○ Opt3 | Single-select | clrun key <id> down... enter |
| ◻ Opt1 ◻ Opt2 ◻ Opt3 | Multi-select | clrun key <id> space down... enter |
| ● Yes / ○ No | Confirm | clrun key <id> enter or right enter |
| (y/n) | Simple confirm | clrun <id> "y" or clrun <id> "n" |
| name: (default) | Readline | clrun <id> "value" or clrun <id> "" |
Count items from the top. First item is highlighted by default. To select item N, send N-1 down presses then enter.
◆ Select a framework:
│ ● Vanilla ← 0 downs
│ ○ Vue ← 1 down
│ ○ React ← 2 downs
│ ○ Svelte ← 3 downs
clrun key <id> down down enter # Selects React
Plan a sequence of space (toggle) and down (skip) from top to bottom, ending with enter:
# Select items 1, 3, and 4 from a list of 5:
clrun key <id> space down down space down space enter
# item1 skip skip item3 item4 confirm
All responses are structured YAML. Key fields:
terminal_id — store this for all subsequent callsoutput — cleaned terminal output (ANSI stripped)status — running, suspended, exited, killed, detachedhints — exact commands you can run next (copy-pasteable)warnings — detected issues with input or output1. START → clrun <command> → get terminal_id
2. OBSERVE → clrun tail <id> → read output, identify prompt
3. INTERACT → clrun <id> "text" / clrun key → respond to prompt
4. REPEAT → steps 2-3 until done
5. CLEANUP → clrun kill <id> → if needed
Use single quotes to prevent your shell from expanding $ variables:
clrun <id> 'echo $MY_VAR' # Correct
clrun <id> "echo $MY_VAR" # Wrong — expanded before clrun sees it
See references/tui-patterns.md for complete real-world examples.
tools
Run and control interactive CLI sessions for AI agents. Handles TUI prompts (select lists, checkboxes, confirms), persistent shell state, and long-running processes. Use when you need to execute terminal commands, respond to interactive prompts, navigate scaffolding wizards like create-vue or create-vite, or manage dev servers.
tools
Run and control interactive CLI sessions. Handles TUI prompts (select lists, checkboxes, confirms), persistent shell state, and long-running processes. Use when you need to execute terminal commands, respond to interactive prompts, navigate scaffolding wizards like create-vue or create-vite, or manage dev servers.
tools
Run and control interactive CLI sessions for AI agents. Handles TUI prompts (select lists, checkboxes, confirms), persistent shell state, and long-running processes. Use when you need to execute terminal commands, respond to interactive prompts, navigate scaffolding wizards like create-vue or create-vite, or manage dev servers.
tools
Use when work should span one or more detached tasks but still behave like one job with a single owner context. TaskFlow is the durable flow substrate under authoring layers like Lobster, ACPX, plugins, or plain code. Keep conditional logic in the caller; use TaskFlow for flow identity, child-task linkage, waiting state, revision-checked mutations, and user-facing emergence.