원클릭으로
tmux
Remote-control tmux sessions for interactive CLIs by sending keystrokes and capturing pane output.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Remote-control tmux sessions for interactive CLIs by sending keystrokes and capturing pane output.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Create or update SKILL.md packages with deterministic frontmatter, clear trigger descriptions, and valid command/script execution mappings.
Narrative summarization, storytelling, and long-form synthesis in Sigrid's voice — named after the Viking court poets who kept memory alive through story.
Maintain stable user and project facts across sessions using workspace memory files and runtime memory state.
Schedule reminders and recurring tasks with the `cron` tool (add/list/remove/enable/disable/run).
Read, write, and search local Obsidian vault markdown files via the filesystem.
Create, read, and search Apple Notes on macOS using osascript AppleScript.
| name | tmux |
| description | Remote-control tmux sessions for interactive CLIs by sending keystrokes and capturing pane output. |
| always | false |
| metadata | {"clawlite":{"emoji":"🧵","requires":{"bins":["tmux"]},"os":["linux","darwin"]}} |
| script | tmux |
Use tmux only when an interactive TTY is required. Prefer exec background mode for non-interactive long jobs.
SOCKET_DIR="${CLAWLITE_TMUX_SOCKET_DIR:-${TMPDIR:-/tmp}/clawlite-tmux-sockets}"
mkdir -p "$SOCKET_DIR"
SOCKET="$SOCKET_DIR/clawlite.sock"
SESSION=clawlite-shell
tmux -S "$SOCKET" new -d -s "$SESSION" -n shell
tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -- 'PYTHON_BASIC_REPL=1 python3 -q' Enter
tmux -S "$SOCKET" capture-pane -p -J -t "$SESSION":0.0 -S -200
Keep one socket per workflow or agent. That makes discovery, retries, and cleanup deterministic.
Inspect one socket directly:
bash clawlite/skills/tmux/scripts/find-sessions.sh -S "$SOCKET"
Scan every socket under CLAWLITE_TMUX_SOCKET_DIR:
bash clawlite/skills/tmux/scripts/find-sessions.sh --all
The output is always socket:session, one row per line.
Wait for a prompt or completion marker:
bash clawlite/skills/tmux/scripts/wait-for-text.sh -S "$SOCKET" -t "$SESSION":0.0 -p '\$' -T 5
Use fixed-string mode when the marker should not be treated as regex:
bash clawlite/skills/tmux/scripts/wait-for-text.sh -S "$SOCKET" -t "$SESSION":0.0 -F 'BUILD SUCCESS' -T 30 -i 1 -l 400
Create a dedicated socket and session per agent:
SOCKET="$SOCKET_DIR/agent-1.sock"
SESSION=agent-1
tmux -S "$SOCKET" new -d -s "$SESSION" -n shell
tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 -l -- "pytest -q"
tmux -S "$SOCKET" send-keys -t "$SESSION":0.0 Enter
bash clawlite/skills/tmux/scripts/wait-for-text.sh -S "$SOCKET" -t "$SESSION":0.0 -p 'passed|failed' -T 120 -l 500
Prefer send-keys -l for literal commands, then send Enter separately. Capture pane history before reusing or tearing down a session.
Stop a single session:
tmux -S "$SOCKET" kill-session -t "$SESSION"
Stop the whole socket server when nothing else should remain:
tmux -S "$SOCKET" kill-server
Remove stale socket files only after tmux -S "$SOCKET" list-sessions or has-session confirms that no server is alive on that socket.