Skip to main content

Event Encoder

The Agent User Interaction Protocol uses a streaming approach to send events from agents to clients. The EventEncoder class provides the functionality to encode events into a format that can be sent over HTTP.

EventEncoder

from ag_ui.encoder import EventEncoder The EventEncoder class is responsible for encoding BaseEvent objects into string representations that can be transmitted to clients.

Usage

The EventEncoder is typically used in HTTP handlers to convert event objects into a stream of data. The current implementation encodes events as Server-Sent Events (SSE), which can be consumed by clients using the EventSource API.

Methods

__init__(accept: str = None)

Creates a new encoder instance.

encode(event: BaseEvent) -> str

Encodes an event into a string representation. Returns: A string representation of the event in SSE format.

Example

Implementation Details

Internally, the encoder converts events to JSON and formats them as Server-Sent Events with the following structure:
This format allows clients to receive a continuous stream of events and process them as they arrive.