Verdicts
Avant l’exécution d’une action couverte, le client rend l’un de quatre verdicts : Allow, Ask, Block ou Optimize. Un verdict est déterministe parce qu’une politique explicite l’a produit.
| Verdict | Ce qui se passe |
|---|---|
| Allow | L’action s’exécute. En Monitor, elle peut s’exécuter et être signalée |
| Ask | Par défaut, l’action s’exécute et est signalée pour une revue asynchrone ; elle n’est retenue que lorsqu’un atome l’active pour une action irréversible |
| Block | L’action ne s’exécute pas. L’agent reçoit un refus natif qui nomme la règle qui l’a produit |
| Optimize | Le chemin change. En Enforce, un levier agit ; en Monitor, il mesure ce qu’il aurait fait |
Quand plusieurs politiques correspondent à une même action, le verdict le plus restrictif l’emporte, dans cet ordre : Block, puis Ask, puis Optimize, puis Allow.
Ask laisse l’action s’exécuter et la signale pour revue, afin qu’une personne décide si l’agent doit recommencer. Il empêche la récurrence, pas la première occurrence. Un atome peut choisir de retenir une action irréversible jusqu’à ce qu’on y réponde ; rien d’autre ne dépend d’une personne.
La façon dont Ask atteint l’agent dépend de l’agent. Claude Code le reçoit sous la forme de sa propre demande native, avec la raison de la règle. Codex CLI n’a pas de demande native : il reçoit un message qui porte la raison, et l’appel se poursuit.
Optimize
Section intitulée « Optimize »Optimize change le chemin d’une action au lieu de l’arrêter. Chaque changement passe par un levier, et ce que fait un levier dépend du mode de la politique.
| Levier | Statut |
|---|---|
loop_stop | Agit en Enforce ; mesure en Monitor |
steer | Agit en Enforce ; mesure en Monitor |
narrow_output | Agit en Enforce sur Claude Code ; mesure en Monitor |
effort_clamp | Mesure par défaut, en Monitor comme en Enforce ; agit en Enforce seulement là où vous l’activez |
context_edit | Mesure par défaut, en Monitor comme en Enforce ; agit en Enforce seulement là où vous l’activez |
prefix_guard | Mesure par défaut, en Monitor comme en Enforce ; agit en Enforce seulement là où vous l’activez |
substitute | Ce levier n’est pas disponible, et en Monitor il mesure seulement |
En Monitor, un levier mesure seulement ce qu’il aurait fait, et l’historique l’indique. En Enforce, il est appliqué.
Une action, quatre verdicts
Section intitulée « Une action, quatre verdicts »Scénario illustratif. La même action, git push, peut recevoir chaque verdict selon son contexte :
| Contexte | Verdict |
|---|---|
| Un agent pousse une branche de fonctionnalité d’un dépôt que son équipe possède | Allow |
| Un agent pousse sur une branche de release partagée | Ask : le push s’exécute et est signalé pour revue |
| Un agent force un push sur la branche principale d’un dépôt de production | Block |
| Un agent relance en boucle le même push qui échoue | Optimize : en Enforce, loop_stop met fin à la boucle |