一键导入
tmux
Manage tmux sessions for background processes. Use to run long-running commands, manage multiple terminals, and capture output from background processes.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Manage tmux sessions for background processes. Use to run long-running commands, manage multiple terminals, and capture output from background processes.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Always search before starting any work across all coding agent session histories (Claude Code, Codex, Cursor, Gemini CLI, Aider, ChatGPT) to find whatever we've discussed before.
Spawn 5 Opus subagents with randomly-generated distinct personas to debate a problem from multiple angles. Use when exploring UX decisions, architecture choices, or any decision that benefits from diverse perspectives arguing creatively.
Configure Karabiner-Elements keyboard remapping using Goku EDN syntax. Use when creating keybindings, layers, simlayers, app-specific shortcuts, or modifying karabiner.edn.
Bundle code context for AI. ALWAYS use --limit 49k unless user explicitly requests otherwise. Use for creating shareable code bundles and preparing context for LLMs.
Build Raycast extensions with React and TypeScript. Use when the user asks to create a Raycast extension, command, or tool.
Create new Agent Skills for Claude Code. Use when user wants to create a skill, add a new capability, document a CLI workflow, or asks how skills work.
| name | tmux |
| description | Manage tmux sessions for background processes. Use to run long-running commands, manage multiple terminals, and capture output from background processes. |
Run and manage background processes using tmux.
Install tmux:
brew install tmux
# or
apt install tmux
# Basic session
tmux new-session -d -s mysession
# With window name
tmux new-session -d -s mysession -n mywindow
# With working directory
tmux new-session -d -s mysession -c /path/to/dir
# With initial command
tmux new-session -d -s mysession "npm run dev"
# Combined
tmux new-session -d -s dev -n server -c /project "npm run dev"
# List all sessions
tmux list-sessions
# Short format
tmux ls
# With format
tmux list-sessions -F "#{session_name}: #{session_windows} windows"
# Send command
tmux send-keys -t mysession "npm test" Enter
# Send to specific window
tmux send-keys -t mysession:mywindow "command" Enter
# Send without Enter
tmux send-keys -t mysession "partial command"
# Send special keys
tmux send-keys -t mysession C-c # Ctrl+C
tmux send-keys -t mysession C-d # Ctrl+D
tmux send-keys -t mysession Escape # Escape
tmux send-keys -t mysession Up # Arrow up
# Capture visible pane
tmux capture-pane -t mysession -p
# Capture with history (last N lines)
tmux capture-pane -t mysession -p -S -100
# Capture all history
tmux capture-pane -t mysession -p -S -
# Save to file
tmux capture-pane -t mysession -p > output.txt
# Kill specific session
tmux kill-session -t mysession
# Kill all sessions
tmux kill-server
# Attach
tmux attach -t mysession
# Attach or create
tmux new-session -A -s mysession
# New window
tmux new-window -t mysession -n windowname
# Select window
tmux select-window -t mysession:windowname
# Kill window
tmux kill-window -t mysession:windowname
# List windows
tmux list-windows -t mysession
# Split horizontally
tmux split-window -t mysession -h
# Split vertically
tmux split-window -t mysession -v
# Select pane
tmux select-pane -t mysession:0.1
# Kill pane
tmux kill-pane -t mysession:0.1
# Start server
tmux new-session -d -s devserver -c /project "npm run dev"
# Check output
tmux capture-pane -t devserver -p -S -50
# Stop server
tmux send-keys -t devserver C-c
tmux kill-session -t devserver
# Start tests
tmux new-session -d -s tests "npm test"
# Wait and capture output
sleep 30
tmux capture-pane -t tests -p -S - > test-output.txt
# Cleanup
tmux kill-session -t tests
# Create session with multiple windows
tmux new-session -d -s services -n frontend
tmux new-window -t services -n backend
tmux new-window -t services -n database
# Start each service
tmux send-keys -t services:frontend "npm run dev" Enter
tmux send-keys -t services:backend "go run main.go" Enter
tmux send-keys -t services:database "docker-compose up db" Enter
# Check all services
for win in frontend backend database; do
echo "=== $win ==="
tmux capture-pane -t services:$win -p -S -10
done
# Start process
tmux new-session -d -s build "npm run build:production"
# Monitor progress
watch -n 5 "tmux capture-pane -t build -p -S -20"
# Or periodic check
while tmux has-session -t build 2>/dev/null; do
sleep 10
echo "Still running..."
done
echo "Build complete"
When running in agent context, use a dedicated socket:
SOCKET_PATH="/tmp/agent-tmux-$$"
# Create session with socket
tmux -S $SOCKET_PATH new-session -d -s agent "command"
# Send keys via socket
tmux -S $SOCKET_PATH send-keys -t agent "input" Enter
# Capture via socket
tmux -S $SOCKET_PATH capture-pane -t agent -p
# Cleanup
tmux -S $SOCKET_PATH kill-server
rm -f $SOCKET_PATH
-d for detached - Don't block the terminal-c /path for context