Streaming events
Als je streaming: true inschakelt in SessionConfig, wordt de activiteit tijdens de session als opeenvolgende events afgeleverd.
Deze pagina is een voor Laravel toegankelijk gemaakte versie van de officiële streaming-events.md.
De pagina SessionEvent beschrijft de voor Laravel uitgebreide SessionEvent-klasse zelf.
Deze pagina is een referentie voor “welk eventtype welke data aanlevert”.
Overzicht
Alle verwerking van de Copilot-agent (redeneren, berichten genereren, tools uitvoeren, permissiecontroles, enz.) stroomt binnen als session events.
- Ephemeral event: alleen realtime aflevering. Wordt niet gepersisteerd in de sessionlog (wordt niet opnieuw afgespeeld bij hervatten)
- Persisted event: wordt opgeslagen in de sessionlog (wordt opnieuw afgespeeld bij hervatten)
- Delta event: fragmentarische diff-events (zoals
deltaContent). Voeg ze samen om de volledige tekst te vormen
parentId chain: een keten waarin elk event verwijst naar de ID van het vorige event
Event envelope (gedeelde velden)
Alle events hebben de volgende gedeelde structuur.
Voorbeeld van abonneren in Laravel
Belangrijkste eventcategorieën
Assistant events
assistant.turn_start
Start van een turn.
turnId (verplicht)
interactionId (optioneel)
assistant.intent (ephemeral)
De huidige uitvoeringsintentie (bijv. Exploring codebase).
assistant.reasoning
De voltooide versie van een redeneerblok.
reasoningId (verplicht)
content (verplicht)
assistant.reasoning_delta (ephemeral)
Diff van de redeneertekst.
reasoningId (verplicht)
deltaContent (verplicht)
assistant.message
Het voltooide bericht van de assistent.
Belangrijkste velden:
messageId (verplicht)
content (verplicht)
toolRequests (optioneel)
reasoningOpaque / reasoningText / encryptedContent (optioneel)
phase / outputTokens / interactionId (optioneel)
parentToolCallId (optioneel, bij afkomst van een subagent)
assistant.message_delta (ephemeral)
Diff van de berichttekst.
messageId (verplicht)
deltaContent (verplicht)
parentToolCallId (optioneel)
assistant.turn_end
Einde van een turn.
assistant.usage (ephemeral)
Gebruiksinformatie per API-aanroep.
Belangrijkste velden:
model (verplicht)
inputTokens / outputTokens / cost / duration (optioneel)
apiCallId / providerCallId (optioneel)
quotaSnapshots / copilotUsage (optioneel)
assistant.streaming_delta (ephemeral)
Ontvangstvoortgang op laag niveau.
totalResponseSizeBytes (verplicht)
Start van een tooluitvoering.
toolCallId (verplicht)
toolName (verplicht)
arguments / mcpServerName / mcpToolName / parentToolCallId (optioneel)
Gedeeltelijke output tijdens de tooluitvoering.
toolCallId (verplicht)
partialOutput (verplicht)
Voortgangsbericht.
toolCallId (verplicht)
progressMessage (verplicht)
Voltooiing van de tooluitvoering (succes/mislukking).
toolCallId (verplicht)
success (verplicht)
result (bij succes)
error (bij mislukking)
toolTelemetry / parentToolCallId (optioneel)
Toolaanroep op expliciet verzoek van de gebruiker.
toolCallId (verplicht)
toolName (verplicht)
arguments (optioneel)
Session lifecycle events
session.start
Start van de session. Bij Cloud Sessions is het veilig om de eerste prompt pas te versturen nadat je een session.start met producer gelijk aan copilot-agent hebt gezien.
session.idle (ephemeral)
De huidige verwerking is voltooid en er wordt gewacht op de volgende invoer.
backgroundTasks (optioneel)
session.error
Fout tijdens de sessieverwerking.
errorType (verplicht)
message (verplicht)
stack / statusCode / providerCallId (optioneel)
session.compaction_start
Start van contextcompaction (data is een leeg object).
session.compaction_complete
Voltooiing van contextcompaction.
Belangrijkste velden:
success (verplicht)
error (optioneel)
preCompactionTokens / postCompactionTokens (optioneel)
summaryContent / checkpointPath (optioneel)
session.title_changed (ephemeral)
Automatische titelupdate.
session.context_changed
Wijziging van de werkcontext.
cwd (verplicht)
gitRoot / repository / branch (optioneel)
session.info
Sessie-informatie zoals de remote URL.
infoType (verplicht)
url (optioneel, bijvoorbeeld als infoType remote is)
session.remote_steerable_changed
Event dat aangeeft dat de mogelijkheid tot remote bediening vanuit Mission Control is gewijzigd.
remoteSteerable (optioneel)
session.usage_info (ephemeral)
Gebruik van het contextvenster.
tokenLimit (verplicht)
currentTokens (verplicht)
messagesLength (verplicht)
session.task_complete
Melding dat een taak is voltooid.
session.shutdown
Einde van de session.
Belangrijkste velden:
shutdownType (verplicht)
errorReason (optioneel)
totalPremiumRequests / totalApiDurationMs (verplicht)
codeChanges / modelMetrics (verplicht)
permission.requested (ephemeral)
Verzoek om permissiebevestiging.
requestId (verplicht)
permissionRequest (verplicht)
permissionRequest.kind:
shell
write
read
mcp
url
memory
custom-tool
permission.completed (ephemeral)
Het resultaat van de permissiebevestiging.
requestId (verplicht)
result.kind (verplicht)
Vraag aan de gebruiker.
requestId (verplicht)
question (verplicht)
choices / allowFreeform (optioneel)
Gebruikersinvoer voltooid.
elicitation.requested (ephemeral)
Verzoek om gestructureerde invoer (formulier).
requestId (verplicht)
message (verplicht)
requestedSchema (verplicht)
elicitation.completed (ephemeral)
Voltooiing van de gestructureerde invoer.
Sub-agent / skill events
subagent.started
toolCallId (verplicht)
agentName / agentDisplayName / agentDescription (verplicht)
subagent.completed
toolCallId (verplicht)
agentName / agentDisplayName (verplicht)
subagent.failed
toolCallId (verplicht)
agentName / agentDisplayName (verplicht)
error (verplicht)
subagent.selected
agentName (verplicht)
agentDisplayName (verplicht)
tools (verplicht, null toegestaan)
subagent.deselected
Terugkeer naar de default agent (data is een leeg object).
skill.invoked
name / path / content (verplicht)
allowedTools / pluginName / pluginVersion (optioneel)
Other events
abort
user.message
content (verplicht)
transformedContent / attachments / source / agentMode / interactionId (optioneel)
system.message
content (verplicht)
role (verplicht)
name / metadata (optioneel)
requestId / sessionId / toolCallId / toolName (verplicht)
arguments (optioneel)
exit_plan_mode.requested (ephemeral)
requestId / summary / planContent / actions / recommendedAction (verplicht)
exit_plan_mode.completed (ephemeral)
command.queued (ephemeral)
requestId (verplicht)
command (verplicht)
command.completed (ephemeral)
Typische eventvolgorde
Overzicht van alle events (snelle referentie)
Gerelateerde documentatie
Laatst gewijzigd op 6 september 2026