libtmux-mcp server

offiziell

Von libtmux betriebener tmux MCP-Server

Was kann man mit Libtmux MCP machen?

  • tmux-Zustand prüfen — Fordern Sie einen schreibgeschützten Schnappschuss von Sitzungen, Fenstern oder Panes über list_sessions, capture_pane oder get_pane_info an.
  • Befehle in Panes ausführen — Lassen Sie den Assistenten Shell-Befehle ausführen oder Tastatureingaben mit run_command oder send_keys senden, einschließlich Batch-Operationen.
  • tmux-Objekte verwalten — Erstellen, teilen, skalieren oder auswählen Sie Fenster und Panes mit Werkzeugen wie create_window, split_window oder select_pane.
  • tmux-Ressourcen zerstören — Beenden Sie Sitzungen, Fenster, Panes oder den gesamten Server mit destruktiven Werkzeugen wie kill_session oder kill_server.
  • Shell-Verlauf unterdrücken — Starten Sie Sitzungen oder Fenster mit suppress_persistent_history=true, um Testläufe aus dem persistenten Shell-Verlauf herauszuhalten.

Dokumentation

libtmux-mcp¶

Terminalsteuerung für KI-Agenten, basierend auf libtmux und FastMCP.

Dieser Server bildet die Objekthierarchie von tmux – Sessions, Fenster, Panes – auf MCP-Tools ab. Einige Tools lesen den Zustand. Einige verändern ihn. Einige zerstören. Der Unterschied ist explizit und wird durchgesetzt.

Warnung

Vor-Alpha. APIs können sich ändern. Feedback ist willkommen.

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

uvx pipx pip install

Cooldowns konfigurieren ?

Lokal Benutzer Projekt

Benutzer Projekt

Benutzer Projekt

Projekt Global

Benutzer Projekt

Mit installiertem uvx:

$ claude mcp add tmux -- uvx libtmux-mcp

Zurück

Abhängigkeits-Cooldowns

Verwenden Sie das Kontrollkästchen Cooldowns konfigurieren oben, um die Funktion zu aktivieren oder zu deaktivieren. Diese Einstellungen legen fest, wie sich Cooldowns verhalten, sobald sie aktiviert sind.

Was sind Cooldowns?

Cooldowns verzögern das Aufnehmen neu hochgeladener Pakete, damit die Community Zeit hat, Lieferkettenangriffe zu erkennen, bevor Sie installieren. Die meisten Paketmanager wenden standardmäßig keinen an – Sie aktivieren ihn über eine globale Einstellung in der Konfiguration Ihres Tools.

Weitere Informationen unter cooldowns.dev · Datadog Security Labs-Bericht.


Schnellstart

Installieren, verbinden, erstes Ergebnis erhalten. Unter 2 Minuten.

Schnellstart

Werkzeuge

Jedes Tool, gruppiert nach Absicht und Sicherheitsstufe.

Werkzeuge

Eingabeaufforderungen

Vier Workflow-Rezepte, die der Client für das Modell rendert.

Eingabeaufforderungen

Ressourcen

Snapshot-Ansichten der tmux-Hierarchie über tmux://-URIs.

Ressourcen

Sicherheitsstufen

Nur lesen, verändernd, zerstörend. Wissen, was den Zustand ändert.

Sicherheitsstufen

Client-Einrichtung

Konfigurationsblöcke für Claude Desktop, Claude Code, Cursor und andere.

MCP-Clients


Was Sie tun können¶

Nur lesen untersuchen¶

Lesen Sie den tmux-Zustand, ohne etwas zu ändern.

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

Verändernd handeln¶

Erstellen oder ändern Sie tmux-Objekte.

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

Zerstörend vernichten¶

Reißen Sie tmux-Objekte ab. Nicht umkehrbar.

kill_session · kill_window · kill_pane · kill_server · call_destructive_tools_batch

Beispiel: Testläufe aus dem persistenten Verlauf fernhalten¶

libtmux-mcp bietet eine Best-Effort-Unterdrückung des Verlaufs für Bash, Zsh und Fish. MCP-Aufrufe an run_command verwenden standardmäßig eine leichte Befehlsunterdrückung. Wenn Sie eine neue Shell erstellen, können Sie mit suppress_persistent_history=true stärkere No-Disk-Kontrollen aktivieren.

Eingabeaufforderung

Erstellen Sie eine tmux-Session namens „checks“ mit Best-Effort-No-Disk-Shell-Verlaufskontrollen, führen Sie pytest -q in ihrem anfänglichen Pane aus und zeigen Sie mir das Ergebnis.

Der Agent ruft create_session mit suppress_persistent_history=true auf, verwendet active_pane_id aus dem zurückgegebenen SessionInfo erneut und ruft run_command ohne Überschreibung auf. Dieselbe Spawn-Option auf create_window, split_window oder respawn_pane gilt nur für den Prozess, den dieser Aufruf startet.

Diese Kontrollen reduzieren Verlaufsrauschen; sie machen Befehle nicht geheim. Siehe Verlaufsunterdrückung für shell-spezifisches Verhalten, Konfiguration für den Serverstandard und Sicherheitsstufen für andere Beobachtungsflächen.

Alle Werkzeuge durchsuchen →


Mentales Modell¶

  • Objekthierarchie — Sessions enthalten Fenster, Fenster enthalten Panes (Konzepte)
  • Lesen vs. Verändern — einige Tools beobachten, einige handeln, einige zerstören (Sicherheitsstufen)
  • tmux ist die Quelle der Wahrheit — der Server liest daraus und schreibt hinein, speichert nie zwischen und abstrahiert nicht