Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
직접 명령은 검토 Prompt를 거치지 않습니다. 실행하기 전에 소스를 확인하세요.
npx skills add https://github.com/lza6/Claude-code-cli-config --skill tmux명령은 한 줄로 유지됩니다. 복사하기 전에 가로로 스크롤해 전체 내용을 확인하세요.
로컬 사본을 원하시나요? SkillsMP에서 현재 제공할 수 있는 파일을 다운로드하세요.
SOC 직업 분류 기준
SKILL.md 표시 중
| name | tmux |
| description | 通过发送击键和抓取窗格输出来远程控制交互式 CLI 的 tmux 会话。 |
| metadata | {"clawdbot":{"emoji":"🧵","os":["darwin","linux"],"requires":{"bins":"[Truncated]"}}} |
仅当您需要交互式 TTY 时才使用 tmux。对于长时间运行的非交互式任务,首选 bash 后台模式。
SOCKET_DIR="${CLAWDBOT_TMUX_SOCKET_DIR:-${TMPDIR:-/tmp}/clawdbot-tmux-sockets}"
mkdir -p "$SOCKET_DIR"
SOCKET="$SOCKET_DIR/clawdbot.sock"
SESSION=clawdbot-python
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
启动会话后,始终打印监视器命令:
监控命令:
tmux -S "$SOCKET" attach -t "$SESSION"
tmux -S "$SOCKET" capture-pane -p -J -t "$SESSION":0.0 -S -200
CLAWDBOT_TMUX_SOCKET_DIR(默认 ${TMPDIR:-/tmp}/clawdbot-tmux-sockets)。"$CLAWDBOT_TMUX_SOCKET_DIR/clawdbot.sock"。session:window.pane(默认为 :0.0)。tmux -S "$SOCKET" list-sessions、tmux -S "$SOCKET" list-panes -a。{baseDir}/scripts/find-sessions.sh -S "$SOCKET"。{baseDir}/scripts/find-sessions.sh --all(使用 CLAWDBOT_TMUX_SOCKET_DIR)。tmux -S "$SOCKET" send-keys -t target -l -- "$cmd"。tmux -S "$SOCKET" send-keys -t target C-c。tmux -S "$SOCKET" capture-pane -p -J -t target -S -200。{baseDir}/scripts/wait-for-text.sh -t session:0.0 -p 'pattern'。Ctrl+b d 分离。PYTHON_BASIC_REPL=1(非基本 REPL 会中断发送密钥流)。darwin/linux 相关,并且需要在 PATH 上添加 tmux。tmux 擅长并行运行多个编码代理:
SOCKET="${TMPDIR:-/tmp}/codex-army.sock"
# 创建多个会话
for i in 1 2 3 4 5; do
tmux -S "$SOCKET" new-session -d -s "agent-$i"
done
# 在不同的工作目录中启动代理
tmux -S "$SOCKET" send-keys -t agent-1 "cd /tmp/project1 && codex --yolo 'Fix bug X'" Enter
tmux -S "$SOCKET" send-keys -t agent-2 "cd /tmp/project2 && codex --yolo 'Fix bug Y'" Enter
# 轮询完成状态(检查是否返回提示符)
for sess in agent-1 agent-2; do
if tmux -S "$SOCKET" capture-pane -p -t "$sess" -S -3 | grep -q "❯"; then
echo "$sess: 完成"
else
echo "$sess: 运行中..."
fi
done
# 从已完成的会话获取完整输出
tmux -S "$SOCKET" capture-pane -p -t agent-1 -S -500
提示:
pnpm install❯ 或 $)以检测完成情况--yolo 或 --full-auto 来进行非交互式修复tmux -S "$SOCKET" kill-session -t "$SESSION"。tmux -S "$SOCKET" list-sessions -F '#{session_name}' | xargs -r -n1 tmux -S "$SOCKET" kill-session -t。tmux -S "$SOCKET" kill-server。{baseDir}/scripts/wait-for-text.sh 轮询窗格中是否有超时的正则表达式(或固定字符串)。
{baseDir}/scripts/wait-for-text.sh -t session:0.0 -p 'pattern' [-F] [-T 20] [-i 0.5] [-l 2000]
-t/--target 窗格目标(必需)-p/--pattern 要匹配的正则表达式(必需);添加 -F 用于固定字符串-T 超时秒数(整数,默认 15)-i 轮询间隔秒(默认 0.5)-l 要搜索的历史行(整数,默认 1000)