purplemux / for Claude Code

Claude Code, plusieurs sessions, en parallèle. Plus vite.

Un tableau de bord multi-session sur tmux.
Navigateur, mobile, terminal — un flux de travail continu.

$ npx purplemux
Télécharger pour macOS
Node.js 20+ tmux requis macOS / Linux
tableau de bord purplemux sur desktop purplemux sur mobile
Pourquoi purplemux

Chaque session, dans un tableau de bord.

Plus les sessions s'accumulent, plus leur état devient difficile à suivre.
purplemux les réunit sur un seul écran pour voir ce qui tourne et là où ton input est attendu d'un coup d'œil.

Rate limit sidebar
5h reste 2h 14m (85%)
7d reste 4j 9h (60%)

Ton quota, en temps réel.

Toucher une limite en pleine concentration, ça casse ton flow. En attendant le prochain reset, le travail reste bloqué.

purplemux affiche en permanence les quotas 5 heures et 7 jours dans la sidebar. Les couleurs changent à 50% et 80%, tu ajustes ton rythme avant d'atteindre le mur.

purplemuxin progress
docs-siteneeds input
landingreview
refactoridle
Tableau de bord multi-session
Voir d'un coup d'œil l'état running / needs-input de chaque session Claude Code.
Refactor auth module
readsrc/lib/auth.ts
editsrc/lib/auth.ts
00:24
Vue live de session
Progression affichée en timeline — fini le scroll dans les logs CLI.
IN PROGRESS3
landing-copy
REVIEW2
fix-auth-bug
tsc-errors
DONE7
Sessions groupées par statut
Chaque session est automatiquement triée en Review · In Progress · Done.
term diff
web
Sauver & restaurer les workspaces
Comme on tourne sur tmux, les sessions survivent à la fermeture du navigateur. Layout, onglets et chemins de travail se restaurent en un clic le lendemain.
src/lib/auth.ts
12
13
14
15
12
13
14
15
Visionneur Git diff
Consulte les diffs dans un panneau à côté du terminal. Côte à côte ou inline, avec coloration syntaxique.
~/devdocker compose up
~/devvim src/handler.ts
~/devssh prod.example.com
~/devpnpm dev
Un vrai terminal
Pas seulement Claude. Un terminal complet xterm.js + node-pty pour vim, docker, ssh, REPL — tout ce que tu veux.
Mobile & push

Loin du bureau, sans changement.

Pas besoin de rester au bureau juste pour surveiller une tâche longue. Ouvre-le dans un navigateur mobile, ajoute-le à l'écran d'accueil, et il se comporte comme une app native. Ferme l'onglet et les notifications de fin de tâche / d'input requis arrivent quand même via Web Push.

notification push purplemux sur mobile

Ajouter à l'écran d'accueil (PWA)

Ouvre-le dans un navigateur et ajoute-le à l'écran d'accueil pour obtenir une icône en plein écran.

iOS (Safari)
  1. Ouvre http://<host>:8022 dans Safari
  2. Touche le bouton Partager en bas
  3. Choisis Sur l'écran d'accueil
  4. Touche Ajouter en haut à droite
Android (Chrome)
  1. Ouvre l'URL dans Chrome
  2. Ouvre le menu en haut à droite
  3. Choisis Installer l'application ou Ajouter à l'écran d'accueil

Activer les notifications push

  1. Active Settings → Notification → On et autorise les notifications du navigateur
  2. Distribuées via Web Push, même en arrière-plan
  3. Alertes pour tâche terminée et input requis
  4. Touche une notification pour sauter directement à la session

Accès externe via Tailscale

Pour accéder depuis l'extérieur de ton réseau, Tailscale Serve est la solution la plus propre. Chiffrement WireGuard et certificats HTTPS inclus gratuitement.

$ tailscale serve --bg 8022

Ensuite tu accèdes à https://<machine>.<tailnet>.ts.net de n'importe où. iOS Safari a besoin du HTTPS pour que PWA et Web Push fonctionnent correctement.

Stats & analyse

Toute l'utilisation, sur un seul écran.

Tokens du jour, coût du mois, usage par projet, répartition par modèle — des chiffres éparpillés rassemblés en un seul endroit pour révéler le rythme et la structure de coût de ton travail.

tableau de bord d'usage purplemux
01
Quatre cartes d'aperçu Sessions · Total · Today · Month
02
Tendance d'activité quotidienne Sessions · messages, 30 derniers jours
03
Work streaks Longest · Current · Count · Avg
04
Timeline hebdomadaire Jour × heure + sessions simultanées
Rapport quotidien IA

Ta journée, résumée automatiquement.

À la fin de la journée, les logs de session sont rassemblés et un LLM rédige un résumé en une ligne et un résumé détaillé. Sauvegardé en Markdown — glisse-le directement dans une rétro, un rapport ou un 1:1.

2026-04-13 (Mon) 15 sessions · $5.87
Rédigé la première version de la landing purplemux. Connecté la section mobile / PWA au dashboard stats. Uniformisé le ton façon Apple et remplacé tous les mockups de feature cards.
∧ Collapse
purplemux
Premier jet de la landing
  • Conception de la structure en huit sections avec les layouts Hero / Why / Mobile / Stats
  • Couleur de marque purple convertie en variable OKLCH
  • Cadres de mockup appliqués aux captures desktop et mobile
Mockups feature cards
  • Indicateurs spinner / pulse réels reproduits dans le dashboard multi-session
  • CSS des mockups Git Diff, workspace et self-hosted peaufiné
  • Animation ajoutée au diagramme d'accès Tailscale

Brief + detailed côte à côte

Le brief d'une ligne vit dans le dashboard ; la version détaillée se déplie en un clic. C'est du Markdown — à coller direct dans une rétro ou un rapport.

Batch & régénération

Remplis les jours manquants en un batch, ou régénère un jour précis. Le LLM traite session par session pour ne jamais perdre le contexte.

Partout, vite

Vit dans la sidebar comme Notes et s'ouvre avec Cmd ⇧ E (macOS) / Ctrl ⇧ E (Linux). Stocké en local — rien ne sort de ta machine.

Fonctions

Tout ce qu'il te faut. Rien de superflu.

Terminal 7
  • Split panesDivisions horizontales · verticales, redimensionnables en drag
  • Gestion des ongletsOnglets multiples, réordonnables, titre auto selon le processus
  • RaccourcisSplit · changer d'onglet · déplacer le focus
  • ThèmesDark / light · plusieurs jeux de couleurs
  • WorkspacesSauvegarder / restaurer panneaux · onglets · chemins
  • Visionneur Git diffCôte à côte · coloration syntaxique
  • Panneau navigateur webAperçu Electron intégré
Intégration Claude Code 10
  • Statut en temps réelIn progress / needs input, transitions instantanées
  • Mode sessions sidebarBascule Workspace ↔ Sessions, vues par statut
  • Vue live de sessionMessages · appels d'outils · tasks · permission prompts
  • Reprise en un clicReprendre une session interrompue depuis le navigateur
  • Restore automatiqueRécupère les sessions précédentes au redémarrage
  • Quick promptsEnregistre tes favoris et lance-les en un clic
  • Historique de messagesRéutilise les messages précédents
  • Analyses d'usageTokens · coût · par projet · rapports quotidiens
  • Compte à rebours rate limitReste 5h / 7j · temps jusqu'au reset
  • Alertes d'usageLa barre passe en amber · red à 50% · 80%
Mobile & accessibilité 7
  • UI responsiveTerminal · timeline sur téléphone et tablette
  • PWAAjout écran d'accueil · feeling natif
  • Web PushNotifications même onglet fermé
  • Sync multi-appareilsChangements de workspace reflétés en temps réel
  • TailscaleAccès externe sécurisé en HTTPS
  • Auth par mot de passeHash scrypt
  • Multilingue한국어 · English · 日本語 · 中文 · 11 langues
Personnalisation 9
  • ThèmesLight / Dark / System automatique
  • Taille de policeNormal · Large · X-Large
  • Custom CSSOverride total via variables CSS
  • Thèmes terminalJeux de couleurs séparés pour light / dark
  • Sidebar réordonnableAfficher/masquer · drag pour réordonner
  • Bibliothèque Quick PromptsAjoute des prompts custom · drag pour trier
  • Intégration éditeurÉditeur externe via URL code-server
  • Contrôle des notificationsNotifications système on/off
  • Options ClaudeActive des options CLI comme skip permissions
Architecture

Navigateur ↔ Node.js ↔ tmux · Claude Code.

xterm.js se connecte à node-pty en WebSocket, et node-pty se rattache à une session tmux sur le socket purple dédié. L'état est suivi conjointement par les hooks Claude Code et un watcher de logs JSONL.

Browser UI
xterm.js
Terminal
Timeline
events
Status
indicators
Multi‑device
sync
WebSocket
/terminal /timeline /status /sync
Node.js Server :8022
node-pty
Binary PTY ↔ WS
JSONL Watcher
file → parse → send
Status Manager
process tree + JSONL tail
Binary PTY · stdin/out binaire Hooks + polling 5–15s Interception des permission prompts 1MB backpressure · 10 queue
spawn · read
System local
tmux · purple socket
session 1 session 2
Socket purple isolé Récupération parallèle après reboot
Claude Code
~/.claude/sessions/ ~/.claude/projects/{id}.jsonl
vs Remote Control officiel

Au-delà du contrôle à distance — un workspace unifié.

Le Remote Control officiel est un outil d'accès distant pour continuer une session Claude Code depuis un autre appareil. purplemux y ajoute un tableau de bord multi-session, des extensions de terminal et des analyses d'usage — un environnement d'exploitation self-hosted.

Critère Remote Control officiel purplemux
Vue simultanée des sessions Ouvrir une à la fois depuis une liste Toutes les sessions, tous les états, sur un même dashboard
Indicateurs de statut Online / offline Busy · Review · Needs-input · Idle en temps réel
Notifications push Nécessite l'app mobile Claude Web Push · n'importe quel navigateur, sans installation
Persistance du terminal Uniquement tant que le process claude tourne Basé sur tmux · récupération automatique après restart
Outils inclus Session Claude Code uniquement Terminal split · Git diff · sauvegarde workspace
Analyses d'usage Tokens · coût · par projet · rapport quotidien IA
Points forts Officiel Anthropic · intégration app mobile Claude · auto-update OSS tiers · installation & maintenance manuelles
Installer

30 secondes, du début à la fin.

Il te faut juste Node.js 20+ et tmux. Une ligne pour installer, puis ouvre le navigateur.

1

Exécuter

Démarre tout de suite avec npx. Une installation globale marche aussi.

$ npx purplemux
2

Ouvrir le navigateur

Le port par défaut est 8022. À modifier via la variable PORT.

 http://localhost:8022
3

Accès distant (optionnel)

Pour un accès externe, nous recommandons Tailscale Serve. Chiffrement WireGuard et certificats automatiques fournis.

$ tailscale serve --bg 8022
4

App native (optionnel)

Sur macOS tu peux aussi utiliser le build Electron. Apple Silicon et Intel supportés.

Télécharger la dernière release →
FAQ

Ce que tu te demandes sûrement.

Est-ce que ça me fait économiser ?

Ça rend ton usage transparent. Coût du jour, du mois et par projet, répartition des tokens par modèle, reste des rate limits 5h / 7j — tout sur un seul écran pour ajuster toi-même tes dépenses.

Je peux approuver les permission prompts depuis mon téléphone ?

Oui. purplemux intercepte les dialogues de permission Claude Code depuis le terminal et les envoie au dashboard et aux notifications mobiles. À approuver depuis n'importe où — fini les tâches en pause.

Si mon système plante, je perds mes sessions ?

Fermer le navigateur ou perdre le réseau, ce n'est pas grave — tmux garde les sessions vivantes. Même après un reboot complet, purplemux scanne le layout du workspace et restaure les sessions Claude précédentes en parallèle. Aucune restauration manuelle.

Où sont stockées mes données ?

Tous les réglages et données de session sont stockés localement sous ~/.purplemux/. Rien n'est envoyé à des serveurs externes. L'authentification est conservée en hash scrypt dans config.json.

Ça marche sous Windows ?

Pas officiellement. Les contraintes de tmux et node-pty font que seuls macOS et Linux sont supportés. Ça peut tourner sous WSL2, mais ce n'est pas testé.

Ça entre en conflit avec mes sessions tmux existantes ?

purplemux lance une instance tmux isolée sur un socket purple dédié. Totalement indépendant de tes sessions tmux et de ~/.tmux.conf.

Comment accéder à l'outil depuis l'extérieur ?

Tailscale Serve est recommandé — chiffrement WireGuard et certificats HTTPS automatiques. Si tu préfères ton propre reverse proxy, n'oublie pas de relayer les headers Upgrade et Connection dans Nginx / Caddy.

Y a-t-il un coût ?

purplemux lui-même est open source sous licence MIT et gratuit. L'usage de Claude Code est facturé séparément.

Est-ce vraiment utilisable sur mobile ?

Oui. UI responsive, PWA et Web Push sont inclus. Ajoute-le à l'écran d'accueil pour le feeling natif ; ferme l'onglet et tu recevras toujours les notifications de fin de tâche et d'input nécessaire.

Est-ce traduit ?

11 langues supportées : 한국어 · English · 日本語 · 简体中文 · 繁體中文 · Deutsch · Español · Français · Русский · Português (Brasil) · Türkçe.

Commencer

Une ligne suffit.

Avec Node.js 20+ et tmux prêts, c'est en route en 30 secondes.

$ npx purplemux
Télécharger pour macOS
Self-hosted · open source

Sur ta machine, à toi.

purplemux est un outil self-hosted qui tourne en local. Les données de session, réglages et historique vivent uniquement dans ~/.purplemux/ et ne quittent jamais ta machine. La source complète est sous licence MIT — à lire, modifier, contribuer.

MIT License 100% local 0 télémétrie
~/.purplemux/
├─ config.json
├─ workspaces.json
└─ sessions/
MIT local-only