Skip to main content

tmux

Remote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.

소스 정보

저장소
linuxhsj/openclaw-zero-token
최근 소스 활동
2026년 2월 18일 00:28
감지된 SKILL.md 언어
영어
스타
5,214
포크
1,224

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
3 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
tmux
description
Remote-control tmux sessions for interactive CLIs by sending keystrokes and scraping pane output.
metadata
{"openclaw":{"emoji":"🧵","os":["darwin","linux"],"requires":{"bins":"[Truncated]"}}}
# tmux Session Control Control tmux sessions by sending keystrokes and reading output. Essential for managing Claude Code sessions. ## When to Use ✅ **USE this skill when:** - Monitoring Claude/Codex sessions in tmux - Sending input to interactive terminal applications - Scraping output from long-running processes in tmux - Navigating tmux panes/windows programmatically - Checking on background work in existing sessions ## When NOT to Use ❌ **DON'T use this skill when:** - Running one-off shell commands → use `exec` tool directly - Starting new background processes → use `exec` with `background:true` - Non-interactive scripts → use `exec` tool - The process isn't in tmux - You need to create a new tmux session → use `exec` with `tmux new-session` ## Example Sessions | Session | Purpose | | ----------------------- | --------------------------- | | `shared` | Primary interactive session | | `worker-2` - `worker-8` | Parallel worker sessions | ## Common Commands ### List Sessions ```bash tmux list-sessions tmux ls ``` ### Capture Output ```bash # Last 20 lines of pane tmux capture-pane -t shared -p | tail -20 # Entire scrollback tmux capture-pane -t shared -p -S - # Specific pane in window tmux capture-pane -t shared:0.0 -p ``` ### Send Keys ```bash # Send text (doesn't press Enter) tmux send-keys -t shared "hello" # Send text + Enter tmux send-keys -t shared "y" Enter # Send special keys tmux send-keys -t shared Enter tmux send-keys -t shared Escape tmux send-keys -t shared C-c # Ctrl+C tmux send-keys -t shared C-d # Ctrl+D (EOF) tmux send-keys -t shared C-z # Ctrl+Z (suspend) ``` ### Window/Pane Navigation ```bash # Select window tmux select-window -t shared:0 # Select pane tmux select-pane -t shared:0.1 # List windows tmux list-windows -t shared ``` ### Session Management ```bash # Create new session tmux new-session -d -s newsession # Kill session tmux kill-session -t sessionname # Rename session tmux rename-session -t old new ``` ## Sending Input Safely For interactive TUIs (Claude Code, Codex, etc.), split text and Enter into separate sends to avoid paste/multiline edge cases: ```bash tmux send-keys -t shared -l -- "Please apply the patch in src/foo.ts" sleep 0.1 tmux send-keys -t shared Enter ``` ## Claude Code Session Patterns ### Check if Session Needs Input ```bash # Look for prompts tmux capture-pane -t worker-3 -p | tail -10 | grep -E "❯|Yes.*No|proceed|permission" ``` ### Approve Claude Code Prompt ```bash # Send 'y' and Enter tmux send-keys -t worker-3 'y' Enter # Or select numbered option tmux send-keys -t worker-3 '2' Enter ``` ### Check All Sessions Status ```bash for s in shared worker-2 worker-3 worker-4 worker-5 worker-6 worker-7 worker-8; do echo "=== $s ===" tmux capture-pane -t $s -p 2>/dev/null | tail -5 done ``` ### Send Task to Session ```bash tmux send-keys -t worker-4 "Fix the bug in auth.js" Enter ``` ## Notes - Use `capture-pane -p` to print to stdout (essential for scripting) - `-S -` captures entire scrollback history - Target format: `session:window.pane` (e.g., `shared:0.0`) - Sessions persist across SSH disconnects
GitHub에서 보기