wmux wmux / docs

Documentation wmux

Tout ce qu'il faut savoir pour commencer avec wmux, même si tu n'as jamais utilisé un multiplexeur de terminal de ta vie. Ce guide t'emmène de zéro à la maîtrise étape par étape.

Qu'est-ce que wmux ?

wmux est une application de bureau pour Windows qui te permet d'avoir plusieurs terminaux ouverts en même temps, organisés en onglets verticaux, avec la possibilité de diviser chaque onglet en plusieurs panneaux. C'est l'équivalent Windows d'outils comme tmux (Linux/macOS), Ghostty, ou Warp — mais pensé spécifiquement pour travailler avec des agents IA comme Claude Code.

Concrètement, quand tu lances wmux, tu obtiens :

À qui c'est destiné ? À toute personne qui veut lancer plusieurs agents IA en parallèle sur Windows et garder un œil sur ce qu'ils font. Si tu utilises déjà Claude Code et que tu en as marre de jongler entre plusieurs fenêtres de terminal, wmux est fait pour toi.

Le problème que wmux résout. Les agents IA comme Claude Code travaillent par bursts — parfois 30 secondes, parfois 10 minutes. Pendant qu'un agent tourne, tu pourrais en lancer un autre. Sans wmux, tu dois ouvrir plusieurs fenêtres de terminal, les organiser à la main, et tu rates les notifications quand tu es sur un autre écran. Avec wmux, tout est dans une seule fenêtre, chaque agent a sa place, et les notifications te trouvent où que tu sois.

Installation

wmux est distribué comme une archive zip portable. Il n'y a pas d'installateur : tu télécharges, tu décompresses, et tu lances. Voici les étapes précises :

1. Télécharger la dernière version

Va sur la page des releases GitHub et télécharge le fichier wmux-X.Y.Z-win-x64.zip (où X.Y.Z est la version la plus récente). Le zip fait environ 150 Mo.

2. Décompresser le zip

Fais un clic droit sur le fichier téléchargé, choisis Extraire tout, et sélectionne un dossier de destination. Je te recommande C:\Users\TonNom\wmux pour que ce soit facile à retrouver. Évite Program Files si tu n'es pas administrateur.

Attention — Mark of the Web. Windows ajoute une étiquette "provient d'Internet" aux fichiers téléchargés via un navigateur. Cette étiquette empêche wmux de charger certains modules. Pour l'enlever, ouvre PowerShell dans le dossier où tu as extrait wmux et tape :
Get-ChildItem -Recurse | Unblock-File
Tu peux aussi faire clic droit sur le zip avant de le décompresser → Propriétés → cocher Débloquer en bas, puis OK. Plus simple.

3. Lancer wmux

Dans le dossier où tu as extrait wmux, double-clique sur wmux.exe. La première fois, Windows SmartScreen va afficher un écran bleu avec "Windows a protégé votre PC". C'est normal — wmux n'est pas encore signé avec un certificat Authenticode coûteux. Clique sur Informations complémentaires, puis sur Exécuter quand même.

wmux s'ouvre avec une fenêtre noire et un terminal PowerShell par défaut. Bienvenue.

Astuce — épingle wmux à la barre des tâches. Fais clic droit sur l'icône wmux dans la barre des tâches et choisis Épingler à la barre des tâches. Maintenant tu peux lancer wmux d'un clic à tout moment.

Premier lancement

Quand tu ouvres wmux pour la première fois, voici ce que tu vois :

Double-clique sur l'espace de travail dans la barre latérale pour le renommer. Je te recommande de nommer tes workspaces par projet — par exemple mon-site, api-backend, etc.

Les concepts de base

wmux organise ton travail en quatre couches. Comprendre ces quatre mots te fera gagner beaucoup de temps.

Workspace (espace de travail)

Un workspace est un gros conteneur. Pense à une "session" complète pour un projet : un workspace peut contenir plusieurs panneaux, et chaque panneau plusieurs onglets. Tu passes d'un workspace à l'autre via la barre latérale ou avec Ctrl+1, Ctrl+2, etc.

Pane (panneau)

Un pane est un bloc visuel à l'intérieur du workspace. Quand tu divises ton écran en deux pour avoir un terminal à gauche et un autre à droite, tu crées deux panes. Chaque pane peut afficher un terminal, un navigateur, ou un document markdown.

Surface (onglet)

Une surface est un onglet à l'intérieur d'un pane. Dans un seul pane, tu peux avoir plusieurs onglets ouverts en même temps (par exemple 3 terminaux différents) et basculer de l'un à l'autre avec Ctrl+Tab. C'est comme les onglets d'un navigateur, mais pour tes terminaux.

Sidebar (barre latérale)

La sidebar à gauche liste tous tes workspaces. Pour chacun, elle affiche en temps réel : la branche git, si le répertoire a des modifications non commitées, le répertoire courant, les ports ouverts (utile pour les dev servers), le nombre d'agents qui tournent, le statut des pull requests GitHub, et les notifications non lues.

Workspace

Le conteneur global. Un workspace = un projet.

Pane

Un bloc visuel. Peut contenir terminal, navigateur, ou markdown.

Surface

Un onglet à l'intérieur d'un pane. Plusieurs terminaux dans un même pane.

Sidebar

La barre latérale gauche. Affiche git, ports, notifications en temps réel.

Raccourcis clavier essentiels

wmux a plus de 50 raccourcis, mais tu n'as vraiment besoin que d'une dizaine au quotidien. Apprends ceux-ci et tu seras opérationnel :

Ctrl+T
Nouvel onglet (surface) dans le pane courant
Ctrl+D
Diviser le pane horizontalement (nouveau terminal à droite)
Ctrl+Shift+D
Diviser le pane verticalement (nouveau terminal en bas)
Ctrl+W
Fermer l'onglet (surface) courant
Ctrl+Tab
Onglet suivant dans le même pane
Ctrl+N
Nouveau workspace
Ctrl+1..9
Basculer vers le workspace numéro 1 à 9
Ctrl+Shift+P
Ouvrir la palette de commandes (recherche floue de toutes les actions)
Ctrl+Shift+F
Rechercher dans le terminal courant
Ctrl+Shift+B
Ouvrir/fermer le navigateur intégré
F11
Plein écran
Ctrl+,
Ouvrir les paramètres

Tu peux personnaliser n'importe quel raccourci dans les paramètres → Raccourcis clavier. Si tu viens de tmux ou Ghostty, il existe des presets pour reproduire tes habitudes.

Travailler avec Claude Code

C'est ici que wmux devient intéressant. wmux détecte automatiquement Claude Code et configure son intégration sans que tu aies à faire quoi que ce soit. Quand tu lances claude dans un terminal wmux, les choses suivantes se passent en arrière-plan :

Résultat concret : tu lances claude, tu lui demandes "navigue sur github.com et cherche le repo wmux", et tu vois en temps réel dans le panneau navigateur ce qu'il fait. Pas besoin de Playwright, pas de fenêtres invisibles, pas de configuration.

Le plugin wmux-orchestrator

Pour aller plus loin avec Claude Code, wmux embarque un plugin appelé wmux-orchestrator. Il te permet de lancer plusieurs agents Claude Code en parallèle pour une même tâche, chacun dans son propre pane visible. Le plugin analyse ta codebase, découpe la tâche en sous-tâches, et coordonne tout.

Tout est expliqué en détail sur plugin.wmux.org avec un simulateur interactif.

Diviser un panneau (split panes)

Avoir plusieurs terminaux côte à côte, c'est souvent ce qui te fait gagner le plus de temps. wmux rend ça trivial.

Diviser horizontalement

Appuie sur Ctrl+D. Le pane courant se divise en deux : le pane original à gauche, un nouveau terminal vide à droite. Le focus se met automatiquement sur le nouveau pane.

Diviser verticalement

Appuie sur Ctrl+Shift+D. Le pane se divise horizontalement en deux : l'original en haut, le nouveau en bas.

Redimensionner

Attrape la barre de séparation entre deux panes avec la souris et tire. Le redimensionnement est fluide. Si tu veux un ratio précis, passe par les paramètres.

Fermer un pane

Ctrl+Shift+W ferme le pane courant. Si le pane contient plusieurs onglets (surfaces), ils sont tous fermés. Le pane voisin reprend automatiquement l'espace libéré.

Astuce — le zoom de pane. Appuie sur Ctrl+Shift+Z pour agrandir temporairement le pane courant en plein workspace. Appuie à nouveau pour revenir à la disposition normale. C'est parfait quand tu as besoin de lire un long log sans perdre ta disposition.

Le navigateur intégré

wmux embarque un vrai navigateur Chromium (pas une webview basique) que tu peux ouvrir à côté de n'importe quel terminal. Il sert à deux choses :

  1. Voir en direct ce que Claude Code fait quand il navigue sur le web via chrome-devtools-mcp. Chaque action de l'agent est visible en temps réel, comme si tu regardais par-dessus son épaule.
  2. Consulter la documentation d'une librairie, vérifier un dashboard, ouvrir Stack Overflow sans quitter wmux.

Pour ouvrir un navigateur, utilise Ctrl+Shift+B. Un pane navigateur s'ouvre à droite. Tape une URL dans la barre d'adresse, ou clique sur le bouton "nouvelle surface" pour avoir plusieurs onglets navigateur dans le même pane.

Le navigateur supporte les DevTools complets (clic droit → Inspecter), l'extension des shortcuts Chrome, et la navigation avec Alt+ et Alt+.

Comprendre les notifications

Quand un agent finit une tâche ou a besoin de ton attention, wmux t'alerte de plusieurs façons simultanément :

Les notifications sont déclenchées automatiquement par les scripts d'intégration shell qui détectent quand une commande finit ou est interrompue. Pour les déclencher manuellement depuis un script, utilise wmux notify "Mon message".

Indicateurs d'activité

Dans la sidebar, chaque surface affiche un petit rond coloré :

Sauvegarder et restaurer une session

wmux sauvegarde automatiquement l'état de ta fenêtre toutes les 30 secondes : workspaces, panes, onglets, répertoires courants, URLs du navigateur. Quand tu ferme wmux et que tu le relance, tu retrouves exactement la même disposition.

Tu peux aussi sauvegarder manuellement une session avec un nom spécifique pour y revenir plus tard :

wmux session save "avant-refacto"
wmux session list
wmux session load "avant-refacto"

Les sessions sont stockées dans %APPDATA%\wmux\sessions\ sous forme de fichiers JSON.

Thèmes

wmux inclut 450+ thèmes prêts à l'emploi importés du projet Ghostty, plus la possibilité d'importer tes propres thèmes depuis Windows Terminal.

Changer de thème

Ouvre les paramètres avec Ctrl+,, va dans Apparence, puis dans Thème. Tu peux prévisualiser chaque thème en survolant son nom. Le changement est appliqué instantanément à tous les terminaux ouverts.

Importer un thème Windows Terminal

Si tu as déjà configuré ton Windows Terminal avec un thème que tu aimes, wmux peut le lire directement :

wmux config import-wt

Ça importe toutes les colorSchemes de ton settings.json de Windows Terminal et les rend disponibles dans wmux.

Importer un thème Ghostty

Même principe avec un fichier de config Ghostty :

wmux config import-ghostty ~/.config/ghostty/config

Intégration shell

Pour que wmux sache ce qui se passe dans chaque terminal (branche git courante, répertoire, exit code de la dernière commande, ports actifs), il injecte des scripts d'intégration dans ton shell au démarrage. Trois shells sont supportés :

L'intégration est automatique : tu n'as rien à faire. wmux détecte ton shell par défaut, injecte le script au lancement du terminal, et ça marche.

Si tu veux voir ce qui est injecté, regarde dans %APPDATA%\wmux\shell-integration\. Les scripts sont documentés et tu peux les modifier si tu veux personnaliser l'affichage dans la sidebar.

Variables d'environnement injectées. Dans tout terminal lancé par wmux, les variables suivantes sont disponibles : WMUX=1 (pour détecter qu'on est dans wmux), WMUX_SURFACE_ID (l'ID unique de l'onglet), WMUX_PIPE (le chemin du named pipe pour le CLI), WMUX_CLI (le chemin de l'exécutable wmux.exe). Utile si tu veux écrire tes propres scripts qui interagissent avec wmux.

Le CLI wmux

wmux est scriptable. Quand tu lances l'application, elle démarre un named pipe (\\.\pipe\wmux) qui accepte des commandes JSON-RPC v2. L'exécutable wmux.exe est aussi un client de ce pipe : tu peux l'utiliser depuis n'importe quel shell pour piloter wmux depuis une commande.

Quelques exemples utiles

# Créer un nouveau workspace nommé
wmux new-workspace --title "mon-projet" --cwd C:\Users\me\dev\projet

# Diviser le pane courant et lancer une commande dedans
wmux split --down
wmux send "npm run dev"

# Lister tous les workspaces
wmux list-workspaces

# Ouvrir une URL dans le navigateur intégré
wmux browser open https://github.com/amirlehmam/wmux

# Déclencher une notification
wmux notify "Build terminé avec succès"

# Récupérer l'arbre complet de la fenêtre (JSON)
wmux tree

La liste complète des commandes est disponible via wmux --help dans n'importe quel terminal. Le CLI est ce qui permet à Claude Code et à tout autre outil d'automatisation d'interagir avec wmux.

Pourquoi pas MCP ? wmux n'expose pas de serveur MCP, volontairement. Le CLI via named pipe est plus simple, plus fiable, et s'intègre mieux avec les workflows existants. Claude Code peut appeler wmux directement via Bash sans avoir besoin d'une couche d'abstraction supplémentaire.

Le plugin wmux-orchestrator

wmux embarque un plugin Claude Code appelé wmux-orchestrator qui transforme une seule tâche complexe en plusieurs agents travaillant en parallèle, chacun dans son propre pane visible.

Par exemple, si tu demandes "refactorer l'authentification pour utiliser JWT", l'orchestrateur va :

  1. Analyser la codebase et identifier tous les fichiers concernés
  2. Découper la tâche en sous-tâches (types partagés, service, middleware, tests)
  3. Organiser les sous-tâches en vagues selon leurs dépendances
  4. Spawner un agent Claude Code par sous-tâche, chacun dans son propre pane wmux
  5. Coordonner les transitions de vagues automatiquement
  6. Lancer un agent reviewer à la fin pour vérifier la cohérence

Le plugin est déjà installé avec wmux (il est copié dans ~/.claude/plugins/cache/ au premier démarrage). Tu peux l'utiliser directement avec :

/wmux-orchestrator:orchestrate "refactorer l'auth en JWT"

Pour une explication complète avec un simulateur interactif, une démo en direct, l'architecture détaillée et un guide d'utilisation étape par étape, visite plugin.wmux.org.

Voir plugin.wmux.org

Problèmes courants

wmux ne démarre pas, j'ai une erreur à propos de node-pty

C'est presque toujours le Mark of the Web qui bloque le chargement des modules natifs. Dans PowerShell, va dans le dossier wmux et tape Get-ChildItem -Recurse | Unblock-File, puis relance. Si ça ne marche toujours pas, re-télécharge le zip et décoche Débloquer dans les propriétés AVANT de l'extraire.

Les raccourcis clavier ne marchent pas

Vérifie que ton antivirus ou un logiciel comme AutoHotkey n'intercepte pas les combinaisons. Windows Defender et la plupart des antivirus grand public n'interfèrent pas, mais certains outils de productivité le font. Teste dans les paramètres → Raccourcis clavier avec le bouton "tester".

Claude Code ne reconnaît pas wmux

Quand tu lances claude dans un terminal wmux, vérifie que les variables d'environnement sont injectées : tape echo $env:WMUX (PowerShell) ou echo $WMUX (bash). Tu devrais voir 1. Si tu vois vide, c'est que le shell d'intégration ne s'est pas chargé — redémarre le shell ou relance wmux.

Vérifie aussi que ~/.claude/CLAUDE.md contient bien une section commençant par # wmux. Si elle manque, c'est que l'auto-injection a échoué. Relance wmux depuis un terminal admin et regarde les logs.

Le navigateur intégré est lent ou noir

Active l'accélération GPU dans les paramètres → AvancéHardware acceleration. Sur les machines plus anciennes sans GPU dédié, ça peut faire une grosse différence. Si tu es sur un GPU très ancien ou une VM, désactive plutôt l'accélération — elle peut produire des artefacts.

Comment mettre à jour wmux ?

wmux a un auto-updater intégré qui vérifie les nouvelles versions au démarrage. Quand une mise à jour est disponible, tu vois une petite notification. Clique dessus et wmux se met à jour tout seul. Tu peux aussi forcer une vérification via le menu AideVérifier les mises à jour, ou télécharger manuellement la dernière release depuis GitHub et remplacer ton installation.

Puis-je utiliser wmux sur macOS ou Linux ?

Non. wmux est spécifiquement conçu pour Windows (il utilise ConPTY, des APIs Win32 natives, et des optimisations Electron pour Windows). Pour macOS, utilise cmux, qui est le projet parent écrit en Swift/AppKit. Pour Linux, il y a tmux, Ghostty, ou Warp — mais tu n'auras pas le plugin wmux-orchestrator.

Ressources

Pour aller plus loin, voici où chercher :

Retour à wmux.org Télécharger wmux