Étude de cas · Outillage IA · CLI Python
agent‑factory
Un compilateur d'agents IA bornés : on lui donne une mission en JSON ou YAML, il produit un dossier d'artefacts autonome. Les capacités d'un agent ne peuvent pas dépasser celles déclarées, et chaque agent embarque un budget et un kill-switch.
Le problème
Les agents IA sans garde-fous posent un problème structurel : ils peuvent consommer des ressources illimitées, dépasser leur périmètre d'action, ou être chaînés sans contrôle sur les capacités héritées. Il n'existait pas d'outil simple pour compiler un agent avec des bornes explicites, vérifiables et testables dès sa définition.
Ce que j'ai construit
- Compilation à partir d'une mission — un fichier JSON ou YAML décrit la mission, les outils autorisés, le budget et les capacités ; la factory valide et compile en un dossier d'artefacts autonome (prompt système, config, runner, tests, manifest).
- Capacités bornées par contrat — un agent enfant ne peut pas hériter plus de permissions que son parent. Vérifié à la compilation, pas à l'exécution.
- Budgets et kill-switches — chaque agent reçoit un budget ;
STOP_AGENTouSTOP_FACTORYinterrompt proprement l'exécution. - Agent concepteur — un type
agent_builderrédige des brouillons de missions ; un humain relit chaque brouillon avant compilation. La factory ne se déploie jamais seule. - Codes de sortie explicites —
0OK ·1tests en échec ·2BLOCKED ·3BUDGET_EXHAUSTED ·4KILLED.
Architecture & qualité
86 tests pytest organisés en 6 modules : budgets, CLI, compilateur, kill-switch, sécurité, validateur. Les tests de sécurité vérifient que les capacités ne peuvent pas être escaladées — pas seulement que le code compile. Un LIMITS.md documente explicitement ce qui n'est pas implémenté dans ce MVP, pour éviter de promettre des garanties absentes.
Décisions techniques
- Validation à la compilation, pas à l'exécution — les erreurs de périmètre doivent être détectées avant le premier appel LLM.
- Aucun déploiement automatique — la factory produit des artefacts locaux ; l'envoi réseau est un acte délibéré de l'humain.
- Jamais de suppression — staging puis promotion, historique conservé ; aucune opération destructive dans le cœur.
- LIMITS.md obligatoire — toute fonctionnalité non implémentée est documentée comme limite connue, pas cachée.
Besoin d'un agent IA maîtrisé et borné ?
Architecture, budgets, sécurité — je conçois des systèmes IA qui font ce qu'on leur demande, pas plus.