Skip to content

AgentResult

Defined in: src/types/agent.ts:266

Result returned by the agent loop.

new AgentResult(data): AgentResult;

Defined in: src/types/agent.ts:311

ParameterType
data{ stopReason: StopReason; lastMessage: Message; invocationState: InvocationState; traces?: AgentTrace[]; metrics?: AgentMetrics; structuredOutput?: unknown; interrupts?: Interrupt[]; }
data.stopReasonStopReason
data.lastMessageMessage
data.invocationStateInvocationState
data.traces?AgentTrace[]
data.metrics?AgentMetrics
data.structuredOutput?unknown
data.interrupts?Interrupt[]

AgentResult

readonly type: "agentResult";

Defined in: src/types/agent.ts:267


readonly stopReason: StopReason;

Defined in: src/types/agent.ts:272

The stop reason from the final model response.


readonly lastMessage: Message;

Defined in: src/types/agent.ts:277

The last message added to the messages array.


readonly optional traces?: AgentTrace[];

Defined in: src/types/agent.ts:283

Local execution traces collected during the agent invocation. Contains timing and hierarchy of operations within the agent loop.


readonly optional structuredOutput?: unknown;

Defined in: src/types/agent.ts:289

The validated structured output from the LLM, if a schema was provided. Type represents any validated Zod schema output.


readonly optional metrics?: AgentMetrics;

Defined in: src/types/agent.ts:295

Aggregated metrics for the agent’s loop execution. Tracks cycle counts, token usage, tool execution stats, and model latency.


readonly invocationState: InvocationState;

Defined in: src/types/agent.ts:303

Per-invocation state passed into the agent, threaded through hooks and tools, and surfaced here at the end of the invocation. See InvocationState for details. Always defined — defaults to {} when no invocationState was provided in InvokeOptions.


readonly optional interrupts?: Interrupt[];

Defined in: src/types/agent.ts:309

Interrupts that caused the agent to stop, when stopReason is 'interrupt'. Contains the unanswered interrupts that require human input to resume.

get contextSize(): number;

Defined in: src/types/agent.ts:342

The most recent input token count from the last model invocation. Convenience accessor that delegates to metrics.latestContextSize. Returns undefined when no metrics or invocations are available.

number


get projectedContextSize(): number;

Defined in: src/types/agent.ts:351

Projected context size for the next model call (inputTokens + outputTokens from the last call). Convenience accessor that delegates to metrics.projectedContextSize. Returns undefined when no metrics or invocations are available.

number

toJSON(): object;

Defined in: src/types/agent.ts:365

Custom JSON serialization that excludes traces, metrics, and invocationState. Traces and metrics are excluded to avoid sending large payloads over the wire in API responses; invocationState is excluded because its values are caller-owned and may not be serializable (see InvocationState).

All three remain accessible via their properties for debugging.

object

Object representation for safe serialization


toString(): string;

Defined in: src/types/agent.ts:380

Extracts and concatenates all text content from the last message. Includes text from TextBlock and ReasoningBlock content blocks.

string

The agent’s last message as a string, with multiple blocks joined by newlines.