| name | tmux |
| description | Remote-control tmux sessions for interactive CLIs - OpenCode 多会话编排、长时任务监控、远程研发持久化 |
| tier | 第一梯队 |
| source | ClawHub + OpenCode 实践 |
tmux Skill - OpenCode 研发效率提升指南
编号: 04
梯队: 第一梯队
来源: ClawHub + OpenCode 实践总结
核心关联:为什么需要 tmux skill
OpenCode 本身是会话式 AI 编程助手,但有些场景下你需要 tmux 来扩展能力边界。
使用场景
🎯 场景 1:多会话并行研发
你作为主 orchestrator,需要同时管理多个并行的研发任务:
tmux 会话布局:
├── shared (主会话 - 你在这里与 OpenCode 交互)
├── worker-2 (并行任务:前端开发)
├── worker-3 (并行任务:后端 API)
├── worker-4 (并行任务:测试编写)
└── worker-5 (并行任务:文档更新)
tmux skill 的价值:
- 让 OpenCode 自动检查
worker-3 会话的后端任务进展
- 发现某个会话卡在"等待确认"时,自动发送确认
- 批量查询所有会话状态,而不需要你手动切换
🎯 场景 2:长时任务监控
tmux capture-pane -t worker-2 -p -S - | grep -E "PASS|FAIL|Error"
价值:
- 在主会话继续工作
- 定期自动抓取测试会话的输出
- 测试完成后自动通知你
🎯 场景 3:交互式 TUI 自动化
tmux capture-pane -t worker-3 -p | tail -10
tmux send-keys -t worker-3 'y' Enter
价值:
- 无需手动切换会话
- 可以编写脚本批量处理多个会话的确认请求
🎯 场景 4:跨会话任务分发
tmux send-keys -t worker-2 "Implement the login component" Enter
tmux send-keys -t worker-3 "Add auth middleware to Express" Enter
tmux send-keys -t worker-4 "Write tests for auth flow" Enter
价值:
- 一个会话作为指挥中心
- 同时驱动多个并行研发会话
- 每个会话可以是不同的 AI 实例或人类协作者
🎯 场景 5:SSH/远程研发场景
tmux capture-pane -t remote-dev:0 -p | tail -50
tmux send-keys -t remote-dev "npm run build" Enter
价值:
- 会话持久化(SSH 断开也不中断)
- 可以异步检查远程研发进展
- 无需保持终端连接
实际工作流示例
tmux capture-pane -t nightly-build -p -S - | grep -E "completed|failed"
tmux new-session -d -s frontend-dev
tmux new-session -d -s backend-dev
tmux send-keys -t frontend-dev "npm run dev" Enter
tmux send-keys -t backend-dev "cargo watch" Enter
for s in frontend-dev backend-dev; do
echo "=== $s ==="
tmux capture-pane -t $s -p | tail -3
done
tmux capture-pane -t frontend-dev -p | grep "proceed?" && \
tmux send-keys -t frontend-dev 'y' Enter
什么时候不需要 tmux skill
| 场景 | 应该用 |
|---|
| 运行一次性命令 | Bash 工具直接执行 |
| 后台进程 | Bash + & 或 task(run_in_background=true) |
| 非交互式脚本 | Bash 工具 |
| 没有 tmux 会话 | 直接用 Bash |
安装方法
brew install tmux
apt install tmux
npx skills add steipete/clawhub@tmux -g -y
常用命令速查
会话管理
tmux list-sessions
tmux new-session -d -s name
tmux kill-session -t name
tmux rename-session -t old new
捕获输出
tmux capture-pane -t shared -p | tail -20
tmux capture-pane -t shared -p -S -
tmux capture-pane -t shared:0.0 -p
发送按键
tmux send-keys -t shared "hello"
tmux send-keys -t shared "y" Enter
tmux send-keys -t shared C-c
tmux send-keys -t shared C-d
批量检查所有会话
for s in shared worker-2 worker-3 worker-4; do
echo "=== $s ==="
tmux capture-pane -t $s -p 2>/dev/null | tail -5
done
总结
tmux skill 的核心价值:
| 价值 | 说明 |
|---|
| 多会话编排 | 作为 orchestrator 管理多个并行研发流 |
| 异步监控 | 长时任务无需占用注意力 |
| 交互式自动化 | 自动处理 TUI 确认、选择等操作 |
| 远程持久化 | SSH 断开不影响研发会话 |
适用人群:
- ✅ 需要同时推进多个任务的开发者
- ✅ 需要运行长时构建/测试的开发者
- ✅ 远程研发场景
- ✅ 需要自动化会话管理的 orchestrator
可能不需要:
相关 Skill
参考 opencode-skill-list.md 获取完整清单和学习路径。