Skip to main content

Steering en queueing

In de normale flow van een Laravel-applicatie zijn er nauwelijks situaties waarin je steering direct gebruikt. Bij de synchrone uitvoeringspatronen van Laravel heb je er weinig baat bij; de standaard queueing-aanpak is meestal de juiste keuze.
Er zijn twee patronen om berichten te sturen terwijl de agent aan het werk is: steering en queueing.

Overzicht

send() / sendAndWait() / sendAndStream() / Copilot::run() hebben allemaal een $mode-parameter.

Steering ("immediate")

Injecteert een bericht direct in de turn die de agent aan het verwerken is. De agent ontvangt het bericht in realtime en past zijn respons aan. Gebruik dit als je wilt bijsturen zonder het lopende werk te onderbreken.
Steering is best effort. Als de agent al een toolaanroep heeft gecommit, wordt het bericht toegepast nadat die toolaanroep is voltooid, maar wel binnen dezelfde turn. Als het steeringbericht arriveert nadat de turn is voltooid, wordt het automatisch naar de queue verplaatst.

Queueing ("enqueue")

Voegt berichten toe aan de queue en verwerkt ze na elkaar zodra de huidige turn is voltooid. Elk gequeued bericht wordt uitgevoerd als een aparte turn. Dit is het standaardgedrag als je $mode weglaat.

Praktische benadering in Laravel

In Laravel draait het vooral om synchrone patronen met Copilot::run() of sendAndWait(). Omdat deze een bericht versturen en wachten tot de idle-status is bereikt, is er geen moment om in te grijpen terwijl de agent bezig is en heeft $mode in feite geen betekenis.
Steering ("immediate") komt tot zijn recht wanneer je met send() asynchroon berichten verstuurt en tegelijkertijd met een ander bericht in de lopende turn kunt ingrijpen. In de synchrone verwerkingsflow van Laravel is het lastig om die gelegenheid te creëren, dus is het meestal het beste om $mode niet op te geven en de standaard te laten staan.

Welke moet je gebruiken?

Best practices

  • Queueing als standaard$mode weglaten (of "enqueue" opgeven) is in vrijwel alle gevallen de juiste keuze. Het gedrag is voorspelbaar.
  • Steering voor correcties — gebruik "immediate" alleen wanneer de agent duidelijk iets verkeerds aan het doen is.
  • Houd steeringberichten beknopt — gebruik korte berichten die in de huidige context begrijpelijk zijn. Lange, complexe steeringberichten veroorzaken juist verwarring.
  • Vermijd opeenvolgende steering — meerdere steeringberichten kort na elkaar kunnen de kwaliteit van de turn verlagen. Bij een grote koerswijziging is het soms beter de turn af te breken en opnieuw te beginnen.

Zie ook

Raadpleeg de GitHub-repository voor de meest actuele informatie.
Laatst gewijzigd op 6 september 2026