Ronde de sécurité · attestation par la trace · journal opposable
Un agent dit qu'il a livré. Un autre dit qu'il a vérifié. Personne n'a de trace opposable — jusqu'à l'incident, c'est-à-dire trop tard.
Cerberus est né d'un cas réel : trois agents ont rendu des rapports de vérification fabriqués — « 12 passed », JSON valide, listing propre — alors que le disque disait l'inverse (tests réellement en échec, CLI en crash, rapport de 0 octet). Le besoin est là, net : pas de « c'est fait » sans trace.
Cinq contrôles système : OS, espace disque, services critiques, sockets en écoute, portes d'accès externes. Un port sensible exposé hors boucle locale déclenche une alerte.
Confrontation de la déclaration à la trace disque : existence, taille, empreinte SHA-256, et rejeu de la vérification par Cerberus lui-même. Un indice fort isolé ne conclut jamais : c'est la convergence qui tranche.
Chaque constat est horodaté et inscrit dans un journal append-only à chaîne de hachage. Toute réécriture a posteriori casse la chaîne et devient détectable.
Référentiel de pathologies P01 → P07 : une occurrence isolée est un accident, sa répétition une dérive. La récidive après accalmie est traitée comme un signal.
Qui est en cause : la demande, ou l'agent ? Verdicts paradoxe (opérateur en cause), paralysie (l'agent s'abrite), non prouvé, normal. La demande est testée en premier.
Quand il faut endiguer, Cerberus propose des mesures (gel d'une famille d'actions, révocation de laissez-passer) avec portée estimée — et ne les applique jamais seul.
kill, restart, apt, aucune écriture système : lecture seule stricte.À côté des règles déterministes, un modèle léger local (1,5 milliard de paramètres, ~1 Go) analyse sémantiquement les actions d'un agent. Il est combiné aux règles — le risque retenu est le maximum des deux — jamais substitué : le modèle ajoute, il ne remplace pas.
Entraînement en cours sur des corpus de dangers réels : base d'incidents IA, techniques d'attaque recensées, CVE, et OWASP Top 10 pour LLM et applications agentiques — injection d'invite, détournement d'outils, autonomie excessive, empoisonnement de mémoire, boucles de consommation infinie.
Cinq versions successives du modèle ont été produites et auditées. Le critère de sortie n'est pas encore atteint : il reste des faux positifs à éliminer, et l'élargissement du corpus OWASP est en cours. Cerberus le dit plutôt que de l'annoncer livré.
La règle de la maison est simple : pas de livraison sans démonstration rejouable. Quatre démonstrations tournent sur des cas injectés :
Côté code : 290 tests automatisés verts, quatorze familles de tests dédiées (confinement, cycle de vie, escalade, attestation, collecteurs, paralysie par la règle…).
Cerberus est autonome : bibliothèque standard Python uniquement, aucune dépendance aux autres services. Il suffit d'un agent à surveiller.
./install.sh --dry-run # montre ce qui serait fait, ne modifie rien ./install.sh # installe le lanceur "cerbere"
Il ne touche jamais à la planification système : la fréquence de la ronde reste une décision explicite de l'opérateur.
Portabilité : Linux prouvé. Les backends Windows et macOS sont présents et conçus pour dégrader proprement (UNSUPPORTED) plutôt que de planter — mais n'ont pas encore été exécutés sur ces systèmes.
Cerberus est en développement actif. Le service est fonctionnel et éprouvé en test, mais l'offre publique et les conditions d'accès ne sont pas encore ouvertes — je ne les annonce pas avant qu'elles existent.
Ronde système, journal opposable, décisions d'opérateur, lecture de situation, attestation, confinement proposé, garde-fou hybride.
Élargissement du corpus d'entraînement (OWASP, incidents réels, CVE) et suppression des faux positifs résiduels.
Ronde réelle sur une semaine pour mesurer les faux positifs en conditions de production, et exécution sur Windows / macOS.
Jacques — l'analyste clinique qui lit les traces d'un agent entre les sessions · Cogito-Reflex — la régulation cognitive en session · VRAM Guard — le garde de la mémoire GPU.