Files
vmux/.planning/PROJECT.md
2026-03-23 10:57:35 +01:00

73 lines
3.0 KiB
Markdown

# vmux
## What This Is
Cockpit central pour le vibe coding. vmux donne une vue unifiée de toutes les sessions Claude Code qui tournent sur le poste, détecte leur état (travaille / attend input), affiche un aperçu de ce que chaque session fait ou demande, et permet de switcher vers le bon workspace i3.
## Core Value
Savoir instantanément quelle session Claude Code a besoin de moi, sans scanner manuellement mes workspaces.
## Requirements
### Validated
(None yet — ship to validate)
### Active
- [ ] Détecter les sessions Claude Code actives sur le poste
- [ ] Identifier l'état de chaque session (travaille / attend input / idle)
- [ ] Afficher un aperçu des dernières lignes de sortie de chaque session
- [ ] Associer chaque session à son workspace i3 / worktree git
- [ ] Switcher vers le workspace i3 d'une session en un geste
- [ ] Notifier quand une session passe de "travaille" à "attend input"
### Out of Scope
- Terminal intégré / répondre depuis vmux — complexité trop élevée pour la v1, réévaluer après usage
- Gestion du timetracking — déjà couvert par piaire
- Lancement de nouvelles sessions Claude Code — vmux observe, ne crée pas
## Context
- Pierre travaille avec plusieurs sessions Claude Code en parallèle (3+), chacune dans un worktree git dédié
- Chaque sujet occupe un workspace i3 (bureau virtuel) avec Claude Code + outils satellites (serveur, Zed, Chrome)
- Les worktrees sont créés par les skills /start-feature et /review-gitlab-mr
- Aujourd'hui, la détection se fait manuellement : scan visuel des workspaces, écran 2 pour les sessions actives, écran 1 pour celles qui attendent
- piaire existe déjà comme outil d'orchestration workflow (timetracking, features, MRs) — vmux pourrait s'y intégrer ou rester standalone
- Environnement : NixOS, i3 WM, 2 écrans
## Constraints
- **OS**: NixOS avec i3 — doit s'intégrer nativement (i3-msg, IPC i3)
- **Stack existante**: piaire est en Go stdlib + HTMX — cohérence souhaitable si intégration
- **Détection non-intrusive**: vmux observe les sessions sans les modifier ni les ralentir
## Key Decisions
| Decision | Rationale | Outcome |
|----------|-----------|---------|
| Dispatcher + aperçu (pas terminal intégré) | 80% de la valeur pour 20% de la complexité | — Pending |
| Standalone vs intégration piaire | À décider après la recherche | — Pending |
## Evolution
This document evolves at phase transitions and milestone boundaries.
**After each phase transition** (via `/gsd:transition`):
1. Requirements invalidated? → Move to Out of Scope with reason
2. Requirements validated? → Move to Validated with phase reference
3. New requirements emerged? → Add to Active
4. Decisions to log? → Add to Key Decisions
5. "What This Is" still accurate? → Update if drifted
**After each milestone** (via `/gsd:complete-milestone`):
1. Full review of all sections
2. Core Value check — still the right priority?
3. Audit Out of Scope — reasons still valid?
4. Update Context with current state
---
*Last updated: 2026-03-23 after initialization*