A2UI.Transport.A2A (A2UI v0.3.0)

Copy Markdown View Source

A2A client transport for A2UI.

Connects a LiveView to a remote A2UI agent served via A2UI.A2A over the A2A protocol (JSON-RPC + HTTP).

Example

# In your LiveView mount:
{:ok, transport} = A2UI.Transport.A2A.connect(
  url: "http://remote-agent:4000/a2a"
)

The transport delivers messages to the calling process (the LiveView) as {:a2ui_message, msg}, matching the local transport behaviour.

Options for connect/1

  • :url — URL of the remote A2A agent (required unless :client given)
  • :client — pre-built A2A.Client struct
  • :context_id — A2A context ID for session continuity

Summary

Types

t()

@type t() :: %A2UI.Transport.A2A{
  client: A2A.Client.t(),
  connection: A2UI.Connection.t(),
  handler: pid()
}