text/event-stream). Each frame is a data: line containing a JSON object with a type field. The stream terminates with data: [DONE].
Event types
Text streaming
text-delta
A fragment of the agent’s text response. Concatenate these to build the full response.
choices format for compatibility with existing tooling. The content field is the text fragment.
Reasoning
reasoning_delta
A fragment of the model’s chain-of-thought reasoning (when supported by the model).
Thinking lifecycle
thinking_start
thinking_end
Tool execution
tool_start
The agent is calling a tool (model, connector, search, agent, or catalog).
tool_end
The tool finished. Check failed to see if it succeeded.
Tool argument streaming
tool_args_delta
Streams tool call arguments as they’re generated (before tool_start).
Timing
timing
Internal timing markers for debugging latency. Not user-facing — safe to ignore.
msm_start, msm_end, model_start, first_text_delta, done.
Plan and goal events
action
A slash command action was processed (goal observation, plan task update).
task.completed / task.blocked / task.failed / task.heartbeat
Plan task lifecycle events.
Plan proposal events
These four event types cover the full proposal lifecycle:plan.proposed
A plan was submitted by the agent.
approval.requested
Approval is needed before the plan can execute.
approval.decided
A decision was made (approved, rejected, or changes requested).
plan.feedback_requested
The approver requested changes with feedback.
Child agent events
When an agent delegates to sub-agents (swarm mode):swarm_child_start
swarm_child_delta
Text fragment from a child agent.
swarm_child_tool_start / swarm_child_tool_end
Tool calls within a child agent.
swarm_child_done
swarm_child_error
A child agent failed.
Conclave events
Shared workspace operations (used in swarm coordination):write, read, list, delete.
Trace events
Internal diagnostic traces — safe to ignore in production:capability, model, tool, agent, harness, swarm, route.