If you build chat agents, you already know most of this editor — the canvas is the same. Voice flows differ in node types, transition mechanics, and where the global prompt lives. See Differences from the chat flow editor below.
Getting the engine
The engine is chosen at agent creation and can’t be changed later — to switch engines, create a new agent.- Click + New Voice Agent and choose the Blank template. Role templates always create single-prompt agents; only Blank offers the choice.
- An Engine picker appears with two cards: Single prompt (“One system prompt drives the whole conversation”) and Conversational flow (“Build a graph of nodes with explicit transitions”). Pick Conversational flow.
The editor
The flow opens on the same visual canvas as the chat flow editor: drag between nodes to create transitions, and use the toolbar for Import Flow, Export Flow (JSON), Auto arrange, Add Node, and search. Clicking a node opens its panel on the right.Adding a node
Add Node opens the Create New Node dialog with three fields: Node Name, Node Type, and Instructions. For voice agents the type list has exactly two options:
There are no Schedule Meeting, Contact Collection, End, or Function node types for voice — scheduling and data collection are handled through tools, and ending the call is a built-in ability on every node (see Ending the call).
The node panel
Selecting a node opens a panel with:- Name and color — editable name plus a color picker for organizing large flows visually.
- Global Node toggle with a Condition field — makes the node reachable from anywhere (see Global nodes).
- Instruction — a rich editor for the node’s per-stage instructions. Hidden on Transfer Call nodes.
- Transitions — one condition + destination pair per outgoing edge (see How the agent moves between nodes).
- Tool Selection — which of the agent’s custom tools are callable in this node. Hidden on Transfer Call nodes.
- Duplicate Node / Delete Node in the footer.
Transfer Call configuration
Transfer Call nodes replace the Instruction editor with transfer settings:
For how bridge and cold transfers behave on the phone network, see Call Transfer.
How the agent moves between nodes
Each transition has a condition. At runtime the flow behaves as a state machine, and conditions are checked in a fixed order on each turn:- Deterministic conditions are evaluated first. A condition written as a comparison — for example
{{retry_count}} >= 3using flow variables — is evaluated mechanically, with no AI judgment, and wins immediately when true. Use these for hard rules that must never depend on the model’s interpretation, like retry limits. - AI-judged conditions come second. A plain-language condition like “the caller confirmed their identity” is handed to the AI as a transition rule; the model decides when the rule is met and moves the call.
- Moving to a Normal Conversation node is silent — nothing announces the transition; the destination node simply speaks next.
- Moving to a Transfer Call node speaks the Transfer Message first (or a default transfer line if you left it empty), then transfers.
Per-node tools
Custom tools attached to the agent are only callable on nodes where you selected them in Tool Selection. A node with nothing selected exposes none of the custom tools — useful for keeping a verification node from booking meetings, or a closing node from re-running lookups. Built-in abilities are always available regardless of tool selection: transitioning between nodes, ending the call, knowledge-base search (the flow uses the agent’s attached knowledge bases for retrieval), voicemail detection, and phone verification/normalization when configured.Global nodes
Toggling Global Node on and setting its Condition makes the node reachable from any other node when the condition is met — as the tooltip puts it, “acting as a universal fallback or interrupt point.” Use global nodes for interrupts that can happen at any stage of the call:- “Caller asks to speak to a human” → a global Transfer Call node.
- “Caller asks to be removed from the list” → a global node that handles the opt-out.
Ending the call
There is no End node type — every node has a built-in end-call ability, so the agent can wrap up from anywhere in the flow once the conversation has run its course. The hangup is cancellable: if the caller speaks during the goodbye, the agent stays on the line instead of hanging up mid-sentence.Where the global prompt lives
The flow has no global prompt field of its own. The Instructions field on the agent’s General tab is the flow’s global prompt: rules that apply across all nodes — persona, tone, compliance language — go there, while per-stage behavior goes in each node’s Instruction. Who speaks first is also outside the flow: it’s governed by the agent’s AI Speaks First setting under Advanced Settings, same as single-prompt agents. See Voice Agent Settings.Differences from the chat flow editor
For the chat counterpart, see Flow Editor Overview.
What’s Next
- Creating Your First Voice Agent — the creation flow where you pick the engine.
- Call Transfer — bridge vs. cold transfer mechanics behind the Transfer Call node.