Skip to content

AgentResult

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

Result returned by the agent loop.

new AgentResult(data): AgentResult;

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

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

AgentResult

readonly type: "agentResult";

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


readonly stopReason: StopReason;

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

The stop reason from the final model response.


readonly lastMessage: Message;

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

The last message added to the messages array.


readonly optional traces?: AgentTrace[];

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

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:273

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:279

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:287

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.

get contextSize(): number;

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

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:325

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:339

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:354

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.