The main data payload of the observation, structure depends on the type.
Common content shapes by type:
TITLE: { title: string } — a concise thread title (<= 10 words)INTENT: { intent: string }PLAN: { plan: string; rawOutput?: string }TOOL_CALL: { toolCalls: ParsedToolCall[] }TOOL_EXECUTION: { callId: string; toolName: string; status: 'success' | 'error'; output?: any; error?: string }FINAL_RESPONSE: { message: ConversationMessage; uiMetadata?: object }A unique identifier for this specific observation record.
OptionalmetadataOptional metadata providing additional context (e.g., source phase, related IDs, status).
OptionalparentAn optional identifier for the parent object (e.g., a TodoItem ID) to which this observation belongs. This allows differentiation between primary (user query) and secondary (sub-task) observations.
The identifier of the conversation thread this observation relates to.
A Unix timestamp (in milliseconds) indicating when the observation was recorded.
A concise, human-readable title summarizing the observation (often generated based on type/metadata).
OptionaltraceAn optional identifier for tracing a request across multiple systems or components.
The category of the event being observed (e.g., PLAN, THOUGHTS, TOOL_EXECUTION).
Represents a recorded event during the agent's execution.
Observation