libtmux-mcp server

officiel

Serveur MCP tmux propulsé par libtmux

Que pouvez-vous faire avec Libtmux MCP ?

  • Inspecter l'état de tmux — Lire les détails des sessions, fenêtres et volets avec list_sessions, capture_pane, get_pane_info ou search_panes.
  • Envoyer une entrée aux volets — Saisir des commandes ou du texte dans un volet cible en utilisant send_keys, send_keys_batch, run_command ou paste_text.
  • Créer et organiser des sessions — Lancer des sessions nommées, des fenêtres et des volets divisés via create_session, create_window et split_window.
  • Détruire des objets tmux — Supprimer des sessions, fenêtres, volets ou le serveur entier avec kill_session, kill_window, kill_pane ou kill_server.
  • Supprimer l'historique du shell — Lancer des volets avec suppress_persistent_history pour éviter que les exécutions de tests et les commandes ponctuelles n'apparaissent dans l'historique persistant du shell.

Documentation

libtmux-mcp¶

Contrôle de terminal pour agents IA, construit sur libtmux et FastMCP.

Ce serveur mappe la hiérarchie d'objets de tmux — sessions, fenêtres, panneaux — en outils MCP. Certains outils lisent l'état. D'autres le modifient. Certains détruisent. La distinction est explicite et appliquée.

Avertissement

Pré-alpha. Les API peuvent changer. Les retours sont les bienvenus.

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

uvx pipx pip install

Configurer les délais de sécurité ?

Local Utilisateur Projet

Utilisateur Projet

Utilisateur Projet

Projet Global

Utilisateur Projet

Avec uvx installé :

$ claude mcp add tmux -- uvx libtmux-mcp

Retour

Délais de sécurité des dépendances

Utilisez la case à cocher Configurer les délais de sécurité ci-dessus pour activer ou désactiver. Ces paramètres déterminent le comportement du délai une fois activé.

Qu'est-ce que les délais de sécurité ?

Les délais de sécurité retardent la récupération des paquets nouvellement téléversés afin que la communauté ait le temps de repérer les attaques sur la chaîne d'approvisionnement avant que vous n'installiez. La plupart des gestionnaires de paquets n'en appliquent pas par défaut — vous l'activez via un paramètre global dans la configuration de votre outil.

En savoir plus sur cooldowns.dev · Article des Datadog Security Labs.


Démarrage rapide

Installez, connectez, obtenez un premier résultat. En moins de 2 minutes.

Démarrage rapide

Outils

Chaque outil, regroupé par intention et niveau de sécurité.

Outils

Invites

Quatre recettes de flux de travail que le client restitue pour le modèle.

Invites

Ressources

Vues instantanées de la hiérarchie tmux via les URIs tmux://.

Ressources

Niveaux de sécurité

Lecture seule, mutation, destruction. Sachez ce qui change l'état.

Niveaux de sécurité

Configuration client

Blocs de configuration pour Claude Desktop, Claude Code, Cursor et autres.

Clients MCP


Ce que vous pouvez faire¶

Inspecter en lecture seule¶

Lire l'état de tmux sans rien modifier.

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

Agir avec mutation¶

Créer ou modifier des objets 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

Détruire de manière destructive¶

Démanteler des objets tmux. Irréversible.

kill_session · kill_window · kill_pane · kill_server · call_destructive_tools_batch

Exemple : garder les exécutions de test hors de l'historique persistant¶

libtmux-mcp fournit une suppression de l'historique au mieux pour Bash, Zsh et Fish. Les appels MCP à run_command utilisent par défaut une suppression légère des commandes. Lorsque vous créez un nouveau shell, optez pour des contrôles plus stricts sans écriture sur disque avec suppress_persistent_history=true.

Invite

Créez une session tmux appelée « checks » avec des contrôles d'historique shell sans écriture sur disque au mieux, exécutez pytest -q dans son panneau initial et montrez-moi le résultat.

L'agent appelle create_session avec suppress_persistent_history=true, réutilise active_pane_id du SessionInfo retourné, et appelle run_command sans substitution. La même option de spawn sur create_window, split_window, ou respawn_pane s'applique uniquement au processus que cet appel démarre.

Ces contrôles réduisent le bruit dans l'historique ; ils ne rendent pas les commandes secrètes. Voir Suppression de l'historique pour le comportement spécifique au shell, Configuration pour la valeur par défaut du serveur, et Niveaux de sécurité pour les autres surfaces d'observation.

Parcourir tous les outils →


Modèle mental¶

  • Hiérarchie d'objets — les sessions contiennent des fenêtres, les fenêtres contiennent des panneaux (Concepts)
  • Lire vs. muter — certains outils observent, d'autres agissent, certains détruisent (Niveaux de sécurité)
  • tmux est la source de vérité — le serveur y lit et y écrit, ne met jamais en cache ni n'abstrait