Premier tempsFirst movement
Six schémas.Six diagrams.
Même grammaire partout : en sarcelle, ce qui vient du Core ; en violet, ce qui est à vous ; en rouille, les points où une clé ou un humain tranche. Plein : distribution et flux ; tirets : l'apprentissage qui remonte. Aucun trait n'est un lien de confiance. One grammar throughout: teal for what comes from the Core; violet for what is yours; rust for the points where a key or a human decides. Solid: distribution and flows; dashed: learning on its way up. No line is a trust relationship.
Quatre étages, une topologie.Four levels, one topology.
Le motif éprouvé source → satellite, généralisé d'un étage. Le Core est l'unique amont — anglais, semver, publiable. Chaque Node est l'instance d'une entreprise : il vendorise le Core à une version épinglée et y ajoute sa couche de domaine. Aucune copie ne vit en parallèle : chaque swarm en production consomme le Core. Les flux montants — leçons, backlog — passent toujours par des canaux dédiés, jamais par des commits croisés : chaque dépôt n'a qu'un seul rédacteur. The proven source → satellite pattern, generalized one storey up. The Core is the single upstream — English, semver, publishable. Each Node is one business's instance: it vendors the Core at a pinned version and adds its own domain layer. No copy lives alongside it: every swarm in production consumes the Core. Upstream flows — lessons, backlog — always travel dedicated channels, never cross-commits: every repository stays single-writer.
Core · Nodes · Agents · Network — le Network est la somme de tous ces flux.Core · Nodes · Agents · Network — the Network is the sum of all these flows.
Une source, deux runtimes.One source, two runtimes.
Les fiches d'agents (*.agent.md) et les blocs du Core sont du markdown et du YAML lisibles par n'importe quel runtime — aucun invariant ne vit uniquement dans un mécanisme propriétaire. compose remplit les slots et résout les tiers de modèles vers des identifiants épinglés. L'adaptateur claude-code compile un plugin par Node ; l'adaptateur anthropic-runtime est la boucle d'API portable : un futur fournisseur est l'extension d'un seul module, pas une refonte. Chaque mécanisme couplé a son jumeau descriptif — et un check le prouve.
Agent cards (*.agent.md) and the Core blocks are markdown and YAML any runtime can read — no invariant lives only inside a proprietary mechanism. compose fills the slots and resolves model tiers to pinned identifiers. The claude-code adapter compiles one plugin per Node; the anthropic-runtime adapter is the portable API loop: a future provider is an extension of one module, not a rewrite. Every coupled mechanism has a descriptive twin — and a check proves it.
Axe 3 — la portabilité est une contrainte de design dès la v1 ; le multi-fournisseur viendra après la discipline d'évals cross-modèle, jamais avant.Axis 3 — portability is a design constraint from v1; multi-provider comes after the cross-model evals discipline, never before.
L'anatomie d'un Node — ce qui est à vous, ce qui est au Core.Anatomy of a Node — what is yours, what is the Core's.
Six couches, dont le lieu de vie est fixé par construction. Les trois premières viennent du Core, vendorisées en lecture seule à une version épinglée. Les deux suivantes sont à vous : votre domaine, vos liaisons capacité → outil, votre politique d'accès — dans votre propre dépôt. La dernière ne va jamais dans git : secrets, credentials par rôle, connecteurs — par poste. Le Core ne nomme jamais un outil concret ; le Node lie les capacités abstraites aux siens. Six layers, each with a home fixed by construction. The first three come from the Core, vendored read-only at a pinned version. The next two are yours: your domain, your capability → tool bindings, your access policy — in your own repository. The last one never enters git: secrets, role-scoped credentials, connectors — per workstation. The Core never names a concrete tool; the Node binds abstract capabilities to its own.
Possession réelle — le Node est votre dépôt ; le Core y est vendorisé, épinglé, remplaçable. Rien de ce qui vous appartient ne dépend d'un poste.Real ownership — the Node is your repository; the Core sits in it vendored, pinned, replaceable. Nothing you own depends on a workstation.
La chaîne de garde-fous — des verrous, pas des habitudes.The guardrail chain — locks, not habits.
Le déterminisme est imposé par la machinerie. Au commit, un changement du Core sans son entrée de journal et son CHANGELOG est bloqué ; un message de commit sans le pourquoi, refusé. Au push, une chaîne qui ressemble à un secret bloque ; doctor rend son verdict. À la release, sanitisation, version, puis arrêt pour revue humaine. À l'exécution, les hooks encadrent chaque session, là où le runtime les émet — dont memory_write, qui juge le fichier de mémoire tel qu'il serait après l'écriture : sans étiquette, hors plafond, avec un secret ou un renseignement personnel non déclaré, il n'est pas écrit — et la seule frontière dure est la clé : une politique d'accès appliquée par des credentials à portée de rôle, que ni la prose ni le modèle ne peuvent outrepasser. Chaque garde-fou est censé battre ; s'il cesse, doctor le dit — le silence n'est jamais un feu vert.
Determinism is enforced by machinery. At commit, a Core change without its journal entry and CHANGELOG is blocked; a commit message without the why, refused. At push, a secret-shaped string blocks; doctor gives its verdict. At release, sanitization, version, then a stop for human review. At runtime, hooks frame every session, wherever the runtime emits them — memory_write among them, which judges the memory file as it would be after the write: unlabeled, over its ceiling, carrying a credential or undeclared personal information, it is not written — and the only hard boundary is the key: an access policy enforced by role-scoped credentials that neither prose nor the model can overstep. Every guardrail is meant to beat; if it stops, doctor says so — silence is never a green light.
La règle — une frontière n'est réelle que là où elle est mécanique ; la prose et les hooks consultatifs ne sont jamais une frontière de sécurité, seule la clé l'est.The rule — a boundary is only real where it is mechanical; prose and advisory hooks are never a security frontier, only the key is.
La boucle anti-dérive — la dérive se prouve, elle ne se présume pas.The anti-drift loop — drift is proven, never presumed.
Aucun Node ne s'écarte du Core en silence. Une leçon vérifiée dans un Node remonte par la moisson — la porte 4 d'un chantier — et atterrit dans une file unique avec sa décision : réconcilier, différer, assumer. Réconciliée, elle devient une nouvelle version du Core. Chaque Node la vendorise à son rythme (git archive, version épinglée), puis dist-diff compile le plugin avant et après : équivalent, ou le diff est lu et accepté. doctor tient la porte au push. Pendant l'extraction, une carte d'empreintes mesurait la dérive d'une copie qui vivait à côté du Core ; cette coexistence a pris fin : il ne reste plus de copie à surveiller, seulement des versions à prouver.
No Node drifts from the Core in silence. A lesson verified in a Node rises through the harvest — a worksite's gate 4 — and lands in a single queue with its decision: reconcile, defer, accept. Once reconciled, it becomes a new Core version. Each Node vendors it at its own pace (git archive, pinned version), then dist-diff compiles the plugin before and after: equivalent, or the diff is read and accepted. doctor holds the gate at push. During extraction, a fingerprint map measured the drift of a copy living alongside the Core; that coexistence is over: there is no copy left to watch, only versions to prove.
Leçon ≠ instance — ce qui monte au Core est la règle transférable ; l'histoire et le confidentiel restent dans le Node.Lesson ≠ instance — what rises to the Core is the transferable rule; the story and the confidential stay in the Node.
La fédération — la gouvernance descend, l'apprentissage monte.Federation — governance flows down, learning flows up.
Le Network est bidirectionnel et fédératif. Vers le bas : politique, garde-fous, versions épinglées — la dérive par poste devient impossible, pas improbable. Vers le haut : la leçon d'un agent, une fois vérifiée, devient la mémoire de toute l'organisation — la leçon transférable séparée de l'instance confidentielle, qui reste dans le Node — mécaniquement : chaque mémoire porte sa classe, sa nature et sa portée, et un renseignement personnel ne dépasse jamais le Node. Une seule intelligence qui cumule et se gouverne ; sa mémoire fédérée — le cerveau commun — est la surface naturelle du service géré. La descente est mécanique dès aujourd'hui (version épinglée, tirage en sens unique) ; la mémoire fédérée opérée et curée, elle, est la Phase 4. The Network is bidirectional and federative. Downward: policy, guardrails, pinned versions — per-workstation drift becomes impossible, not merely unlikely. Upward: one agent's lesson, once verified, becomes the whole organization's memory — the transferable lesson separated from the confidential instance, which stays in the Node — mechanically: every memory carries its class, its kind and its reach, and personal information never rises above the Node. One intelligence that compounds and governs itself; its federated memory — the common brain — is the managed service's natural surface. The downward path is mechanical today (pinned version, one-way pull); the operated, curated federated memory is Phase 4.
Le moat — ce que les plateformes livrent par siège, la fédération le livre à l'échelle de l'entreprise, sous gouvernance.The moat — what platforms deliver per seat, federation delivers at the scale of the company, under governance.
Second tempsSecond movement
Ce qui bloque, et ce qui est vérifié.What blocks, and what is verified.
Pour la diligence : ce qu'un acquéreur, un investisseur ou un CTO peut exiger de voir tourner — pas de lire. doctor répond à une seule question : est-ce que ça compile et tourne vraiment, et tout ce qui est déclaré est-il réel ?
For diligence: what an acquirer, an investor or a CTO can demand to see run — not read. doctor answers one question: would this actually compile and run, and is everything declared real?
TransférableTransferable
La mécanique se lit sans le fondateur.The mechanics read without the founder.
Runbooks rejouables, journaux de chantier committés, incidents devenus verrous, documentation d'architecture générée depuis le dépôt. Le risque homme-clé est traité par des artefacts, pas par des promesses.Replayable runbooks, committed worksite journals, incidents turned into gates, architecture documentation generated from the repository. Key-person risk is addressed with artifacts, not promises.
PossédéOwned
Le Node est votre dépôt.The Node is your repository.
Le Core y est vendorisé à une version épinglée, en lecture seule, remplaçable ; vos données et votre domaine ne quittent pas votre dépôt. Le service géré se pose par-dessus une couche exportable — il l'opère et la cure, sans jamais la retenir.The Core sits in it vendored at a pinned version, read-only, replaceable; your data and your domain never leave your repository. The managed service sits on top of an exportable layer — it operates and curates it, never holds it.
ÉprouvéProven
Extrait de la production, et la production y est revenue.Extracted from production — and production moved onto it.
Le noyau est extrait de sept mois de production, pas réécrit de zéro — ce qui y naît en amont est marqué comme tel. L'extraction a été auditée artefact par artefact ; une seconde swarm, bootstrappée du Core en moins d'une heure, a prouvé le noyau réutilisable ; puis la swarm d'origine a migré sur le Core, lot par lot, chaque lot prouvé par dist-diff.The kernel is extracted from seven months of production, not rewritten from scratch — what is born upstream is marked as such. The extraction was audited artifact by artifact; a second swarm, bootstrapped from the Core in under an hour, proved the kernel reusable; then the original swarm itself migrated onto the Core, batch by batch, each batch proven by dist-diff.
doctor · 25 vérifications25 checks
Ce que doctor vérifie.What doctor verifies.
parsechaque fiche d'agent se lit — front-matter et corps validesevery agent card parses — valid front-matter and bodyslotschaque slot référencé est définievery referenced slot is definedhandoffschaque passage de relais pointe vers un agent réelevery handoff points at a real agentbindingschaque capacité déclarée a une liaison vivanteevery declared capability has a live bindingtwinsles deux runtimes voient le même rosterboth runtimes see the same rostermodelschaque tier de modèle résout vers un alias et un id épinglésevery model tier resolves to a pinned alias and idaccessla politique RBAC est cohérente — aucun principal au-dessus de son rôlethe RBAC policy is coherent — no principal above its rolehooksle verrou de commit est installé — core.hooksPath pointe sur les hooks du dépôtthe commit gate is installed — core.hooksPath points at the repository's hookslivenesschaque garde-fou a battu récemment — le silence se lit « on ne sait pas »each guardrail has beaten recently — silence reads "we don't know"versionCORE_VERSION est un semver valide et le plugin bâti y correspondCORE_VERSION is valid semver and the built plugin matches itwiringintention (workflow.json) et câblage (settings.json) déclarent les mêmes événementsintent (workflow.json) and wiring (settings.json) declare the same eventschangelogchaque puce du CHANGELOG tient sa propre ligneevery CHANGELOG bullet holds its own linedocsles docs générés correspondent à une régénération fraîche et couvrent chaque composantgenerated docs match a fresh regeneration and cover every componenttestsla suite de tests tourne et passe — doctor n'est jamais vert sans l'avoir vue passerthe test suite runs and passes — doctor is never green without having seen it passclassificationchaque fichier de mémoire est un compartiment étiqueté dans ses plafonds — ni secret, ni renseignement personnel non déclaré ; la mémoire du Core est publiqueevery memory file is a labeled compartment within its ceilings — no credential, no undeclared personal information; Core memory is publictelemetryopt-in par Node ; si activée : point de terminaison https réel, jeton hors du dépôt, envoi récent — un Node silencieux est inconnu, jamais sain ; ce qui part : des états et des étiquettes, jamais une ligne de mémoireopt-in per Node; when on: a real https endpoint, the token outside the repository, a recent send — a silent Node is unknown, never healthy; what leaves: states and labels, never a memory lineschemachaque clé d'instance.yaml est lue par le Core — une clé mal tapée est nommée, pas ignoréeevery instance.yaml key is one the Core reads — a mistyped key is named, not ignoredruntime_slotsle préambule et les instructions du runtime portable se composent sans slot orphelinthe portable runtime's preamble and instructions compose with no orphan slotnode_hooksles hooks propres au Node sont déclarés et exécutablesthe Node's own hooks are declared and runnablenode_checksles vérifications propres au Node sont déclarées, exécutables — et elles passentthe Node's own checks are declared, runnable — and they passplugin_closurechaque plugin de siège est fermé : aucun agent n'y délègue hors de son pluginevery seat plugin is closed: no agent delegates outside its pluginmarketplacela version publiée est celle du Node, et le jeton de publication n'expire pas bientôtthe published version is the Node's, and the publish token is not about to expireinvariant_refschaque renvoi « §N » pointe sur la règle qu'il prétend citerevery « §N » reference points at the rule it claimsusageopt-in ; si activée : un point de terminaison https réel, une clé par plugin hors du dépôt, le jour du Node (fuseau déclaré)opt-in; when on: a real https endpoint, one key per plugin outside the repository, the Node's day (declared zone)tool_metricsopt-in ; si activée : compteurs par outil MCP — jamais un argument ni un résultat —, une clé vnbm_ par Node hors du dépôt ; un siège nommé dans les compteurs exige l'avis Loi 25opt-in; when on: counters per MCP tool — never an argument nor a result —, one vnbm_ key per Node outside the repository; a seat named in the counters requires the Loi 25 noticeLes verrousThe locks
Ce qui bloque — et ce qui avise.What blocks — and what advises.
État du chantier. Noyau v0.2 extrait et audité · deux runtimes sur une source · 16 vérifications · documentation générée. Les contrats de capacités et les packs de rôles se remplissent au premier Node externe — rien n'entre en stock « au cas où ». La mémoire fédérée opérée — le cerveau commun — est la Phase 4. Le multi-fournisseur suit la discipline d'évals cross-modèle, pas l'inverse. Where the build stands. Kernel v0.2 extracted and audited · two runtimes on one source · 16 checks · generated documentation. Capability contracts and role packs are filled by the first external Node — nothing is stocked "just in case". The operated federated memory — the common brain — is Phase 4. Multi-provider follows the cross-model evals discipline, not the other way round.
En un motIn a word
Une habitude se saute sous pression ; un verrou, non. Ce qui bloque ici bloque mécaniquement — et ce qui avise ne se tait jamais. A habit is skipped under pressure; a lock is not. What blocks here blocks mechanically — and what advises never goes quiet.
Vérifiable, pas seulement lisible.Verifiable, not merely readable.