Three execution shapes, one bridge
Behind the AG-UI bridge, a CrewAI backend can take one of three shapes. Knowing which one you are serving decides how you author the backend, not how you build the frontend.
Conversational Flows are a newer CrewAI capability, and an important thing to be clear about up front: they are Flows, not Crews. They now run at full regular-Flow feature parity. This page introduces them and shows how they fit the rest of the frontend guides.
Reach for a Conversational Flow when you want native multi-turn conversation with CrewAI managing session state and history for you, rather than wiring turn and state handling into a regular Flow yourself. If you are new here, start with the Frontend Overview for the base server, runtime, and provider setup.
Register a Conversational Flow
You register a Conversational Flow through the same endpoint helper as any other Flow, with one extra argument:conversational=True.
- The Flow instance declares
conversational = True. - The Flow exposes CrewAI’s public, callable
stream_turn(message, session_id=...).
stream_turn, belongs to CrewAI’s Conversational Flows documentation. This page stays at the registration and integration boundary.
Session and state
Conversational Flows manage session state and history for you across turns. You do not re-thread history manually.- The AG-UI
threadIdis the CrewAI conversationsession_id. The same thread is the same conversation. - Before each turn the bridge hydrates the Flow’s state and conversation history, then calls
stream_turn. CrewAI restores the stored session state, and a per-request overlay reapplies the incoming AG-UI state and history so the browser’s latest edits win over stale storage.
Frontend parity
This is the point to hold onto: Conversational Flows run through the same event pipeline as regular Flows, so the frontend code is identical. There is no Conversational-Flow-specific frontend API. Every feature in these guides works exactly the same way with a Conversational Flow as it does with a regular Flow, using the same hooks and components:Tool-Based Generative UI
Map agent tool calls to your React components.
Agentic Generative UI
Render the Flow’s live state as it works.
Shared State
Keep agent state and app UI in two-way sync.
Human-in-the-Loop
Pause the agent for user approval or input mid-turn.
Predictive State
Stream in-progress tool arguments into state.
Reasoning
Show the model’s thinking in the chat.
A2UI
Render agent-authored UI from a component catalog.
stream_turn with managed session state) and the conversational=True registration. Once the endpoint is up, everything you already know about building the frontend applies unchanged.
Related
Frontend Overview
Wire a Crew or Flow to a Next.js frontend end to end.
Generative UI
Render tool calls and agent state as custom components.
Human-in-the-Loop
Gate agent actions behind user approval.
