Guide

Claude Code continue de tourner, portable fermé : tmux sur un serveur

Vous lancez Claude Code sur un serveur, vous lui confiez une tâche un peu longue, puis la connexion coupe : Wi-Fi perdu, portable refermé, redémarrage pour une mise à jour. Sans précaution, le travail de l’agent est perdu. Avec tmux, cela n’arrive plus.

Pourquoi l’agent s’arrête quand la connexion coupe

Tout ce que vous lancez dans une session SSH dépend de cette session. Quand elle se termine, le système envoie aux programmes en cours un signal d’arrêt (SIGHUP). Claude Code est interrompu au milieu de sa tâche.

La solution est un multiplexeur de terminal comme tmux. tmux continue de tourner sur le serveur, indépendamment de votre connexion. Vous vous y attachez, vous travaillez, vous vous détachez, et les programmes qu’il contient continuent simplement de tourner.

tmux en cinq minutes

Installez tmux sur le serveur, par exemple sous Debian ou Ubuntu :

sudo apt install tmux

Démarrez une session nommée main, ou rattachez-vous à elle si elle existe déjà :

tmux new -A -s main

Lancez-y claude et saisissez votre tâche. Pour vous détacher, appuyez sur Ctrl+b puis sur d. La session continue de tourner, même après votre déconnexion. Plus tard, vous la récupérez avec :

tmux attach -t main

tmux ls affiche toutes les sessions en cours.

Toujours revenir dans la même session

C’est encore plus pratique si chaque connexion SSH arrive automatiquement dans la même session tmux. Pour cela, ajoutez à la fin du fichier ~/.bashrc sur le serveur :

if [[ -n "$SSH_CONNECTION" && -z "$TMUX" && $- == *i* && "$TERM_PROGRAM" != "vscode" ]]; then
  exec tmux new -A -s main
fi

Les conditions garantissent que cela ne se produit que pour les connexions SSH interactives. Les transferts de fichiers avec scp ou rsync ne sont pas concernés. Le terminal de VS Code est exclu, car VS Code gère lui-même ses terminaux.

Désormais, ssh meinserver suffit, et vous reprenez exactement là où vous en étiez.

Si le processus a quand même été arrêté

Même sans tmux, tout n’est pas perdu, car Claude Code enregistre vos conversations. Cette commande reprend la dernière conversation dans le répertoire courant :

claude --continue

La forme courte est claude -c. Avec claude --resume, vous choisissez plutôt dans une liste de sessions précédentes. Une tâche interrompue ne reprend pas d’elle-même : demandez simplement à l’agent de continuer là où il s’était arrêté.

Continuer depuis votre téléphone

Avec Remote Control, vous pilotez une session Claude Code en cours depuis le navigateur ou votre téléphone. Pour cela, lancez Claude Code ainsi :

claude --remote-control

Dans une session déjà ouverte, tapez plutôt /remote-control, ou /rc en abrégé. Vous ouvrez ensuite la session sur claude.ai/code ou dans l’application Claude. Elle continue de tourner sur votre serveur ; le navigateur et l’application n’en sont que la fenêtre. Combiné à tmux, l’agent continue donc de travailler sur le serveur, et vous suivez son avancement en déplacement.

Remote Control est disponible avec les forfaits Pro, Max, Team et Enterprise. Pour Team et Enterprise, un administrateur doit d’abord l’activer dans les paramètres.

Conclusion

tmux sur le serveur, l’attachement automatique via .bashrc et, si besoin, Remote Control : ainsi votre agent continue de travailler, quoi qu’il arrive à votre portable. Sur la euhost Box, tout cela est déjà configuré.