Le guide de l'opérateur d'agents : superviser ce que l'on ne voit pas
Opérer des agents IA autonomes est une discipline nouvelle : ni ingénierie, ni management, ni opérations, mais un hybride qui exige les trois à la fois. Le rôle d’opérateur émerge quand les agents tournent assez longtemps pour que la supervision devienne le goulot d’étranglement, et non plus la génération de code. Cinq responsabilités définissent ce rôle. Une pile de supervision les met en œuvre. Un cadre d’intervention détermine quand agir.
Personne n’a été formé pour ce métier. Aucun département universitaire ne l’enseigne. Aucune offre d’emploi ne le décrit fidèlement. Un mois, vous écrivez du Python. Le mois suivant, vous gérez un système autonome qui écrit du Python, appelle des APIs, modifie votre système de fichiers et prend des décisions architecturales pendant votre sommeil. La boucle Ralph a fait naître ce rôle dans mon infrastructure : un script shell qui relance Claude Code avec un contexte neuf, lit l’état du système de fichiers et poursuit le travail au fil de sessions nocturnes. Chaque équipe faisant tourner des agents de manière autonome a découvert ce même rôle indépendamment, car les mêmes problèmes apparaissent dès qu’un agent fonctionne au-delà d’une seule session interactive.
Ce rôle n’a pas de nom établi. Certaines équipes l’appellent « AI ops ». D’autres l’intègrent à l’ingénierie de plateforme. Quelques-unes le confient à des engineering managers qui n’ont jamais écrit un hook. Cette ambiguïté est importante, car mal identifier le rôle conduit à mal répartir le travail. Un engineering manager sans compétences systèmes ne peut pas déboguer un état d’agent corrompu. Un ingénieur de plateforme sans jugement produit ne peut pas évaluer si la sortie d’un agent correspond à l’intention de la spécification. Le rôle d’opérateur exige les deux : des décisions de spécification (que doit construire l’agent, quelles contraintes imposer) et une exécution opérationnelle (surveiller les sessions, se rétablir après les échecs, maintenir l’infrastructure).
Cinq responsabilités de l’opérateur
1. Délégation
Déléguer signifie rédiger des spécifications qui contraignent le comportement de l’agent avant le début de l’exécution. La qualité de la délégation détermine la qualité de la production autonome plus que tout autre facteur.
Un fichier CLAUDE.md est un artefact de délégation. Il encode les conventions du projet, les patterns interdits, les comportements requis et les standards de qualité dans un document que l’agent lit au démarrage de la session.1 Un PRD est un artefact de délégation. Il spécifie des critères d’acceptation que l’agent vérifie avant de signaler la complétion. Une description de tâche est un artefact de délégation. La précision de la description de tâche délimite l’espace de décision de l’agent.
Une mauvaise délégation produit la spirale des raccourcis : l’agent saute des étapes parce que la spécification ne les a pas énumérées comme obligatoires. Une bonne délégation rend les étapes requises explicites. Mes PRDs incluent des critères d’acceptation numérotés, et chaque critère correspond à un artefact observable (un chemin de fichier, un résultat de test, un comportement spécifique). L’agent ne peut pas marquer un critère comme complété sans produire l’artefact. Une délégation qui spécifie des résultats observables élimine toute une catégorie de complétions fantômes.
L’art consiste à savoir quoi spécifier et quoi laisser ouvert. La sur-spécification produit des agents fragiles, incapables de s’adapter face à du code inattendu. La sous-spécification produit des agents qui prennent des décisions architecturales que vous n’avez pas autorisées. La frontière évolue avec la confiance : un agent bien testé, doté de hooks solides, mérite une latitude plus large qu’une nouvelle configuration lors de sa première session nocturne.
2. Supervision
Superviser signifie surveiller les sessions actives, examiner les diffs et détecter la dérive avant qu’elle ne s’accumule.
La dérive est le risque central. Un agent démarre aligné avec la spécification, prend une micro-décision raisonnable qui dévie légèrement, puis enchaîne des décisions qui s’appuient sur cette déviation. À la huitième itération, l’agent résout un problème différent de celui que vous avez délégué. Chaque décision individuelle paraissait raisonnable isolément. La trajectoire cumulative a manqué la cible.
Je détecte la dérive par deux mécanismes. Premièrement, les hooks imposent des limites strictes : commandes bloquées, patterns requis, modifications de fichiers interdites. Les hooks interceptent les violations en temps réel, avant que l’agent ne poursuive. Deuxièmement, la revue périodique des logs détecte la dérive douce qu’aucun hook ne peut capter : l’agent choisissant une approche inutilement complexe, construisant une fonctionnalité non demandée par la spécification, ou optimisant un chemin de code qui n’était pas le goulot d’étranglement. La dérive douce exige un jugement humain, car aucune vérification automatisée ne peut déterminer si la trajectoire de l’agent correspond à l’intention de l’opérateur.
La supervision passe difficilement à l’échelle avec le nombre d’agents. Un agent produisant une session par nuit se revoit avec le café du matin. Cinq agents produisant huit itérations chacun génèrent quarante fenêtres de contexte de travail. La priorisation devient obligatoire : examiner les échecs d’abord, puis les sessions ayant touché des chemins critiques, enfin les complétions propres sur les tâches à faible risque.
3. Intervention
Intervenir signifie savoir quand arrêter, rediriger ou relancer un agent en cours de tâche.
Quatre schémas exigent une intervention :
L’agent est bloqué dans une boucle. La même erreur apparaît sur des itérations consécutives. L’agent tente le même correctif avec des variations mineures. Chaque itération consomme une fenêtre de contexte entière sans produire de progrès. Intervention : arrêter la session, diagnostiquer la cause racine manuellement, mettre à jour le document de passation avec le diagnostic, relancer.
L’agent a produit une sortie incorrecte qui passe les tests. Le code compile, les tests sont verts, mais le comportement ne correspond pas à l’intention de la spécification. La porte de preuve détecte certains cas, mais un agent peut produire une justification plausible pour un comportement erroné. Intervention : écrire un test qui échoue et qui capture le comportement correct, puis relancer.
L’agent est sur le point de toucher la production ou des systèmes externes. Toute opération aux conséquences irréversibles (déployer en production, envoyer des e-mails, modifier une base de données, appeler une API payante) nécessite une porte de validation. Mes hooks bloquent les commandes bash destructrices et les appels réseau externes. L’opérateur décide quelles portes ouvrir et quand.2
L’agent progresse mais dans la mauvaise direction. Le travail est compétent mais désaligné. Intervention : arrêter, clarifier la spécification dans le document de passation, relancer. Ne tentez pas de rediriger en cours de session par la conversation. L’agent a déjà construit des modèles mentaux autour de la mauvaise interprétation, et une correction de trajectoire dans la même fenêtre de contexte produit une sortie incohérente.
Le schéma où vous n’intervenez pas : l’agent progresse lentement vers l’objectif correct. Laissez-le tourner.
4. Rétablissement
Le rétablissement consiste à gérer les échecs après qu’ils se sont produits : état corrompu, mauvaises branches, builds cassés et perte de données.
Les échecs d’agents laissent des artefacts. Une session crashée peut avoir écrit des fichiers partiels, commité sur la mauvaise branche, laissé des fichiers temporaires dans le répertoire de travail, ou modifié une configuration que les sessions suivantes héritent. Le rétablissement exige d’annuler ces artefacts avant de relancer.
Mon protocole de rétablissement : inventorier les dégâts (git status, git log, git diff), préserver le journal de session comme données diagnostiques, revenir au dernier commit vérifié comme correct, mettre à jour le document de passation avec ce qui a échoué et pourquoi, puis relancer avec des contraintes corrigées. Ne tentez pas de récupérer un travail partiel d’une session échouée, sauf si ce travail partiel est clairement correct et isolable. La passation transporte le contexte d’échec entre les sessions pour que l’agent suivant ne répète pas les mêmes erreurs.
Le scénario de rétablissement le plus dangereux est un échec qui ressemble à un succès. L’agent rapporte la complétion, les tests passent, le build est vert, mais l’implémentation est subtilement incorrecte. Le mode d’échec du mirage de confiance produit exactement cette situation. Le rétablissement exige de lire le code, pas seulement le rapport de complétion.
5. Gouvernance
La gouvernance consiste à définir les politiques, budgets, permissions et exigences d’audit qui s’appliquent à toutes les sessions d’agents.
Les politiques définissent ce que les agents peuvent et ne peuvent pas faire. Ma couche de gouvernance comprend : un budget de sessions (nombre maximal d’itérations par exécution nocturne), un plafond de coût (dépense maximale en API par session), une liste blanche de commandes bash autorisées, une liste noire de patterns de fichiers interdits et un ensemble de critères de complétion requis.3 Chaque politique remonte à un échec spécifique. Le budget de sessions existe parce qu’une session précoce a tourné 47 itérations sans converger. Le plafond de coût existe parce qu’une session de débogage a brûlé 200 $ en appels API à poursuivre une fausse piste. Chaque politique est une cicatrice d’une leçon apprise de la manière coûteuse.
Les permissions suivent le principe du moindre privilège. Un agent qui génère du contenu de blog n’a pas besoin d’accès en écriture au système de fichiers en dehors du répertoire de contenu. Un agent qui exécute des tests n’a pas besoin d’accès réseau. Mes hooks imposent ces frontières au niveau de l’appel d’outil, bloquant les opérations qui dépassent le périmètre de permissions de la session.2
Les exigences d’audit complètent la couche de gouvernance. Chaque session produit un journal structuré : commandes exécutées, fichiers modifiés, tests lancés, critères de complétion évalués. La taxonomie des sept modes d’échec a émergé de l’examen de six mois de ces journaux et de la catégorisation de chaque échec ayant nécessité une intervention humaine.
La pile de supervision
Cinq composants d’infrastructure mettent en œuvre les cinq responsabilités.
Les hooks implémentent la supervision automatisée. Les événements du cycle de vie de Claude Code (PreToolUse, PostToolUse, Notification) déclenchent des scripts shell qui appliquent les politiques en temps réel.2 Un hook qui bloque rm -rf est une politique de gouvernance encodée comme vérification PreToolUse. Un hook qui exige l’exécution des tests avant la complétion est une contrainte de délégation encodée comme vérification PostToolUse. Les 95 hooks de mon système encodent 95 décisions sur ce que les agents peuvent et ne peuvent pas faire, chacun remontant à un échec spécifique que le hook empêche désormais.
La porte de preuve implémente la vérification structurée. Six critères (suit les patterns, solution la plus simple, cas limites traités, tests passent, pas de régressions, résout le problème) doivent produire des artefacts spécifiques avant que l’agent ne marque le travail comme terminé.4 La porte traduit la supervision de « l’agent a-t-il fait du bon travail ? » (subjectif, invérifiable) à « l’agent a-t-il produit des preuves pour les six critères ? » (objectif, auditable). Chaque mot évasif dans un rapport de complétion déclenche une re-vérification.
La boucle qualité implémente le raffinement itératif. Sept étapes (implémenter, revoir, évaluer, affiner, prendre du recul, répéter, rapporter) forcent l’agent à effectuer plusieurs passes sur son propre travail.5 La boucle compense une limitation structurelle de la génération en une seule passe : les modèles produisent des premiers jets plausibles qui contiennent des erreurs visibles seulement à la relecture. La boucle qualité impose cette relecture.
Les journaux de session implémentent l’audit a posteriori. Le système capture chaque appel d’outil, modification de fichier et rapport de complétion sous forme structurée. Six mois de journaux de session ont produit la taxonomie des échecs. Sans ces journaux, chaque échec serait resté une anecdote isolée.
Les portes de coût implémentent le contrôle budgétaire. Les budgets de sessions plafonnent le nombre d’itérations. Les plafonds de coût API plafonnent la dépense en tokens. Un agent qui n’a pas convergé dans les limites du budget de sessions est probablement bloqué, et davantage d’itérations n’y changeront rien. Le budget force l’opérateur à diagnostiquer et intervenir plutôt qu’à espérer que la prochaine itération réglera le problème.
Quand intervenir vs. quand laisser tourner
La décision d’intervention est le jugement le plus déterminant de l’opérateur. Intervenir trop tôt gaspille le travail de l’agent. Intervenir trop tard permet à la dérive de s’accumuler. Un cadre aide à trancher.
| Signal | Action | Raisonnement |
|---|---|---|
| Même erreur sur 3+ itérations | Intervenir | L’agent manque d’information pour résoudre l’erreur. Davantage d’itérations n’y changeront rien. |
| Progrès lent mais mesurable vers l’objectif correct | Laisser tourner | La vitesse n’est pas la variable. La correction l’est. |
| La sortie passe les tests mais ne correspond pas à l’intention de la spécification | Intervenir | Le cas le plus difficile. Écrire un test qui capture le comportement correct, puis relancer. |
| L’agent est sur le point d’appeler une API externe ou de modifier la production | Bloquer | Les opérations irréversibles exigent une approbation explicite quel que soit le niveau de confiance. |
| L’agent demande une permission dont il ne devrait pas avoir besoin | Intervenir | Des demandes de permission hors du périmètre attendu indiquent que l’agent a dérivé de sa tâche. |
| Le rapport de complétion utilise un langage évasif | Re-vérifier | « Devrait fonctionner » et « je pense que » ne sont pas des preuves. Exigez des artefacts. |
| L’agent construit une infrastructure absente de la spécification | Évaluer | Parfois une préparation nécessaire. Souvent de la vision tunnel. Vérifier si l’infrastructure sert l’objectif ou le retarde. |
Le méta-principe : intervenir sur l’asymétrie d’information, pas sur la vitesse. Quand vous savez quelque chose que l’agent ignore (le bon chemin de code, l’exigence réelle, le mode d’échec d’une session précédente), l’intervention transfère cette connaissance. Quand l’agent sait tout ce que vous savez et travaille simplement à résoudre le problème, laissez-le travailler.
La checklist de l’opérateur
Avant de démarrer
- [ ] Spécification revue : les critères d’acceptation sont spécifiques, observables et complets
- [ ] Hooks actifs : les hooks de politique sont activés et testés pour le type de tâche
- [ ] Budget fixé : limite de sessions et plafond de coût sont configurés
- [ ] Sandbox confirmé : l’agent ne peut pas atteindre la production, envoyer de requêtes externes ni modifier de fichiers hors périmètre
- [ ] Passation à jour : si le travail poursuit un précédent, le document de passation reflète les dernières corrections
- [ ] Branche propre : le répertoire de travail est sur la bonne branche sans modifications non commitées
Pendant
- [ ] Vérifier les logs à intervalles définis (toutes les 2-3 itérations pour les exécutions nocturnes)
- [ ] Vérifier que la trajectoire correspond à l’intention de la spécification, pas seulement à sa lettre
- [ ] Surveiller l’utilisation des ressources : dépense en tokens, nombre d’itérations, changements du système de fichiers
- [ ] Guetter l’escalade de permissions : demandes d’accès que la tâche ne devrait pas nécessiter
- [ ] Noter toute dérive douce pour la revue post-session
Après
- [ ] Examiner toutes les modifications de fichiers, pas seulement le rapport de complétion
- [ ] Lancer la suite de tests complète de manière indépendante (ne pas se fier aux résultats de tests rapportés par l’agent)
- [ ] Vérifier les régressions dans le code adjacent que l’agent n’a pas explicitement modifié
- [ ] Vérifier la porte de preuve : chaque critère a un artefact spécifique, pas une assurance générale
- [ ] Mettre à jour le document de passation avec les résultats de session et les corrections éventuelles
- [ ] Journaliser la session : modes d’échec rencontrés, hooks déclenchés, décisions d’intervention prises
- [ ] Mettre à jour la gouvernance : si un nouveau schéma d’échec est apparu, écrire un hook ou une politique pour prévenir sa récurrence
L’opérateur en tant qu’artisan
Le rôle d’opérateur d’agents se situe à l’intersection des compétences d’ingénierie et du jugement produit. Écrire des hooks exige des connaissances systèmes. Écrire des spécifications exige une compréhension du produit. Examiner la sortie d’un agent exige les deux : la capacité d’évaluer si le code est correct et si un code correct résout le bon problème.
Le chat est la mauvaise interface pour le volet opérationnel du rôle. Faire défiler des transcriptions de conversations pour superviser un travail autonome ne passe pas à l’échelle au-delà d’un seul agent exécutant une seule session. La pile de supervision décrite ci-dessus (hooks, portes de preuve, boucles qualité, journaux de session, portes de coût) compense cette lacune d’interface en encodant la supervision dans l’infrastructure. L’infrastructure ne remplace pas l’opérateur. L’infrastructure démultiplie la portée de l’opérateur.
Le goût est un système technique décrit le volet jugement. Savoir quoi déléguer, quoi vérifier et quoi rejeter exige une reconnaissance de patterns construite par l’expérience. Chaque session enseigne quelque chose à l’opérateur sur le comportement des agents. La compétence de l’opérateur se compose par la pratique délibérée, la réflexion et une infrastructure qui encode les leçons de manière permanente.
L’usine sombre représente le point d’arrivée théorique, le niveau 5, où aucun humain ne lit le code. La pratique actuelle se situe au niveau 3 ou 4 pour la plupart des équipes : l’agent fait le travail, l’opérateur supervise et intervient. L’écart entre le niveau 4 et le niveau 5 est la couche de vérification. L’écart entre le niveau 2 et le niveau 4 est l’opérateur.
Chaque équipe faisant tourner des agents autonomes développera des opérateurs. La question est de savoir si elles développeront ce rôle délibérément (avec des responsabilités définies, un support d’infrastructure et une formation explicite) ou accidentellement, en assignant le travail à la personne qui se trouve éveillée quand la session nocturne échoue. L’artisanat se construit à partir de là.
-
Anthropic, “Claude Code Configuration,” published February 2026. https://docs.anthropic.com/en/docs/claude-code/settings ↩
-
Anthropic, “Claude Code Hooks,” published February 2026. https://docs.anthropic.com/en/docs/claude-code/hooks ↩↩↩
-
Blake Crosley, “The Ralph Loop: How I Run Autonomous AI Agents Overnight,” published February 2026. https://blakecrosley.com/blog/ralph-agent-architecture ↩
-
Blake Crosley, “The Evidence Gate: Proof Over Plausibility in AI Output,” published March 2026. https://blakecrosley.com/blog/the-evidence-gate ↩
-
Blake Crosley, “What Actually Breaks When You Run AI Agents Unsupervised,” published February 2026. https://blakecrosley.com/blog/what-actually-breaks-unsupervised ↩