Skip to main content

Steering et mise en file

Dans un flux typique d’application Laravel, vous utiliserez rarement le steering directement. Le modèle synchrone de Laravel en tire peu de bénéfices ; la mise en file par défaut convient dans la plupart des cas.
Pour envoyer un message à un agent en cours de traitement, il existe deux modèles : steering et queueing (mise en file).

Vue d’ensemble

Tous les appels send() / sendAndWait() / sendAndStream() / Copilot::run() acceptent un paramètre $mode.

Steering ("immediate")

Injecte le message directement dans le tour en cours de l’agent. Celui-ci reçoit le message en temps réel et ajuste sa réponse. À utiliser lorsque vous souhaitez rediriger sans interrompre le travail en cours.
Le steering est en best-effort. Si l’agent s’est déjà engagé dans un appel d’outil, il sera appliqué après la fin de cet appel mais dans le même tour. Si le message de steering arrive après la fin du tour, il est automatiquement basculé dans la file.

Queueing ("enqueue")

Ajoute le message à la file, traité séquentiellement après la fin du tour courant. Chaque message en file s’exécute comme un tour indépendant. C’est le comportement par défaut si $mode est omis.

Approche pratique dans Laravel

Dans Laravel, le style dominant est synchrone via Copilot::run() ou sendAndWait(). Ces méthodes envoient un message et attendent l’état inactif ; il n’y a donc pas d’occasion d’interrompre l’agent, et $mode n’a pas vraiment de sens.
Le steering ("immediate") prend son sens lorsque vous envoyez send() de façon asynchrone et que vous pouvez intervenir en parallèle dans le tour courant depuis un autre message. Dans le flux synchrone de Laravel, il est difficile de créer une telle fenêtre : il est en général approprié de ne pas spécifier $mode et de conserver le défaut.

Lequel utiliser ?

Bonnes pratiques

  • Par défaut, mise en file — omettre $mode (ou passer "enqueue") convient à la plupart des cas et donne un comportement prévisible.
  • Steering pour corriger — n’utilisez "immediate" que quand l’agent fait manifestement fausse route.
  • Messages de steering concis — courts et compréhensibles dans le contexte courant. Un steering long et complexe peut aggraver la confusion.
  • Évitez le steering en rafale — plusieurs steerings rapprochés peuvent dégrader la qualité du tour. Si un changement important s’impose, il peut être préférable d’interrompre le tour et de recommencer.

Voir aussi

Pour les dernières informations, consultez le dépôt GitHub.
Dernière modification le 13 juillet 2026