libtmux-mcp server
官方由 libtmux 驅動的 tmux MCP 伺服器
你可以用 Libtmux MCP 做什麼?
- 檢查 tmux 狀態 — 使用
list_sessions、capture_pane、get_pane_info或search_panes讀取工作階段、視窗和窗格的詳細資訊。 - 向窗格發送輸入 — 使用
send_keys、send_keys_batch、run_command或paste_text在目標窗格中輸入命令或文字。 - 建立與排列工作階段 — 透過
create_session、create_window和split_window啟動具名工作階段、視窗和分割窗格。 - 銷毀 tmux 物件 — 使用
kill_session、kill_window、kill_pane或kill_server終止工作階段、視窗、窗格或整個伺服器。 - 抑制 shell 歷史記錄 — 使用
suppress_persistent_history啟動窗格,以將測試執行和一次性命令排除在持久性 shell 歷史記錄之外。
文件
libtmux-mcp¶
為 AI 代理提供終端機控制,基於 libtmux 和 FastMCP 構建。
此伺服器將 tmux 的物件階層——會話、視窗、窗格——映射為 MCP 工具。有些工具讀取狀態。有些則變更狀態。有些則進行破壞。這些區別是明確且強制執行的。
警告
預覽版。 API 可能會變更。歡迎提供回饋。
Claude Code Claude Desktop Codex CLI Gemini CLI Cursor Grok CLI Antigravity
uvx pipx pip install
設定冷卻期 ?
本機 使用者 專案
使用者 專案
使用者 專案
專案 全域
使用者 專案
安裝 uvx 後:
$ claude mcp add tmux -- uvx libtmux-mcp
返回
依賴項冷卻期
使用上方的「設定冷卻期」核取方塊來啟用或停用。這些設定會決定啟用後冷卻期的行為方式。
什麼是冷卻期?
冷卻期會延遲接收新上傳的套件,讓社群有時間在您安裝前發現供應鏈攻擊。大多數套件管理器預設不會套用冷卻期——您可以透過工具設定中的全域設定來選擇加入。
了解更多資訊,請造訪 cooldowns.dev · Datadog Security Labs 文章。
快速入門
安裝、連線,並取得第一個結果。不到 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 · wait_for_content_change · 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_command。在 create_window、split_window 或 respawn_pane 上使用相同的生成選項,僅適用於該呼叫啟動的程序。
這些控制措施可減少歷史記錄雜訊;它們並不會使命令變為秘密。有關 shell 特定行為,請參閱歷史記錄抑制,有關伺服器預設值,請參閱設定,以及其他觀察表面的資訊,請參閱安全層級。
瀏覽所有工具 →
心智模型¶
- 物件階層 — 會話包含視窗,視窗包含窗格(概念)
- 讀取 vs. 變更 — 有些工具用於觀察,有些用於操作,有些用於破壞(安全層級)
- tmux 是事實來源 — 伺服器從中讀取並寫入,絕不快取或抽象化