AG-UI standardizes the event stream between agent backends and user interfaces, and AWS just shipped first-class support for it on Bedrock AgentCore. The Fullstack AgentCore Solution Template (FAST) v0.4.1 now includes two agent patterns—agui-strands-agent and agui-langgraph-agent—that produce identical AG-UI events. A single frontend parser handles both, so you can swap Strands for LangGraph in config.yaml and your React UI doesn't change a line.
One Parser to Rule Two Agent Frameworks
AG-UI defines a typed event stream over Server-Sent Events. A single tool call produces a predictable sequence: RUN_STARTED, TEXT_MESSAGE_START, TEXT_MESSAGE_CONTENT, TOOL_CALL_START, TOOL_CALL_ARGS, TOOL_CALL_END, TOOL_CALL_RESULT, RUN_FINISHED. Compare that to the HTTP patterns where Strands, LangGraph, and Claude Agent SDK each need a separate streaming parser. With AG-UI, the backend framework is abstracted away. AgentCore acts as a transparent proxy—handling SigV4 or OAuth 2.0 authentication, session isolation, scaling, and observability—while your container exposes POST /invocations on port 8080.
Both patterns build fresh agents per request, scoping MCP tools to the caller's identity. AgentCore Memory is opt-in: when MEMORY_ID is unset, the session manager returns None so you can run without provisioning persistent memory. The code is on GitHub in the FAST repository.
Generative UI That Doesn't Lock You In
CopilotKit extends the base FAST frontend with three capabilities that AG-UI makes possible. First, agents render React components inline. Register a pieChart component with a Zod schema, and when the agent calls query_data then invokes the chart tool, CopilotKit intercepts the TOOL_CALL_START event and renders the component directly in the conversation. Second, shared state works bidirectionally: a todo canvas updates in real time when the agent calls manage_todos, and edits you make in the UI are fed back into the agent's system prompt on the next turn via STATE_SNAPSHOT events.
Third, human-in-the-loop puts the agent on pause. A meeting scheduler tool (scheduleTime) emits TOOL_CALL_START; CopilotKit renders a time picker instead of executing a backend tool. The user's selection flows back as a TOOL_CALL_RESULT, and the agent continues with that input. No hand-rolled approval APIs, no polling loops.
Deploy Without the Plumbing
Deploying the CopilotKit sample provisions Amazon Cognito, Amazon ECR, AgentCore Runtime, AgentCore Gateway, AgentCore Memory, a Lambda bridge, and AWS Amplify hosting—all from a single script. ./deploy-langgraph.sh or ./deploy-strands.sh does it. When the stack finishes, you log in via Amplify and immediately ask for a pie chart, add todos, or schedule a meeting. Tear down with cdk destroy when you're done.
AG-UI is open and framework-agnostic. Expect to see it adopted beyond AgentCore as the standard channel for agent-to-user interaction.
Source: Build generative UI for AI agents on Amazon Bedrock AgentCore with the AG-UI protocol
Domain: aws.amazon.com
Comments load interactively on the live page.