Voice Workflows
A Voice Workflow is a visual state machine for a phone call. Instead of one big system prompt that has to handle everything, you lay out the call as a graph of nodes — each node is a single phase of the conversation (greet, branch, collect an answer, call an API, hand off to a human, end the call). The call walks the graph one node at a time. The core idea: only the current node is active. At any moment the agent runs just that node’s prompt and its tools — nothing else. That keeps the agent on-script and predictable, so a structured call (qualify a lead, book an appointment, triage a support request) plays out the same way every time.Voice Workflows are in alpha. Open them in Agent Studio → the left sidebar → Workflow.
When to use a workflow vs a normal agent
A normal voice agent runs a single system prompt for the whole call. It’s open-ended and conversational — great when the caller can ask about anything and you want the agent to improvise within its instructions. A Voice Workflow is scripted and multi-step. Reach for one when the call has a clear shape you want to enforce:Lead qualification
Greet, ask qualifying questions in order, branch on the answers, and route
hot leads onward.
Appointment booking
Collect a date and details, check availability via an API, and confirm — or
offer alternatives.
Support triage
Classify the issue, gather the right details for that issue, and resolve or
transfer to a human.
Voice Workflows are a distinct, voice-specific feature. They are not the
chat Flow Editor (a graph of Agent / Tool / Team nodes for
chat and teams), and they are not Crews (multi-agent
handoff on a live call). A Voice Workflow is one agent following a deterministic,
branching script.
How it works in one minute
A few concepts power the whole thing. You don’t need to master them to start — the templates wire them up for you — but here’s the mental model. Two prompt layers. A Global Prompt (set in the Settings tab) holds the shared personality and rules, and is prepended to every node. Each node then adds its own per-node prompt for that phase. The agent at any moment runs Global Prompt + the current node’s prompt. The Director. After each caller turn, a fast LLM called the Director does two jobs: it extracts the current node’s declared variables from what the caller said, and it picks which natural-language (“prompt”) transition is met. The Director is gated — it only runs when routing is genuinely ambiguous — to keep latency low. You can change its model and temperature in Settings. Routing each turn (equation-first). When deciding where to go next, the engine resolves transitions in a fixed order: deterministic equation edges (like{{age}} > 18) are checked in code first, first-true-wins; if none match,
the Director’s chosen prompt edge is taken (once the node’s required
variables are captured); otherwise a global node may take over; otherwise the
call stays put.
Route-then-reply. The engine first resolves the transition, then the
destination node produces the reply. So the next thing the caller hears already
belongs to the node they just moved into.
For the full picture, see Transitions, Variables & the Director.
Quick start
Open the builder
Go to Agent Studio → the left sidebar → Workflow (it carries an alpha
badge and appears in Developer Mode). The builder renders inline in the
studio.
Start from a template (or blank)
Click Templates and pick Lead Qualification, Appointment Booking,
Support Triage, or Blank. Templates drop in a working graph and
auto-arrange it into a clean top-down tree, so you can edit rather than build
from scratch.
Configure prompts and variables
Select a node to edit its prompt, First Message, and the variables it should
extract or require, in the Inspector. Declare typed variables in
the Variables tab, and set your shared Global Prompt and the Director
in Settings. See The Workflow Builder
and Node Types.
Validate
Click Validate. The Issues tab lists errors (which block
publishing) and warnings (which don’t). Fix the errors.
Publish
Click Publish to switch the agent into workflow mode so it runs this
workflow on real calls. Save keeps a draft; only the published
version runs live. See Publishing & Going Live.
Explore the docs
The Workflow Builder
The canvas, node palette, the Inspector / Variables / Settings / Issues
tabs, and the toolbar.
Node Types
Conversation, Collector, Condition, Set Variable, API Request, Transfer, End
Call — and Global nodes.
Transitions, Variables & the Director
Edges and conditions, equation operators, typed variables, and how the
Director routes each turn.
API Request Node
Call an external API mid-call, fill parameters from variables, and map the
response back into the flow.
Workflow Templates
Lead Qualification, Appointment Booking, Support Triage, and Blank — what
each one ships with.
Publishing & Going Live
Validate, Save vs. Publish, the Enabled/Disabled toggle, and test calls.

