Files
brain-template/docs/architecture.md
Tetardtek 8244a07881 feat: brain-engine + brain-ui + docs — template full stack standalone
- brain-engine: server, embed, search, RAG, MCP, start.sh (standalone)
- brain-ui: source React complète, build.sh, DocsView avec tier colors
- docs: 14 pages guides humains (getting-started, architecture, sessions, workflows, agents, vues tier)
- brain-compose.yml v0.9.0: tier featured ajouté, sessions/agents par tier, coach_level, API key schema
- DISTRIBUTION_CHECKLIST v1.2: brain-engine + brain-ui + docs dans la checklist
2026-03-20 20:25:40 +01:00

166 lines
5.1 KiB
Markdown

# Architecture du brain
> Comment les pieces s'assemblent. Version humaine — pas la spec technique.
---
## Vue d'ensemble
Le brain c'est 3 couches :
**1. Le kernel** — l'identite
- Les regles qui ne changent pas (KERNEL.md, constitution, PATHS.md)
- Les agents specialises (~75 fichiers .md)
- Le profil de collaboration
- Le brain-compose.yml (config, tiers, modes)
**2. Les satellites** — la memoire
- `todo/` — les intentions et taches
- `progression/` — ta progression, tes skills, ton metabolisme
- `toolkit/` — les patterns valides en prod, reutilisables
- `reviews/` — les audits d'agents
- `profil/` — ton identite, tes objectifs
Chaque satellite est un repo Git independant. Le kernel les ignore (gitignore). Ils vivent leur vie.
**3. L'instance** — le runtime
- `claims/` — quelle session est active, sur quoi
- `workspace/` — les sprints en cours, checkpoints
- `brain-compose.local.yml` — config machine (tier, cle API, peers)
- `brain.db` — base SQLite pour BSI et etat live
---
## Comment une session fonctionne
```
Tu tapes "brain boot mode work/mon-projet"
|
v
helloWorld lit ta config
|
v
Charge le minimum (L0 : kernel + paths + config)
|
v
Lit le manifest de session (contexts/session-work.yml)
|
v
Charge les agents pertinents (L1 : debug, coach-boot, scribe)
|
v
Charge le projet si declare (L2 : projets/mon-projet.md + todo/mon-projet.md)
|
v
Ouvre un claim BSI (trace de session)
|
v
"Pret." → tu travailles
|
v
Tu dis "on wrappe"
|
v
Close sequence : metriques → todos → scribe → coach → BSI close
```
---
## Les 4 couches de chargement
Le brain ne charge pas tout. Il utilise 4 couches, du plus leger au plus complet :
**L0 — Toujours charge** (~5%)
3 fichiers. L'identite du brain. Jamais retire.
**L1 — Selon la session** (~15%)
Les agents et fichiers specifiques au type de session. `work` charge debug + coach. `deploy` charge vps + ci-cd. Deterministe : meme session = meme chargement.
**L2 — Selon le projet** (~10%)
Si tu declares un projet dans ta commande, ses fichiers sont charges. Silencieux si le projet n'existe pas.
**L3 — Sur demande** (0% au boot)
Tout le reste. Tu demandes "Charge l'agent testing" → il arrive. Jamais proactif.
**Resultat** : ~25% du contexte au boot, pas 80%. Le brain demarre vite.
---
## Les zones — qui ecrit ou
Le brain a des zones protegees. Chaque session sait ou elle peut ecrire :
**Zone kernel** — protection maximale
KERNEL.md, CLAUDE.md, agents/, profil/. Aucune modification sans decision humaine. Session `edit-brain` requise.
**Zone satellites** — vie libre
todo/, toolkit/, progression/, reviews/. Les scribes ecrivent librement. Promotion vers le kernel possible.
**Zone instance** — etat runtime
claims/, workspace/, brain.db. Geree automatiquement par les agents systeme.
**Zone projet** — code externe
Ton code, tes repos. Le brain y travaille en session `work`/`debug`/`deploy` mais ne melange jamais avec le kernel.
> Regle : une feature grandit dans un satellite → elle peut etre promue dans le kernel. Le kernel ne derive jamais vers un satellite.
---
## Les tiers — qui a acces a quoi
Le brain a 4 niveaux d'acces. Chaque tier debloque des agents et des sessions :
> 🟢 **free** — le brain fonctionne. Debug, brainstorm, scribes, protection secrets.
> 🔵 **featured** — le brain te connait. Coach complet, distillation RAG, progression.
> 🟠 **pro** — l'atelier complet. Review, securite, tests, deploy, perf, infra.
> 🟣 **full** — ton brain. Modification kernel, pilotage long, supervision.
Detail complet → voir les Vues par tier dans la sidebar.
---
## Les agents — comment ils s'organisent
Chaque agent a un fichier `.md` avec :
- Un **boot-summary** (~25 lignes) — charge au demarrage de session
- Un **detail** (reste du fichier) — charge quand l'agent est actif
Les agents se declenchent automatiquement (domaine detecte) ou sur invocation explicite. Ils se delegent entre eux — chaque agent connait ses limites.
**4 familles :**
- **Metier** — debug, review, securite, tests, refacto, perf, infra
- **Scribes** — scribe, todo-scribe, metabolism-scribe, wiki-scribe
- **Presences** — coach, secrets-guardian, helloWorld, session-orchestrator
- **Systeme** — key-guardian, pre-flight, feature-gate, hypervisor
---
## Multi-instance
Le brain peut tourner sur plusieurs machines et plusieurs sessions en parallele.
- Chaque session a un **claim BSI** — les sessions se voient entre elles
- Les **peers** se declarent dans brain-compose.local.yml
- La **synchronisation** passe par Git (push/pull) et brain.db (SQLite replique)
Si deux sessions veulent ecrire au meme endroit → conflit detecte, resolution humaine.
---
## Pour aller plus loin
- **Detail technique** : wiki/ — session-matrix, context-loading, agents-architecture
- **Agents par famille** : Code & Qualite, Infra & Deploy, Brain & Systeme dans la sidebar
- **Recettes** : Workflows dans la sidebar