使用说明
tmux mcp
一 主控程序 用于控制tmux会话的服务器。允许AI助手以编程方式创建、管理tmux会话、窗口和窗格,并与之交互。
先决条件
- Python 3.10+
- 终端复用器 已安装并可用于
PATH
安装
克劳德代码(stdio)
claude mcp add tmux-mcp -- uvx tmux-mcp
克劳德代码(HTTP)
# Start the server
tmux-mcp --transport streamable-http --port 8888
# Add to Claude Code
claude mcp add --transport http tmux-mcp http://localhost:8888/mcp
Claude Code(来自GitHub)
claude mcp add tmux-mcp -- uvx --from git+https://github.com/WENLIXIAO-CS/tmux-mcp tmux-mcp
点
pip install tmux-mcp
可用工具
会话
| 工具 | 说明 |
|---|---|
tmux_list_sessions |
列出所有tmux会话,包括名称、ID、窗口数和连接状态 |
tmux_create_session |
创建新的分离会话(返回会话/窗口/窗格ID) |
tmux_rename_session |
重命名现有会话 |
视窗
| 工具 | 说明 |
|---|---|
tmux_list_windows |
列出窗口,可选择按会话筛选(包括窗格计数) |
tmux_create_window |
在会话中创建新窗口(返回窗口/窗格ID) |
tmux_select_window |
切换到特定窗口 |
tmux_rename_window |
重命名窗口 |
窗格
| 工具 | 说明 |
|---|---|
tmux_list_panes |
列出带有ID、尺寸、活动状态和运行命令的窗格 |
tmux_split_window |
水平或垂直拆分窗口/窗格(返回新窗格ID) |
tmux_select_pane |
聚焦特定窗格 |
tmux_resize_pane |
按方向+数量或绝对宽度/高度调整窗格大小 |
输入/输出
| 工具 | 说明 |
|---|---|
tmux_send_keys |
将按键或命令发送到窗格(支持Enter、C-C、Tab等特殊按键) |
tmux_read_pane |
从窗格中捕获可见内容(支持回滚历史记录) |
tmux_read_cc_pane |
监控克劳德代码窗格——在处理过程中自动等待,自动批准权限,空闲时返回输出 |
生命周期
| 工具 | 说明 |
|---|---|
tmux_kill |
按目标终止会话、窗口或窗格 |
使用示例
创建会话并运行命令:
> Create a tmux session called "dev" and run "python server.py" in it
Tool call: tmux_create_session(name="dev")
-> Session 'dev' created. session_id=$1 window_id=@1 pane_id=%1
Tool call: tmux_send_keys(target="dev", keys="python server.py Enter")
-> Keys sent.
从窗格读取输出:
> What's the output in the dev session?
Tool call: tmux_read_pane(target="dev")
-> $ python server.py
Server running on port 8080
拆分一个窗口并运行第二个进程:
> Split the dev window and start a log tail
Tool call: tmux_split_window(target="dev:0")
-> Pane created. pane_id=%2
Tool call: tmux_send_keys(target="%2", keys="tail -f app.log Enter")
-> Keys sent.
监控Claude Code会话(自动等待+自动批准):
> Run a task in the "cc" tmux session and wait for it to finish
Tool call: tmux_read_cc_pane(target="cc")
[ 0.0s] Monitoring Claude Code pane 'cc'
[ 0.0s] Permission requested: Do you want to → sending '1'
[ 1.0s] Processing: Shimmying…
[ 8.1s] Processing: · ↓ 345 tokens
[ 16.2s] Permission requested: 2. Yes, allow all edits → sending '1'
[ 32.4s] Processing: · ↓ 1.6k tokens
[115.3s] Idle: no activity indicators
-> (captured pane content with scrollback)
发展
git clone https://github.com/WENLIXIAO-CS/tmux-mcp.git
cd tmux-mcp
uv sync
uv run tmux-mcp
许可证
麻省理工学院
