tmux-pilot MCP 服务器
- 使用说明
- 项目简介
- tmux-pilot 的 MCP 服务器是一套完全实现 MCP 协议核心能力的后端服务,暴露多种工具函数,供 MCP 客户端通过 JSON-RPC 调用来远程管理和监控 tmux 中的 AI 代理(agent)。核心功能包括创建和管理代理会话、查询代理状态与元数据、对代理执行控制指令、捕获和发送 pane 文本、监控代理输出以检测提示、事件与状态,以及进行会话拥有者的迁移等。
- 主要功能点
- spawn_agent: 在 tmux 中为新的代理创建会话,支持传入代理类型、提示、工作目录、会话名、所有者等参数。
- list_agents: 列出所有正在运行的代理会话及其元数据(目标、代理、描述、工作目录、年龄、CPU、内存等)。
- pause_agent / resume_agent: 对代理进行暂停与恢复操作,保证在暂停后仍可恢复运行。
- kill_agent: 终止代理会话并清理工作树。
- capture_pane: 捕获指定 tmux 窗格的输出文本。
- send_keys: 向指定窗格发送文本或按键序列,支持直接按键与文本加载粘贴两种模式。
- monitor_agents: 启动对所有代理窗格的监控,检测权限提示、生命周期事件并生成可读的报告。
- transfer_ownership: 将旧拥有者的窗格迁移到新拥有者,支持在 orchestrator 切换时重定向。
- run_command_silent: 静默执行命令,返回退出码和最近输出,完整日志写入文件。
- 安装步骤
- 确认运行环境:Python 3.10 及以上,tmux 已安装。
- 安装 Python 依赖:通过 pip 安装 fastmcp(推荐使用 pipx 以避免污染系统环境)。
- 获取源码:将 tmux-pilot 克隆至本地。
- 安装并配置 MCP 运行时:确保 fastmcp 已安装并可在运行环境中被 Python 导入。
- 启动 MCP 服务器:直接运行 mcp/server.py,即可启动并注册 MCP 服务。
- 服务器配置(MCP 客户端需要的配置信息)
- 说明:MCP 客户端需要配置一个服务器条目以便建立连接。配置信息包含服务器名称、启动命令及参数等,用于客户端在对等通信时定位和启动服务器。
- 示例(文字描述,非代码块,便于理解):
- 服务器名称:tmux-pilot
- 启动命令(command):python3
- 参数(args):~/.tmux/plugins/tmux-pilot/mcp/server.py
- 备注:这是在客户端需要时配置的连接信息,客户端会基于此信息启动 MCP 服务器并建立 JSON-RPC 通道;客户端本身不需要包含任何 tmux-pilot 的实现代码,仅通过 MCP 服务端的工具进行远程调用。
- 基本使用方法
- 启动后,MCP 客户端可以通过以下常见调用来管理和查询代理:
- spawn_agent(...) 创建新代理会话
- list_agents() 列出当前代理及其状态
- pause_agent(target) 暂停指定代理
- resume_agent(target) 恢复指定代理
- kill_agent(target) 终止指定代理并清理工作区
- monitor_agents() 获取带有提示、事件和状态的监控报告
- transfer_ownership(old_owner, new_owner) 进行拥有者迁移
- capture_pane(target, lines) 捕获窗格文本
- send_keys(target, keys) 向窗格发送文本或按键
- run_command_silent(command, directory, timeout_minutes) 静默执行命令并获取返回信息
- 实操要点
- MCP 客户端通过 JSON-RPC 调用上述工具接口,服务器处理并返回结构化结果或错误信息。
- 由于服务器直接调用 tmux 和主机脚本,运行时需要在具备 tmux 环境的机器上执行。
- 启动后,MCP 客户端可以通过以下常见调用来管理和查询代理:
- 项目简介