libtmux-mcp server
officielServeur MCP tmux propulsé par libtmux
Que pouvez-vous faire avec Libtmux MCP ?
- Inspecter l'état de tmux — Demander un instantané en lecture seule des sessions, fenêtres ou volets via
list_sessions,capture_paneouget_pane_info. - Exécuter des commandes dans les volets — Demander à l'assistant d'exécuter des commandes shell ou d'envoyer des frappes clavier avec
run_commandousend_keys, y compris des opérations par lots. - Gérer les objets tmux — Créer, diviser, redimensionner ou sélectionner des fenêtres et des volets à l'aide d'outils comme
create_window,split_windowouselect_pane. - Détruire les ressources tmux — Détruire des sessions, fenêtres, volets ou le serveur entier avec des outils destructeurs comme
kill_sessionoukill_server. - Supprimer l'historique du shell — Démarrer des sessions ou des fenêtres avec
suppress_persistent_history=truepour garder les exécutions de tests hors de 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. D'autres détruisent. La distinction est explicite et appliquée.
Avertissement
Pré-alpha. Les API peuvent changer. Retours bienvenus.
Claude Code Claude Desktop Codex CLI Gemini CLI Cursor Grok CLI Antigravity opencode
uvx pipx pip install
Configurer les délais de refroidissement ?
Local Utilisateur Projet
Utilisateur Projet
Utilisateur Projet
Projet Global
Utilisateur Projet
Projet Global
Utilisateur Projet
Avec uvx installé :
$ claude mcp add tmux -- uvx libtmux-mcp
Retour
Délais de refroidissement des dépendances
Utilisez la case Configurer les délais de refroidissement ci-dessus pour activer ou désactiver. Ces paramètres déterminent comment le délai de refroidissement se comporte une fois activé.
Que sont les délais de refroidissement ?
Les délais de refroidissement retardent la prise en charge des paquets nouvellement téléversés afin que la communauté ait le temps de repérer les attaques de la chaîne d'approvisionnement avant que vous n'installiez. La plupart des gestionnaires de paquets n'en appliquent pas par défaut — vous optez via un paramètre global dans la configuration de votre outil.
En savoir plus sur cooldowns.dev · article de Datadog Security Labs.
Démarrage rapide
Installez, connectez-vous, obtenez un premier résultat. Moins de 2 minutes.
Démarrage rapide
Outils
Chaque outil, regroupé par intention et niveau de sécurité.
Outils
Invites
Quatre recettes de workflow que le client rend pour le modèle.
Invites
Ressources
Vues instantanées de la hiérarchie tmux via les URI 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 · display_message · call_readonly_tools_batch
Agir en 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 (destructif)¶
Démanteler des objets tmux. Non réversible.
kill_session · kill_window · kill_pane · kill_server · call_destructive_tools_batch
Exemple : garder les exécutions de tests hors de l'historique persistant¶
libtmux-mcp fournit une suppression d'historique au mieux pour Bash, Zsh et Fish. Les appels MCP à run_command utilisent une suppression de commande légère par défaut. 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 nommé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 depuis le SessionInfo retourné, et appelle run_command sans remplacement. La même option de lancement 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 de 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 d'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)
- Lecture vs. mutation — certains outils observent, certains agissent, certains détruisent (Niveaux de sécurité)
- tmux est la source de vérité — le serveur lit depuis et écrit vers, ne met jamais en cache ni n'abstrait