OutputScope Class

Provides OpenTelemetry tracing scope for output messages.

Output messages are set once (via the constructor or record_output_messages) rather than accumulated. For streaming scenarios, the agent developer should collect all output (e.g. via a list or string builder) and pass the final result to OutputScope.

Initialize the output scope.

Constructor

OutputScope(request: Request, response: Response, agent_details: AgentDetails, user_details: UserDetails | None = None, span_details: SpanDetails | None = None)

Parameters

Name Description
request
Required

Request details for the output

response
Required

The response details from the agent

agent_details
Required

The details of the agent

user_details

Optional human user details

Default value: None
span_details

Optional span configuration (parent context, timing)

Default value: None

Methods

record_output_messages

Records the output messages for telemetry tracking.

Overwrites any previously set output messages. Accepts a single string, a list of strings (auto-wrapped as OTEL OutputMessage), a structured OutputMessages container, or a dict[str, object] for tool call results (per OTEL spec).

start

Creates and starts a new scope for output tracing.

record_output_messages

Records the output messages for telemetry tracking.

Overwrites any previously set output messages. Accepts a single string, a list of strings (auto-wrapped as OTEL OutputMessage), a structured OutputMessages container, or a dict[str, object] for tool call results (per OTEL spec).

record_output_messages(messages: str | list[str] | OutputMessages | dict[str, object]) -> None

Parameters

Name Description
messages
Required

String(s), OutputMessages, or dict for tool call results

start

Creates and starts a new scope for output tracing.

static start(request: Request, response: Response, agent_details: AgentDetails, user_details: UserDetails | None = None, span_details: SpanDetails | None = None) -> OutputScope

Parameters

Name Description
request
Required

Request details for the output

response
Required

The response details from the agent

agent_details
Required

The details of the agent

user_details

Optional human user details

Default value: None
span_details

Optional span configuration (parent context, timing)

Default value: None

Returns

Type Description

A new OutputScope instance