Claude Code propose désormais trois commandes d'ingénierie de boucle — /loop, /goal et /schedule — qui permettent à un agent de codage de piloter son propre cycle de prompts sans qu'un humain ait à taper chaque étape. Cette fonctionnalité promet aux développeurs un moyen d'automatiser les tâches de codage répétitives, de maîtriser la consommation de tokens et d'éviter le rythme « taper-prompt-attendre-taper-prompt » qui a défini le développement assisté par IA jusqu'à présent.
Pourquoi ces nouvelles commandes sont importantes
La plupart des flux de travail de codage par IA reposent encore sur des allers-retours manuels : un développeur écrit une requête, le modèle renvoie du code, le développeur le lit, décide de la question suivante et recommence. Ce schéma est lent, coûteux et sujet aux erreurs lorsqu'une même petite tâche — lancer un build, corriger un avertissement de lint, itérer sur un échec de test — nécessite des dizaines de tours.
Les trois modes de boucle
- /loop – Un cycle léger et autonome. La même instance de Claude exécute chaque tour et vérifie une condition simple, telle que « le build est-il réussi ? ». Cela fonctionne mieux lorsque l'étape de vérification est triviale et que le risque d'un signal « terminé » erroné est faible.
- /goal – Un cycle de haute précision. À chaque tour, un modèle secondaire évalue la condition de complétion, ajoutant une couche supplémentaire de contrôle. Utilisez-le lorsque l'achèvement prématuré serait coûteux — par exemple, pour le déploiement d'un service critique pour la sécurité.
- /schedule – Une routine hébergée dans le cloud sur l'infrastructure d'Anthropic. La boucle continue même si l'ordinateur du développeur est éteint.
Les trois partagent une architecture commune : une compétence (les instructions qui disent à l'agent quoi faire), un vérificateur (le contrôle qui prouve que le travail est réellement terminé), des garde-fous (limites sur les outils que l'agent peut invoquer) et un état (une mémoire légère des actions précédentes). Si vous omettez l'un de ces éléments, la boucle devient une auto-validation infinie qui ne fait qu'accumuler la consommation de tokens.
Construire une boucle sûre et maîtrisée en termes de coûts
- Définir la compétence – Écrivez un prompt clair et déterministe qui indique à l'agent l'opération exacte (par exemple, « lance
npm testet capture la sortie »). - Ajouter un vérificateur – Couplez la compétence avec un test concret que l'agent ne peut pas simuler, comme l'analyse du code de sortie réel du test runner ou la vérification de la somme de contrôle (checksum) d'un artefact généré.
- Définir des garde-fous – Limitez l'agent à une liste blanche de commandes ou d'API. Cela l'empêche d'ouvrir un socket réseau alors que la tâche ne nécessite que des entrées/sorties de fichiers (file I/O).
- Persister l'état – Stockez un petit bloc JSON ou une entrée de base de données qui enregistre ce que l'agent a déjà fait. Le tour suivant lit cet état et évite de répéter le travail.
Trois limites de sécurité dont chaque boucle a besoin
- Arrêt forcé – Imposez un nombre maximum de tours ou un budget strict de tokens. Si la boucle atteint la limite, elle s'interrompt et signale « limite de tours atteinte ».
- Condition d'arrêt réelle – Utilisez une métrique de vérification que le modèle ne peut pas fabriquer, telle qu'une suite de tests réussie, un artefact de build non vide ou un checksum correspondant à une valeur connue et valide.
- Plafond de dépenses – Connectez la boucle à une couche de surveillance qui surveille la consommation de tokens en temps réel et interrompt l'exécution dès qu'un plafond de dépenses prédéfini est franchi.
L'essentiel à retenir
Les commandes /loop, /goal et /schedule de Claude Code offrent aux développeurs un moyen pratique d'automatiser les cycles de codage répétitifs tout en gardant une consommation de tokens transparente. La clé d'une boucle fiable réside dans un vérificateur solide, des garde-fous stricts et des limites fermes sur le temps d'exécution et le coût. Construisez d'abord ces protections, puis laissez l'agent s'occuper des tâches routinières — afin que vous puissiez consacrer votre temps aux problèmes qui nécessitent encore un esprit humain.
