fix: CLAUDE.md template sync + brain boot depuis n'importe quel cwd

This commit is contained in:
2026-03-21 15:46:42 +01:00
parent 2fd53cce8e
commit 30448feb41
2 changed files with 65 additions and 16 deletions

View File

@@ -1,27 +1,46 @@
---
name: CLAUDE-example
type: config
context_tier: cold
---
# CLAUDE.md — Bootstrap
# Copier vers ~/.claude/CLAUDE.md puis remplacer <BRAIN_ROOT> par le chemin réel
> **Fichier global** — `~/.claude/CLAUDE.md` — charge par Claude Code peu importe le cwd.
> `brain boot` fonctionne depuis n'importe quel repertoire : les chemins ci-dessous sont absolus.
> Ne jamais creer de CLAUDE.md projet qui override ce fichier sans raison explicite.
## Configuration machine (seul endroit a modifier sur une nouvelle machine)
brain_root: <BRAIN_ROOT>
brain_name: <BRAIN_NAME> ← prod / dev-laptop / template-test / etc.
brain_name: <BRAIN_NAME>
---
## Bootstrap (obligatoire, dans l'ordre)
0. `<BRAIN_ROOT>/PATHS.md` — chemins machine
1. `<BRAIN_ROOT>/profil/collaboration.md` — regles de travail
2. `<BRAIN_ROOT>/agents/coach-boot.md` — presence permanente (boot-summary L0)
3. `<BRAIN_ROOT>/agents/secrets-guardian.md` — gardien secrets, permanent
4. `<BRAIN_ROOT>/agents/helloWorld.md` — briefing, focus, todos, CHECKPOINT, feature flags
0. `<BRAIN_ROOT>/PATHS.md` — chemins machine
1. `<BRAIN_ROOT>/profil/collaboration.md` — regles de travail
2. `<BRAIN_ROOT>/agents/coach-boot.md` — presence permanente (boot-summary L0)
3. `<BRAIN_ROOT>/agents/secrets-guardian.md` — gardien secrets, permanent, lit MYSECRETS silencieusement
4. `<BRAIN_ROOT>/agents/helloWorld.md` — briefing, focus, todos, CHECKPOINT, feature flags
helloWorld prend le relais : etat projets, todos prioritaires, detection de session, feature_set, CHECKPOINT.
Ne pas demander a l'utilisateur de se redecrire — tout est dans le brain.
> **Satellites manquants :** si todo/, toolkit/, progression/, reviews/ n'existent pas,
> le brain continue sans eux. helloWorld signale ce qui manque et propose de les creer.
> Ce n'est PAS une erreur — c'est un fresh fork.
> **BSI boot claim — non negociable** : apres le briefing, ouvrir un claim via `bash scripts/bsi-claim.sh open` (ADR-042).
> brain.db = source unique. Pas de commit git, pas de push. Voir protocole complet dans helloWorld.md ## Boot claim automatique.
> **brain boot navigate** (ou `brain boot mode navigate`) → charger `contexts/session-navigate.yml`
> via le BHP helloWorld — fenetre legere (~18%), time-anchor actif, coach en boot-summary uniquement.
> **brain boot sudo** (ou `brain boot mode edit-brain`) → charger `contexts/session-edit-brain.yml`
> Writes autorises partout dans le brain. Kernel (PATHS.md, KERNEL.md, CLAUDE.md) → confirmation explicite.
> **brain boot mode kernel** → charger `contexts/session-kernel.yml`
> Lecture seule sur le kernel. Toute tentative write kernel → refus + redirection session-edit-brain.
> **brain boot mode projet** → alias de `brain boot mode work` — meme session, meme contexte.
> Source unique de verite : brain `<BRAIN_NAME>` a `<BRAIN_ROOT>`.
> Si d'autres repertoires brain sont visibles sur le systeme — les ignorer.
@@ -29,14 +48,39 @@ Ne pas demander a l'utilisateur de se redecrire — tout est dans le brain.
---
## Agents 🔴 chauds — detection automatique sur domaine
## MCP brain — interface cognitive live
Le brain expose 7 outils MCP sur `<BRAIN_API_URL>/mcp/`.
A utiliser EN PLUS du bootstrap fichiers — pas a la place (CLAUDE.md reste Layer 0).
**Reflexes de session :**
- `brain_boot()` → enrichit le contexte avec les chunks RAG les plus pertinents
- `brain_focus()` → direction active + projets + blockers (live, pas le fichier stale)
- `brain_workflows()` → sprints en cours + etats des steps
- `brain_agents('X')` → charge le contenu d'un agent en contexte
- `brain_decisions(5)` → ADRs recentes
- `brain_search('q')` → RAG semantique sur n'importe quel sujet
- `brain_write('p', c)` → ecriture fichier brain [owner only]
**Quand utiliser :**
- Debut de session longue → `brain_boot()` + `brain_focus()` + `brain_workflows()`
- Avant de charger un agent → `brain_agents('nom-agent')` si contexte insuffisant
- Recherche de contexte precis → `brain_search('sujet')`
- Mise a jour brain en session → `brain_write('fichier.md', contenu)`
> MCP enrichit le contexte — ne remplace pas Layer 0. Les fichiers restent la source de verite.
---
## Agents chauds — detection automatique sur domaine
| Domaine detecte | Agent |
|-----------------|-------|
| VPS, Apache, Docker, SSL, vhost, certbot, deploy | `agents/vps.md` |
| Mail, SMTP, IMAP, Stalwart, DNS, SPF, DKIM | `agents/mail.md` |
| Review code, qualite, PR, validation avant prod | `agents/code-review.md` |
| Securite, faille, JWT, OAuth, OWASP, secrets | `agents/security.md` |
| Securite, faille, JWT, OAuth, OWASP | `agents/security.md` |
| .env, secrets, credentials, token manquant, API key, MYSECRETS | `agents/secrets-guardian.md` |
| Tests, Jest, Vitest, coverage, TDD | `agents/testing.md` |
| Bug, erreur, crash, comportement inattendu | `agents/debug.md` |
| Refacto, dette technique, DDD | `agents/refacto.md` |
@@ -50,8 +94,9 @@ Ne pas demander a l'utilisateur de se redecrire — tout est dans le brain.
| Stack frontend, shadcn, Tailwind, UI libs | `agents/frontend-stack.md` |
| i18n, traductions, cles manquantes | `agents/i18n.md` |
| README, doc API, Swagger | `agents/doc.md` |
| Game design, GDD, mecanique, equilibrage, progression jeu | `agents/game-designer.md` |
Agents 🔵 stables → invocation manuelle uniquement. Index complet : `agents/AGENTS.md`
Agents stables → invocation manuelle uniquement. Index complet : `agents/AGENTS.md`
Invocation explicite : "charge l'agent X" → lire `agents/X.md` immediatement.
Convention /btw : message prefixe `/btw` → agent `aside` — reponse 2-3 lignes, capture todo si actionnable, retour session explicite (`→ on reprend.`)
@@ -65,3 +110,6 @@ Convention /btw : message prefixe `/btw` → agent `aside` — reponse 2-3 ligne
- Ne jamais exposer secrets, tokens, cles privees
- Fait non verifie → `Information manquante`
- Incertitude → `Niveau de confiance: faible/moyen/eleve`
- Secret detecte (code, chat, shell, output outil) ACCIDENTELLEMENT → SESSION SUSPENDUE — afficher l'interruption, ne jamais continuer avant confirmation explicite
- Exception : "session securite active" declaree explicitement → suspension levee pour la session. Les valeurs ne s'affichent JAMAIS dans le chat meme en mode securite. Read tool sur MYSECRETS interdit meme en mode securite — utiliser Bash silencieux uniquement.
- identityShow: on (defaut owner) — agents utilisent leurs marqueurs visuels complets (prefixes, emojis). Consequence de kerneluser: true dans brain-compose.yml.