SuperAPI AI 工具集

tmux

智能体与模型

查看项目

更新于 10-16 01:38

技能介绍

用途:当 Claude 运行在 tmux 内时,该技能使其能读取并驱动用户正在查看的窗格(开发服务器、测试监听、REPL、日志),也可在私有 socket 上开隔离会话跑一次性进程。支持 Linux 与 macOS 的原生 tmux。

模式 A—观察与控制用户的 tmux。先确认身处其 tmux 并定位 server:[ -n "$TMUX" ] && echo "in tmux — socket=${TMUX%%,} pane=$TMUX_PANE"。普通 tmux 命令已指向该 server,显式形式为 tmux -S "${TMUX%%,}"。常用脚本:./scripts/find-panes.sh -p 列出当前窗口窗格及监听端口,加 --session 扩至整个会话。不要假设 :0.0,target 须用 find-panes.sh 报告的精确 session:win.pane。读取窗格输出安全:tmux capture-pane -p -J -t projects:1.2 -S -200。在 shell 窗格跑一次性命令:./scripts/run-in-pane.sh -t projects:1.3 -- pnpm vitest run src/auth。受保护的发送:./scripts/safe-send.sh -t projects:1.2 --enter -- 'rs'。向用户窗格写按键前须检查正在运行的程序,勿向编辑器或分页器发送;优先新开窗口 tmux new-window -n claude-task;使用 -l 发字面文本,控制键单独发送,并事后 capture-pane 确认。

模式 B—隔离 socket 快速开始:SOCKET_DIR=${TMPDIR:-/tmp}/claude-tmux-sockets; mkdir -p "$SOCKET_DIR"; SOCKET="$SOCKET_DIR/claude.sock"; SESSION=claude-node; tmux -S "$SOCKET" -f /dev/null new -d -s "$SESSION" -n shell,随后 send-keys 与 capture-pane 观察,结束用 kill-session。会话启动后须告诉用户监控方式:tmux -S "$SOCKET" attach -t claude-node。socket 应放在 CLAUDE_TMUX_SOCKET_DIR 下。

能力与限制:附带脚本 find-panes.sh、run-in-pane.sh、wait-for-text.sh、safe-send.sh、find-sessions.sh。屏幕重绘类工具(vite、next dev、vitest)会污染输出,建议 export CI=1、NO_COLOR=1,并优先使用一次性模式。等待提示可用 wait-for-text.sh 轮询,避免 sleep 猜测。收费、价格与其他平台信息暂未提供。