libtmux-mcp server

官方

由 libtmux 驱动的 tmux MCP 服务器

你可以用 Libtmux MCP 做什么?

  • 检查 tmux 状态 — 通过 list_sessionscapture_paneget_pane_info 获取会话、窗口或窗格的只读快照。
  • 在窗格中运行命令 — 让助手使用 run_commandsend_keys 执行 shell 命令或发送按键,包括批量操作。
  • 管理 tmux 对象 — 使用 create_windowsplit_windowselect_pane 等工具创建、拆分、调整大小或选择窗口和窗格。
  • 销毁 tmux 资源 — 使用 kill_sessionkill_server 等破坏性工具拆除会话、窗口、窗格或整个服务器。
  • 抑制 shell 历史记录 — 使用 suppress_persistent_history=true 启动会话或窗口,使测试运行不进入持久化 shell 历史记录。

文档

libtmux-mcp¶

为 AI 代理提供终端控制,基于 libtmux 和 FastMCP 构建。

该服务器将 tmux 的对象层级——会话、窗口、窗格——映射为 MCP 工具。部分工具读取状态,部分工具修改状态,部分工具销毁状态。这种区分是明确且强制执行的。

Warning

预发布阶段。 API 可能变更。欢迎反馈。

Claude Code Claude Desktop Codex CLI Gemini CLI Cursor Grok CLI Antigravity opencode

uvx pipx pip install

配置冷却期?

本地 用户 项目

用户 项目

用户 项目

项目 全局

用户 项目

安装 uvx 后:

$ claude mcp add tmux -- uvx libtmux-mcp

返回

依赖冷却期

使用上方的 配置冷却期 复选框来启用或禁用。这些设置决定冷却期启用后的行为方式。

什么是冷却期?

冷却期会延迟获取新上传的包,以便社区在您安装之前有时间发现供应链攻击。大多数包管理器默认不启用冷却期——您需要通过工具配置中的全局设置来选择启用。

了解更多请访问 cooldowns.dev · Datadog 安全实验室文章。


快速入门

安装、连接、获得第一个结果。不到 2 分钟。

快速入门

工具

每个工具,按用途和安全级别分组。

工具

提示词

客户端为模型渲染的四种工作流配方。

提示词

资源

通过 tmux:// URI 查看 tmux 层级的快照视图。

资源

安全级别

只读、修改、销毁。了解哪些操作会改变状态。

安全级别

客户端设置

适用于 Claude Desktop、Claude Code、Cursor 及其他客户端的配置块。

MCP 客户端


您可以做什么¶

只读检查¶

读取 tmux 状态而不做任何更改。

list_sessions · capture_pane · capture_since · snapshot_pane · get_pane_info · find_pane_by_position · search_panes · wait_for_text · display_message · call_readonly_tools_batch

修改操作¶

创建或修改 tmux 对象。

create_session · send_keys · send_keys_batch · run_command · paste_text · create_window · split_window · select_pane · select_window · move_window · resize_pane · pipe_pane · set_option · call_mutating_tools_batch

销毁操作¶

拆除 tmux 对象。不可逆。

kill_session · kill_window · kill_pane · kill_server · call_destructive_tools_batch

示例:让测试运行不进入持久历史¶

libtmux-mcp 为 Bash、Zsh 和 Fish 提供尽力而为的历史抑制。对 run_command 的 MCP 调用默认使用轻量级命令抑制。当您创建新 shell 时,可通过 suppress_persistent_history=true 选择更强的无磁盘控制。

提示词

创建一个名为 "checks" 的 tmux 会话,启用尽力而为的无磁盘 shell 历史控制,在其初始窗格中运行 pytest -q,并向我显示结果。

代理使用 suppress_persistent_history=true 调用 create_session,复用返回的 SessionInfo 中的 active_pane_id,并在不覆盖的情况下调用 run_commandcreate_windowsplit_windowrespawn_pane 上的相同生成选项仅适用于该调用启动的进程。

这些控制措施可减少历史记录噪音,但不会让命令保密。有关 shell 特定行为,请参阅历史抑制;有关服务器默认值,请参阅配置;有关其他观察面,请参阅安全级别。

浏览所有工具 →


心智模型¶

  • 对象层级 — 会话包含窗口,窗口包含窗格(概念)
  • 读取与修改 — 部分工具观察,部分工具操作,部分工具销毁(安全级别)
  • tmux 是事实来源 — 服务器从中读取并写入,从不缓存或抽象