Architecture overview
- Agent runtime: The central reasoning layer that receives user requests, plans steps, selects and invokes connectors, and generates responses
- Connectors: Typed integrations that provide tools and data sources to the agent. Connectors replace v1’s experts, MCP servers, and sub-agents with a unified model
- Contexts: Maintain persistent conversation state, enabling the agent to make informed decisions and ensuring continuity across messages
Request flow
When you send a message to an agent, the following flow occurs:- Message received: The A2A server receives the message via the HTTP+JSON or JSON-RPC binding
- Context resolution: The server resolves or creates a context to scope the conversation
- Reasoning and planning: The agent runtime analyzes the request and determines which steps to take
- Connector selection: The runtime decides which connectors to call, in what order, and with what data
- Connector invocation: Selected connectors are invoked to retrieve information or perform actions
- Response generation: The runtime aggregates results from connectors and generates the final response
- Response returned: The client receives either a
Task(for long-running work) or aMessage(for quick responses)
What the agent runtime does
The agent runtime is the central intelligence layer. Its core responsibilities include:- Reasoning and planning: Analyzes user requests and determines the necessary steps to complete them
- Connector selection: Decides which connectors to call, in what order, and with what data
- Task decomposition: Breaks complex requests into discrete steps that can be handled by individual connectors
- Response generation: Aggregates results from connectors and generates the final response
- Context management: Has access to the context, ensuring continuity across the conversation
- Safety enforcement: Enforces guardrails, type validation, and policy-driven constraints to ensure safe operation in production environments
Interaction mechanisms
The A2A protocol supports two interaction patterns:- Request/response: You send a message and wait for the response. For long-running tasks, you can poll the task endpoint for status and results. Use
message:sendwithconfiguration.returnImmediately: false(the default) for this pattern. - Streaming with Server-Sent Events (SSE): You open an SSE stream to receive incremental updates in real time. Use
message:streamfor streaming a new message, ortasks/{id}:subscribeto stream updates for an existing task. The server writes event IDs but does not yet read theLast-Event-IDheader, so resumption without gaps is not yet implemented.
Observability
The Agentic Framework provides two observability surfaces:- Traces: OpenInference-format traces for each context, showing spans for LLM calls, connector invocations, and tool usage. Useful for debugging and performance analysis.
- Usage: Aggregated usage metrics per agent, including invocations, unique contexts, and token consumption. Useful for cost tracking and capacity planning.
What changed from v1
In v1, the architecture was described as an “Orchestrator + Experts + Memory” triad. The orchestrator was a separate concept that delegated to specialized experts and MCP servers. In v2, the orchestrator is the agent runtime, and experts, MCP servers, and sub-agents are all unified under the connectors model. The memory concept is formalized as contexts with their own API endpoints.The v1 Orchestrator page is preserved in the v1 archived documentation.
Next steps
- Learn about connectors and the five connector types
- Read about contexts and memory
- Understand the A2A protocol and its two bindings