Claude Code : agents en parallèle avec tmux et SSH

Configurez tmux pour Claude Code : worktrees séparés, sessions persistantes et reconnexion SSH. Ajoutez une équipe d’agents quand la coordination le justifie.

Publié le

Claude Code : agents en parallèle avec tmux et SSH

Avec Claude Code, agents et tâches peuvent tourner dans tmux sur une machine distante qui reste allumée. Vous pouvez alors fermer votre ordinateur portable, vous reconnecter en SSH et retrouver le travail toujours en cours. Attribuez à chaque tâche indépendante son propre worktree Git et une session tmux nommée : le développement d’une fonctionnalité et la correction d’un bug auront ainsi des fichiers séparés. Commencez par cette organisation ; ajoutez une équipe d’agents lorsque les tâches demandent des échanges coordonnés.

Tout dépend de la machine qui exécute le travail. tmux conserve une session de terminal après une déconnexion. Il ne peut ni faire travailler un ordinateur en veille, ni maintenir un serveur éteint en activité, ni relancer un processus Claude qui a planté. Anthropic recommande explicitement tmux ou screen pour qu’une session Claude distante survive à une déconnexion SSH. Documentation Remote Control d’Anthropic.

Configurer tmux avec les réglages de la documentation

Placez la configuration sur la machine qui exécute Claude Code. Pour travailler à distance, il s’agit donc du fichier ~/.tmux.conf de l’hôte distant. Si nécessaire, installez tmux avec le gestionnaire de paquets de cet hôte, puis vérifiez sur place tmux -V et claude --version avant de continuer.

Ajoutez ce bloc à votre fichier ~/.tmux.conf en le combinant avec les réglages existants. Les trois premières lignes correspondent à la configuration documentée par Anthropic ; le réglage commenté pour la souris est facultatif et ne fait pas partie des exigences d’Anthropic.

Tmux
set -g allow-passthrough on
set -s extended-keys on
set -as terminal-features 'xterm*:extkeys'

# Optional preference: enable mouse interaction in tmux.
# set -g mouse on

Le passthrough laisse passer les notifications et les mises à jour de progression vers le terminal qui héberge tmux. La prise en charge des touches étendues permet à tmux de distinguer Maj+Entrée d’Entrée. Pour appliquer la configuration à un serveur tmux déjà lancé, exécutez tmux source-file ~/.tmux.conf ; un nouveau serveur charge le fichier au démarrage. Configuration du terminal dans la documentation Anthropic.

Si aucun serveur tmux ne tourne encore, créez d’abord la première session présentée ci-dessous, puis lancez la commande de rechargement. Pour cette configuration initiale, laissez de côté les plugins tiers : ce workflow n’en nécessite aucun.

Une session nommée pour chaque worktree

Un worktree Git est une autre copie de travail, avec ses propres fichiers et sa branche, qui partage l’historique du dépôt. Une session tmux regroupe des fenêtres de terminal sous un nom ; un volet est une subdivision d’une fenêtre. Voyez le worktree comme un établi, et tmux comme la pièce que l’on peut quitter puis retrouver. Guide des worktrees d’Anthropic.

Adoptez des noms cohérents pour que le nom de la session indique immédiatement dans quelle copie de travail vous entrez. Voici une organisation possible, et non un réglage par défaut de Claude Code :

TâcheWorktree sur l’hôteSession tmuxFenêtres
Développement d’une fonctionnalité~/src/project-feature-acc-feature-aclaude, éventuellement checks
Analyse d’un bug~/src/project-bugfixcc-bugfixclaude, éventuellement checks

Cet exemple de première installation suppose qu’un dépôt existe dans ~/src/project, qu’il contient au moins un commit et que les noms de branches, de répertoires et de sessions sont libres. Remplacez dev@devbox et le chemin du projet. Commencez dans le shell habituel de votre ordinateur portable, en dehors de tmux. Les commandes de worktree suivent la procédure manuelle d’Anthropic ; l’organisation en sessions nommées est celle proposée dans ce guide.

Bash
ssh dev@devbox
cd ~/src/project

git worktree add ../project-feature-a -b feature-a
git worktree add ../project-bugfix -b bugfix

tmux new-session -d -s cc-feature-a -n claude -c "$HOME/src/project-feature-a"
tmux new-session -d -s cc-bugfix -n claude -c "$HOME/src/project-bugfix"

tmux attach-session -t cc-feature-a
# Now inside the feature worktree's tmux shell:
claude

Une fois la connexion SSH établie, saisissez les commandes restantes sur l’hôte distant. Au départ, les deux sessions détachées contiennent des shells. En vous rattachant à l’une d’elles, puis en lançant claude, vous démarrez sa session de développement sous vos yeux, avec les éventuelles invites de configuration habituelles. Détachez-vous, rattachez-vous à cc-bugfix, puis lancez-y claude lorsque vous souhaitez activer la seconde tâche.

Chaque worktree nécessite sa propre préparation du projet, notamment l’installation des dépendances et toute configuration locale requise. Vérifiez le répertoire et la branche avant de demander à Claude de modifier des fichiers. Gestion manuelle des worktrees dans la documentation Anthropic.

Si vous voulez un shell de test dans la copie de travail de la fonctionnalité, exécutez tmux new-window -t cc-feature-a -n checks -c "$HOME/src/project-feature-a" depuis un shell sur l’hôte. Gardez les vérifications à côté de la tâche concernée. Évitez de faire de la copie de travail principale un répertoire de travail temporaire partagé par les deux agents.

Si vous utilisez aussi Codex, notre guide des worktrees avec Codex CLI présente séparément le workflow de cet outil.

Schéma d’architecture montrant un ordinateur portable relié par SSH à un hôte distant qui contient deux sessions tmux distinctes.
Les sessions résident sur l’hôte distant. SSH permet d’y accéder ; dans cette organisation, chaque session dispose de son propre worktree.

Se détacher, fermer son ordinateur et revenir en SSH

Avec le préfixe par défaut de tmux, appuyez sur Ctrl+B, relâchez les deux touches, puis appuyez sur D. Le client se détache et vous retrouvez le shell distant. Vous pouvez maintenant couper la connexion SSH. Laissez Claude tourner dans sa session.

À votre retour, exécutez ssh dev@devbox, puis tmux list-sessions, puis tmux attach-session -t cc-feature-a. Utilisez le même hôte distant et le même compte utilisateur. Depuis votre ordinateur portable, la commande unique équivalente est ssh -t dev@devbox 'tmux attach-session -t cc-feature-a'.

ObjectifAction
Laisser le travail en cours d’exécutionCtrl+B, puis D
Afficher les sessions nomméestmux list-sessions
Revenir à la correction du bugtmux attach-session -t cc-bugfix
Changer de session depuis tmuxCtrl+B, puis S
Choisir une fenêtre dans la session actuelleCtrl+B, puis W

Ces raccourcis supposent que le préfixe est celui par défaut. Si vous l’avez modifié, utilisez celui de votre configuration. Depuis tmux, changez de session plutôt que d’imbriquer un autre client tmux.

Se rattacher revient à se reconnecter au processus de terminal existant. Si ce processus s’est arrêté, récupérer la conversation relève d’une autre opération : claude --continue reprend la dernière conversation du répertoire courant, et claude --resume ouvre un sélecteur. Aucune de ces commandes ne remplace le maintien du processus d’origine en activité. Gestion des sessions dans la documentation Anthropic.

Pour un accès depuis un téléphone ou un navigateur, consultez Claude Code Remote Control. L’exécution reste sur l’hôte, qui doit demeurer allumé. Remote Control dans la documentation Anthropic.

Claude Code : agents en équipe quand il faut se coordonner

Les équipes d’agents sont expérimentales et désactivées par défaut. Dans un shell tmux, démarrez une nouvelle session interactive pour l’agent coordinateur avec CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 claude --teammate-mode tmux. La variable d’environnement active les équipes pour ce lancement ; l’option sélectionne l’affichage en volets séparés. Configuration des équipes d’agents dans la documentation Anthropic.

Le mode par défaut actuel est in-process. Le mode auto utilise des volets séparés dans tmux et bascule vers un autre mode si nécessaire ; tmux sélectionne l’affichage en volets séparés avec détection du terminal. Pour conserver cette préférence, utilisez teammateMode dans ~/.claude/settings.json. Avec les volets séparés, chaque coéquipier dispose d’un terminal visible distinct. Anthropic indique que le terminal intégré de VS Code, Windows Terminal et Ghostty ne sont pas pris en charge pour ce mode. Modes d’affichage et limites dans la documentation Anthropic.

Pour un premier essai, je confierais cette mission bien délimitée à l’agent coordinateur :

Crée une équipe d’agents pour analyser le dépassement de délai lors du passage en caisse. Nomme un coéquipier Requests et l’autre Storage. Requests doit retracer le comportement des nouvelles tentatives ; Storage doit examiner les limites des transactions. Demande-leur de confronter leurs observations. Ne modifie aucun fichier. Fournis une proposition de correctif et un plan de test.

Vos sessions cc-feature-a et cc-bugfix, lancées manuellement, ne deviennent pas des coéquipiers simplement parce qu’elles tournent toutes deux dans tmux. Créer une équipe est un choix distinct : il détermine qui répartit le travail et fait la synthèse des résultats. Préférez les sous-agents de Claude Code pour une délégation ciblée au sein d’une seule session.

Deux espaces de travail manuels indépendants, à côté d’une équipe d’agents dont le coordinateur et les coéquipiers sont reliés.
Avec des sessions manuelles, vous assurez la coordination. Une équipe d’agents ajoute un coordinateur et des échanges entre coéquipiers.

Un volet n’est pas une copie de travail distincte. Attribuez des fichiers différents ou utilisez des worktrees séparés pour les modifications indépendantes. Les équipes consomment aussi davantage de tokens ; tmux ne réduit pas cette consommation. Le rattachement permet de retrouver un terminal toujours actif, tandis que /resume ne restaure pas les coéquipiers en mode in-process. Conseils d’Anthropic sur les équipes.

Cinq situations où cette organisation peut servir

Je privilégierais les usages suivants, dans cet ordre. Chacun décrit un workflow possible, pas un gain de productivité mesuré.

Situation de développementComment utiliser cette organisationBénéfice possible
Vous travaillez depuis un ordinateur portable sur un hôte de développement distantGardez la tâche de développement dans une session distante nommée ; détachez-vous avant de partirLimite la reconstitution de votre espace de terminal après un déplacement ou une déconnexion
Un bug est signalé pendant le développement d’une fonctionnalitéDonnez au bug sa propre branche, son worktree et sa sessionPermet d’enquêter sans perturber la copie de travail de la fonctionnalité en cours
Vous maintenez deux branches de versionsGardez pour chacune une session au nom explicite et une copie de travailFacilite l’identification de la version concernée avant d’approuver les modifications
Vous comparez plusieurs approches d’implémentationAttribuez un worktree à chaque option, puis examinez les diffs obtenusConserve les deux expérimentations jusqu’au choix final, avec une décision d’intégration explicite
Un incident difficile à cerner nécessite plusieurs angles d’analyseEssayez une investigation en équipe d’agents au périmètre limité, puis demandez au coordinateur de confronter les observationsPeut accélérer l’obtention d’un diagnostic utile lorsque des investigations indépendantes ont un intérêt

Mesurez le coût des interruptions avant d’automatiser davantage. À titre d’illustration, cinq interruptions nécessitant chacune quatre minutes pour reconstituer le contexte représentent vingt minutes par semaine. Ce sont des hypothèses de calcul, pas des résultats de benchmark. Relevez vos propres temps de reprise, de préparation et de revue ; le workflow se justifie si le total diminue. Multiplier les agents simultanés n’est pas automatiquement plus rentable.

Deux petits outils à développer autour de ce workflow

La piste la plus prometteuse est un lanceur de worktrees et de sessions pour les équipes de développement. Une équipe plateforme pourrait payer pour harmoniser les noms des tâches, les chemins des copies de travail et les commandes de rattachement entre ses développeurs. La plus petite version utile créerait ou retrouverait un worktree, ouvrirait sa session tmux nommée et afficherait la branche et le chemin avant de lancer Claude. Elle devrait demander confirmation avant de nettoyer une copie de travail.

L’estimation de mots-clés DataForSEO pour les États-Unis, récupérée le 12 octobre 2026, indique 480 recherches mensuelles pour « tmux claude code ». C’est un signal limité d’intérêt pour la configuration, pas un décompte d’acheteurs. La difficulté : un court script interne peut suffire. Un produit payant doit apporter une configuration ou un accompagnement propres à l’équipe, qui lui évitent un travail récurrent.

Un inventaire des sessions distantes constitue une seconde piste, plus ciblée. Une petite équipe de développement pourrait centraliser les alias d’hôtes approuvés, les noms de sessions et les chemins des copies de travail, avec une commande de rattachement SSH à copier. Commencez par le repérage et la navigation, puis ajoutez des fonctions de gestion du cycle de vie uniquement si les utilisateurs en ont besoin.

La même analyse DataForSEO estime à 1 600 les recherches mensuelles aux États-Unis pour « claude code remote » et à 70 celles pour « claude code remote ssh ». La requête la plus large englobe des personnes à la recherche d’autres interfaces d’accès à distance ; elle ne suffit donc pas à valider un produit SSH. Le point délicat est la gestion des accès : l’inventaire doit respecter les autorisations que chaque développeur possède déjà sur les hôtes. Interrogez des équipes qui travaillent principalement à distance avant de construire un tableau de bord.

Les questions qui se posent à l’usage

Claude continue-t-il à travailler si je ferme mon ordinateur portable ?

Oui, si Claude et tmux tournent sur un hôte distant qui reste actif et connecté. S’ils tournent sur l’ordinateur portable qui se met en veille, le travail s’interrompt avec lui. Un terminal encore actif ne garantit pas non plus que le travail avance : Claude peut attendre votre réponse.

Pourquoi Maj+Entrée envoie-t-il encore le message dans tmux ?

Vérifiez que vous avez modifié et rechargé la configuration sur l’hôte qui exécute réellement tmux. Si /terminal-setup est nécessaire, lancez-le dans le terminal qui héberge tmux. Ctrl+J est le raccourci de remplacement documenté pour insérer un saut de ligne. Configuration du terminal dans la documentation Anthropic.

Pourquoi le rattachement indique-t-il que la session n’existe pas ?

Vérifiez l’hôte, l’utilisateur et le nom exact de la session avec tmux list-sessions. Si la session s’est terminée ou si l’hôte a redémarré, il faut procéder à une récupération, pas tenter un nouveau rattachement. Ne créez pas de session de remplacement au nom similaire avant de savoir si l’originale tourne encore ailleurs.

Deux volets tmux empêchent-ils les agents de modifier les mêmes fichiers ?

Non. Dans cette configuration, l’isolation repose sur les chemins de worktrees distincts. Vérifiez le répertoire et la branche de chaque shell avant de lancer les modifications. Vous devez toujours relire et intégrer les changements obtenus.

Pour passer à l’action dès lundi : choisissez une tâche distante, créez son worktree et sa session nommée, puis vérifiez que vous pouvez vous détacher et vous rattacher avant de la laisser tourner sans surveillance. N’ajoutez une seconde tâche indépendante qu’une fois cette procédure devenue habituelle.

Si votre équipe a besoin d’intégrer ce workflow à son environnement de développement, nous construisons des systèmes d’IA en production.

Publié
Catégorie
Build
Articles similaires
vLLM vs Ollama : quel moteur pour votre charge de travail ?

vLLM vs Ollama : quel moteur pour votre charge de travail ?

vLLM vs Ollama : comparez installation, requêtes simultanées, mémoire GPU et coûts pour choisir votre moteur d’inférence et préparer une migration fiable.12 oct. 2026Build
Lovable vs Cursor : quel outil choisir pour votre app en 2026 ?

Lovable vs Cursor : quel outil choisir pour votre app en 2026 ?

Lovable ou Cursor pour votre MVP ? Comparez les tarifs, l’hébergement et la maintenance, puis préparez le passage de Lovable à Cursor sans tout refaire.11 oct. 2026Build
IA locale : Ollama ou LM Studio, lequel choisir ?

IA locale : Ollama ou LM Studio, lequel choisir ?

Ollama ou LM Studio pour votre IA locale ? Comparez API, interfaces, GPU, licences et coûts pour choisir l’outil adapté à votre workflow professionnel.11 oct. 2026Build
Cursor Rules : configurer ses règles avec 3 exemples

Cursor Rules : configurer ses règles avec 3 exemples

Configurez les règles de Cursor : fichiers, déclencheurs et trois exemples TypeScript pour le style, les tests et la sécurité, à adapter à votre projet.11 oct. 2026Build
Codex CLI : réussir ses premiers pas et configurer l’équipe

Codex CLI : réussir ses premiers pas et configurer l’équipe

Installez Codex CLI, validez une première tâche et préparez le travail en équipe : modèles, permissions, AGENTS.md, serveurs MCP et worktrees Git.11 oct. 2026Build
Claude Code best practices : les bons réflexes en équipe

Claude Code best practices : les bons réflexes en équipe

Adoptez les bonnes pratiques Claude Code dans le bon ordre : tests, plans, CLAUDE.md, contexte, coûts et hooks pour limiter les reprises dans votre équipe.11 oct. 2026Build
Codex MCP : créer un plugin et le partager en équipe

Codex MCP : créer un plugin et le partager en équipe

Créez un plugin Codex MCP, installez-le depuis une marketplace et partagez skills et connexions avec votre équipe, sans distribuer les identifiants.11 oct. 2026Build
Claude MD : les bonnes consignes pour toute l’équipe

Claude MD : les bonnes consignes pour toute l’équipe

Créez un CLAUDE.md utile à toute l’équipe : modèle à adapter, règles ciblées par fichier et méthode pour entretenir la mémoire automatique de Claude Code.11 oct. 2026Build
Newsletter

Une lettre, chaque dimanche.Des systèmes qui tournent, pas des hot takes.

Hebdomadaire. Pas de spam. Désabonnement à tout moment.