docs: add README, licence WTFPL et documentation

- README.md : vision, installation, commandes, aperçu fonctionnement
- LICENSE : WTFPL v2
- docs/architecture.md : composants, flux de données, index des fichiers
- docs/i3-integration.md : config i3bar, switch, focus, dépannage
- .gitignore : exclure .direnv/

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Pierre Martin
2026-05-21 17:57:51 +02:00
parent 001c453462
commit f6881c1619
5 changed files with 314 additions and 0 deletions

85
docs/i3-integration.md Normal file
View File

@@ -0,0 +1,85 @@
# Intégration i3
## i3bar
Ajoutez `vmux i3bar` comme `status_command` dans votre `~/.config/i3/config` :
```
bar {
status_command vmux i3bar
position top
...
}
```
Rechargez i3 (`$mod+Shift+r`). vmux démarre le daemon automatiquement si nécessaire.
### Format des blocs
Un bloc par session active, trié par numéro de workspace :
```
3-vmux[W] 5-api[⚡ 45s] 7-front[? 3m]
```
- `3-vmux` — workspace i3 + nom (label ou dernier composant du cwd)
- `[W]` vert — Working
- `[⚡ 45s]` rouge — Needs Input, type permission, en attente depuis 45s
- `[?]` rouge — Needs Input, type question
- `[!]` rouge — Needs Input, autre type
- `[I]` gris — Idle
- `[?]` gris — état inconnu
Si le daemon est offline : `vmux: offline`.
Si aucune session détectée : `vmux: no sessions`.
## Commande switch
Basculez vers le workspace d'une session depuis votre terminal :
```sh
vmux switch vmux # cherche une session dont le cwd ou label contient "vmux"
vmux switch api
```
La correspondance est fuzzy : le premier mot du workspace/label/cwd qui contient la query gagne.
Vous pouvez aussi lier cette commande à un raccourci i3 :
```
bindsym $mod+F1 exec vmux switch feature-1
bindsym $mod+F2 exec vmux switch feature-2
```
## Notifications desktop
vmux envoie une notification `notify-send` quand une session passe de `Working` à `Needs Input`. Assurez-vous qu'un daemon de notification tourne (`dunst`, `mako`, etc.).
### Mode focus
Pour couper les notifications temporairement :
```sh
vmux focus 30 # supprimer 30 minutes
vmux focus 0 # réactiver immédiatement
```
## Dépannage
**Le workspace n'apparaît pas dans `vmux list`**
vmux résout les workspaces via i3 IPC et X11. Vérifiez que `DISPLAY` est défini dans l'environnement du daemon. Si le daemon est lancé depuis un service systemd, il peut ne pas hériter de `DISPLAY`.
**Les hooks ne fonctionnent pas**
1. Vérifiez que `vmux setup` a été lancé et que `~/.claude/settings.json` contient les hooks
2. Redémarrez les sessions Claude Code après `vmux setup`
3. Le hook server écoute sur `localhost:3119` — vérifiez qu'aucun autre processus n'occupe ce port
**`vmux list` ne voit aucune session**
Le daemon scrute `/proc` pour les processus dont la commande contient `claude`. Vérifiez :
```sh
ps aux | grep claude
```
Si aucun processus n'apparaît, Claude Code n'est pas détecté. Vérifiez le nom du binaire sur votre système.