libtmux-mcp server

公式

libtmux を利用した tmux MCP サーバー

Libtmux MCPで何ができますか?

  • Inspect tmux statelist_sessionscapture_paneget_pane_info、または search_panes を使用して、セッション、ウィンドウ、ペインの詳細を読み取ります。
  • Send input to panessend_keyssend_keys_batchrun_command、または paste_text を使用して、対象のペインにコマンドやテキストを入力します。
  • Create and arrange sessionscreate_sessioncreate_windowsplit_window を介して、名前付きセッション、ウィンドウ、分割ペインを作成します。
  • Destroy tmux objectskill_sessionkill_windowkill_pane、または kill_server を使用して、セッション、ウィンドウ、ペイン、またはサーバー全体を破棄します。
  • Suppress shell historysuppress_persistent_history を使用してペインを起動し、テスト実行や単発のコマンドを永続的なシェル履歴に残さないようにします。

ドキュメント

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分以内。

クイックスタート

ツール

すべてのツール、目的と安全性レベルごとにグループ化。

ツール

プロンプト

モデル用にクライアントがレンダリングする4つのワークフローレシピ。

プロンプト

リソース

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呼び出しは、デフォルトで軽量なコマンド抑制を使用します。新しいシェルを作成するときは、suppress_persistent_history=trueでより強力なディスク非保存制御をオプトインします。

プロンプト

ベストエフォートのディスク非保存シェル履歴制御を使用して「checks」というtmuxセッションを作成し、その初期ペインでpytest -qを実行し、結果を表示してください。

エージェントはsuppress_persistent_history=truecreate_sessionを呼び出し、返されたSessionInfoからactive_pane_idを再利用し、オーバーライドなしでrun_commandを呼び出します。create_windowsplit_window、またはrespawn_paneの同じspawnオプションは、その呼び出しが開始するプロセスにのみ適用されます。

これらの制御は履歴のノイズを減らしますが、コマンドを秘密にするものではありません。シェル固有の動作については履歴抑制、サーバーのデフォルトについては設定、その他の観測面については安全性レベルを参照してください。

すべてのツールを見る →


メンタルモデル¶

  • オブジェクト階層 — セッションはウィンドウを含み、ウィンドウはペインを含みます(概念)
  • 読み取り vs 変更 — 観察するツール、実行するツール、破壊するツールがあります(安全性レベル)
  • tmuxが信頼できる唯一の情報源 — サーバーはtmuxから読み取り、tmuxに書き込みます。キャッシュや抽象化は行いません