Anthropic sépare le cerveau et les mains de ses agents IA : la latence TTFT chute de 90 %
Les ingénieurs d'Anthropic ont revu l'infrastructure des agents Claude pour les tâches longues en adoptant l'architecture Managed Agents. Auparavant, la boucle de contrôle (harness), la session et la sandbox d'exécution du code tournaient dans un conteneur unique ; une panne de serveur anéantissait ainsi le processus, tandis que les jetons d'accès risquaient de fuiter via des prompt injections. Dans cette nouvelle approche, le « cerveau » (Claude et le harness) est isolé des « mains » (les environnements d'exécution) et du journal d'événements : • Le temps de génération du premier jeton (TTFT) diminue de 60 % au p50 et de plus de 90 % au p95. • Les sessions sont déportées dans un journal persistant hors de la fenêtre de contexte du LLM. • Les jetons Git et OAuth sont stockés dans un coffre-fort externe et ne sont accessibles que par un proxy.
Traité par IA depuis Anthropic Engineering ; édité par Hamidun News
Les ingénieurs d'Anthropic ont publié une analyse technique de l'architecture Managed Agents, un service conçu pour exécuter des tâches autonomes de longue durée avec les agents Claude. L'équipe a abandonné les conteneurs monolithiques dans lesquels le réseau de neurones, l'environnement d'exécution du code et l'historique de session partageaient le même espace. Ce cloisonnement strict entre le « cerveau », les « mains » et le journal d'état a permis de réduire le délai de génération du premier jeton (TTFT) de 60 % en médiane (p50) et de plus de 90 % au 95e percentile (p95), tout en éliminant des failles de sécurité structurelles.
Finis les serveurs bichonnés au cas par cas
Aux débuts du projet, l'orchestrateur (harness) et l'environnement isolé (sandbox) étaient déployés au sein d'un même conteneur. Si cette approche simplifiait les appels système sur les fichiers, elle créait le problème d'infrastructure classique des « serveurs-animaux de compagnie » (pet servers). Lorsqu'un conteneur se figeait ou plantait à cause d'une panne réseau, la session était irrémédiablement perdue. Les ingénieurs ne pouvaient pas non plus se connecter au processus en toute sécurité pour le déboguer, des données utilisateur résidant directement dans l'environnement d'exécution. De plus, la connexion aux clouds privés virtuels (VPC) des clients imposait un appairage réseau complexe.
Avec Managed Agents, le système a été découpé en trois briques indépendantes : la session (un journal d'événements immuable en mode append-only), le harness (la boucle d'appel à Claude et de routage des outils) et la sandbox (l'environnement de calcul). Le conteneur de sandbox devient une ressource interchangeable. Si l'environnement d'exécution plante, la boucle de contrôle intercepte l'erreur d'appel d'outil, la transmet au modèle et redémarre la sandbox au besoin via un appel déclaratif `provision()`.
Sessions hors contexte et garde-fous de sécurité
Les tâches au long cours finissent inévitablement par saturer la fenêtre de contexte. Les approches traditionnelles, comme la génération de résumés ou la suppression d'anciens blocs, sont irréversibles : le modèle risque d'effacer un élément crucial pour des étapes ultérieures. Dans Managed Agents, l'historique est conservé dans un journal permanent extérieur au contexte du modèle. L'interface `getEvents()` permet à l'agent d'interroger ce journal à n'importe quel décalage (offset), de relire l'historique avant d'agir et de restructurer le contexte pour optimiser la mise en cache des requêtes (prompt caching).
En parallèle, la fuite de secrets par injection de prompt a été neutralisée. Jusqu'alors, un code malveillant pouvait forcer Claude à lire les variables de son propre environnement. Avec la nouvelle architecture, les identifiants n'entrent jamais dans la sandbox :
• La latence TTFT diminue d'environ 60 % au p50 et de plus de 90 % au p95 grâce à l'initialisation paresseuse (lazy initialization) des conteneurs lourds. • L'appel de l'environnement d'exécution est standardisé sous la signature `execute(name, input) -> string`, permettant à l'agent de piloter n'importe quel système externe ou émulateur. • Les clés Git et les jetons OAuth sont isolés dans un coffre externe et sollicités via un proxy MCP sécurisé. • La boucle harness tolérante aux pannes redémarre par la commande `wake(sessionId)` et reprend le travail à partir de la dernière entrée confirmée dans le journal.
Un méta-harness pour les modèles à venir
Développer des interfaces universelles au-dessus de modèles en perpétuelle évolution rappelle l'histoire des systèmes d'exploitation, où l'appel système `read()` fait abstraction du support physique de stockage. Lors des tests sur Claude Sonnet 4.5, les développeurs ont constaté une « anxiété de contexte » : le modèle abrégeait prématurément son travail à mesure qu'il approchait de la limite de jetons, obligeant à forcer des réinitialisations dans le code d'encadrement. Ce comportement ayant disparu avec Claude Opus 4.5, les anciens correctifs sont devenus superflus. Cette architecture modulaire s'affranchit des limites ponctuelles des LLM et permet d'orchestrer à grande échelle des dizaines d'agents et de sandboxes pour toutes les futures générations de modèles.
Delegate Deep Research, Coding & Workflows to an AI Agent
Deploy autonomous multi-step execution with NomadNet Agent (agent.nomadnet.ai) — automated web research, data synthesis, code generation, and complex task orchestration.
L'essentiel de l'IA — une fois par semaine
Sept actus qui ont vraiment compté, choisies à la main. Sans bruit ni communiqués.
C'est fait ! Vérifiez votre boîte mail pour la confirmation.