Comment les principes exposés dans les articles précédents sont-ils mis en œuvre dans ForgentFrameworkVoyons maintenant comment les principes de
cet article se manifestent ici.
Plan-and-ExecuteLa planification existe immédiatement à deux niveaux.
D’abord, le bootstrap-orchestrator construit le plan d’installation ou de mise à jour du framework.
Puis le project-orchestrator construit le plan pour la tâche applicative.
Ici, le plan est une partie obligatoire du processus. Le système explique d’abord ce qu’il va faire, puis passe seulement ensuite à l’exécution.
ReActIci, ReAct ressemble à un cycle d’ingénierie normal :
regarder -> formuler une hypothèse -> faire une action -> vérifier le résultat -> décider l’étape suivantePar exemple, à l’étape bootstrap, l’agent étudie d’abord la structure du workspace, puis fait l’inventory, montre ensuite le dry-run, applique les changements, puis lance la review.
C’est la même chose dans le project work : l’agent ne doit pas immédiatement modifier massivement les fichiers. Il doit d’abord comprendre le contexte, nommer une hypothèse, faire une action ciblée et vérifier le résultat.
Critic isolationDans ForgentFramework, le critic existe non seulement pour un scénario, mais pour chaque grand type d’agent.
Il y a un critic pour les opérations bootstrap, un critic pour le context fill, un critic pour les project executors et des rôles critic séparés pour différentes tâches de domaine. Par exemple, les changements DevOps doivent être vérifiés non pas par le même agent qui les a faits, mais par le critic associé.
L’idée est simple : l’executor fait le travail, le critic vérifie le résultat séparément.
L’isolation est obtenue par les règles de formulation de la tâche du critic. Il faut transmettre au critic non pas la logique interne de l’executor ni tout l’historique de son raisonnement, mais des données concrètes à vérifier :
- tâche initiale ;
- critères d’acceptation ;
- fichiers modifiés ou diff ;
- résultat du travail de l’executor ;
- commandes de vérification et leur sortie, si elles existent.
Avec une telle formulation, le critic ne continue pas à penser comme l’executor et ne défend pas sa solution. Il regarde le résultat de l’extérieur : est-il conforme à la tâche, les règles du framework ont-elles été respectées, manque-t-il des vérifications, y a-t-il des risques ou des blockers ?
Autrement dit, critic isolation dans ForgentFramework est réalisée avant tout au niveau des instructions : le critic reçoit un rôle séparé, une tâche séparée et un format de vérification séparé. Grâce à cela, la review devient une phase autonome du processus, et non une autoévaluation de l’executor.
Rubric et critique formelleLe critic ne doit pas simplement écrire « j’aime bien » ou « ça a l’air mauvais ».
Une review a besoin d’une rubric.
Par exemple :
- Blocker ;
- Warning ;
- Missing validation ;
- Rollback risk ;
- Security impact.
Dans ForgentFramework, ces vérifications sont déplacées dans un rubric-layer : prompts de critic et spécifications séparées pour la review.
Cela rend le résultat plus prévisible. Par exemple, si PRE_DISCOVERY a été ignoré, c’est un blocker. Si l’install a écrit des fichiers avant APPLY, c’est une violation du lifecycle.
ReflexionSi une tentative n’a pas fonctionné, il est important de ne pas recommencer la suivante à zéro.
ForgentFramework utilise pour cela la session memory. Les findings du critic vont dans
TASK_CONTEXT.md, et la tentative suivante doit prendre ce fichier en compte.
Autrement dit, l’erreur devient un artefact du processus :
- lors de la tentative précédente, le critic a trouvé un problème ;
- elle est enregistrée dans le session context ;
- l’executor suivant doit en tenir compte.
Context engineeringDans ForgentFramework, le contexte n’est pas empilé dans un seul énorme prompt. Il est divisé en plusieurs couches, et chaque couche sert une partie spécifique du travail.
Le framework context contient les règles générales du framework lui-même : lifecycle, rôles, critic process, trace protocol, rubrics, install/upgrade/remove. Cette couche répond à la question : comment le système agentique doit-il fonctionner ?
Le project context contient les informations sur le projet concret : stack, environnements, commandes build/test, CI/CD, contraintes et règles de vérification manuelle. Cette couche répond à la question : avec quel système travaillons-nous maintenant ?
Le repo context est la carte du dépôt : où se trouvent backend, frontend, fichiers DevOps, documentation, generated files, quelles zones peuvent être modifiées et lesquelles ne doivent pas l’être. Cela est généralement décrit via
AGENTS.md et
llms.txt.
Les scoped instructions et skills sont des règles locales et des playbooks chargés uniquement si nécessaire. Par exemple, des règles séparées pour Terraform, Dockerfile, code backend ou security review.
Le
session context est la mémoire d’un lancement concret : ce qui a déjà été essayé, ce que le critic a trouvé, quelles erreurs doivent être prises en compte à l’itération suivante. Ce n’est pas une carte permanente du projet, mais l’historique de la tâche courante.
L’idée est simple : différents rôles ont besoin de contextes différents.
Le bootstrap agent a besoin de la topology, de discovery et des règles d’installation.
Le project-orchestrator a besoin de la carte du repo et des critères de la tâche.
L’executor a besoin d’une subtask concrète et des fichiers nécessaires.
Le critic a besoin de la tâche, des critères d’acceptation et du résultat, mais pas de tout l’historique du raisonnement de l’executor.
Ainsi, le context engineering devient une transmission contrôlée de l’information : le bon contexte, au bon rôle, au bon moment.
Step logging et observabilityPour un travail sérieux, il ne suffit pas d’obtenir le résultat. Il faut aussi comprendre comment le système y est arrivé.
ForgentFramework dispose de traces pour cela.
La trace doit contenir les événements clés :
- discovery ;
- dry-run ;
- apply ;
- critic review ;
- executor result ;
- findings ;
- statut final.
Cela rend le processus agentique lisible. On peut revenir en arrière et voir exactement ce qui s’est passé, qui a fait quoi et à quelle étape le problème est apparu.
Stop and escalateLe système ne doit pas tourner indéfiniment dans une boucle « je vais encore essayer ».
ForgentFramework nécessite pour cela des règles d’arrêt explicites :
- limite d’itérations ;
- passage à NEEDS_HUMAN ;
- arrêt lorsque les acceptance criteria sont flous ;
- arrêt avant les changements dangereux ;
- fin de l’install uniquement après critic et context bootstrap.
C’est particulièrement important pour les tâches DevOps et d’infrastructure. Parfois, la bonne action de l’agent n’est pas de continuer, mais de dire honnêtement : « ici, il faut un humain ».
Least privilegeTous les rôles n’ont pas besoin d’un accès complet.
Le planner peut travailler en read-only.
Le critic doit presque toujours être read-only.
L’executor peut avoir le droit de modifier des fichiers, mais ne doit pas changer arbitrairement les artefacts du framework.
Les bootstrap agents doivent s’occuper du framework lifecycle, et non du développement applicatif.
Les project agents doivent travailler avec le product repo, mais ne doivent pas remplacer le circuit bootstrap.
L’idée est simple : moins un rôle a de droits inutiles, plus son comportement est sûr et prévisible.
Comment utiliser ForgentFramework sur un nouveau projet