最近顺手写了个小工具,叫 agent-tmux-hub。
场景很简单:tmux 里同时跑 Copilot、Claude Code、Codex 这类 Agent CLI 时,有的 pane 还在跑,有的已经停下来等确认。得一个个切过去看,才能知道哪里在等回车。
单个 Agent 还好。多个一起跑,来回切 pane 就开始烦了。
所以补了个很轻的小面板,把多个 tmux pane 的状态收进一个地方。哪些在 waiting,哪些在 running,哪些只是 idle,一眼能看出来。

它现在主要做几件事:
- 扫描 tmux 里正在跑的 Agent pane
- 识别哪些 pane 在等待确认
- 抓最近一段输出
- 给一个很粗的风险分类
- 支持跳回原 pane,或者直接发
Enter、y + Enter
现在先认三种 CLI:
- Copilot CLI
- Claude Code
- Codex
waiting 的判断也很直接,就是扫最近输出,匹配几种常见提示:
y/NPress EnterAllow ...Continue?1. Yes / 2. No这类菜单确认
命中这些模式,就标成 waiting。输出还在变化,就标成 running。没变化,就当 idle。
另外顺手加了个很粗的风险提示。比如 allow tool 算低风险,allow directory access 算中风险,git push、rm -rf、terraform destroy 这类命令确认会提到高风险。
面板里会展示:
- status
- provider
- pane 位置
- 当前路径
- 建议动作
- 最近一段输出
也留了几个最常用的操作:
a:批准当前项A:批准全部 waitingl:只批准 low-risk waitingo:跳回原 panee / y / d:手动发 Enter / y / n
如果有 waiting 项,tmux window 名字会变成 agent-tmux-hub[2],远远看一眼就知道有没有东西堵在那里。
现在这东西还很玩具:provider 识别是猜的,waiting 检测靠正则,风险分类也很粗。
项目地址:
如果你也在 tmux 里同时跑多个 Agent CLI,也许能用上,或者拿去改改。