Product

From a drawing to a finished call.

How a call is designed, run and turned into data you can rely on.

The canvas

The drawing is the program.

Each box is a step with one job: say a line, ask for a field, or pick a path. Select one to see exactly what it will collect.

Flow graph for a truck driver status check. Greeting leads to the question Where are you, which collects current_location. Next is On schedule, which collects on_schedule. A branch follows: if the driver is late, the flow asks for the reason and a new ETA, collecting delay_reason and revised_eta; if on time it skips that step. Both routes continue to Need any help, which collects needs_help, and end at Goodbye with the outcome completed.

The flow engine decides

Which question comes next, which branch to take, and when the call is done. It follows the drawing, every time.

The language model words it

It phrases each reply and proposes a value for each field. A value is kept only once it passes the check for that field.

From canvas to call

Design. Call. Collect.

  1. Design

    Start with what you need to know.

    Drag in a step for each thing you need to know and name the field it fills: a place, a yes or no, one option from a list. Add a branch where an answer changes what comes next.

  2. Call

    Hear it before they do.

    Talk to the flow in your browser until it sounds right. Then point the same flow at a phone number. Nothing is rewritten in between.

  3. Collect

    Get rows, not recordings.

    Each call becomes one row with one outcome, including the calls that end early. Sort it, filter it, act on it.

What you get back

Said any way. Stored one way.

People answer however they like. A field keeps one typed value, and an answer that does not fit is asked for again.

More coming
SaidStored
“It will be around midnight”revised_eta"around midnight"
“Wednesday, please”new_daywednesday
“A refund, please”resolutionrefund
“90 at most”budget_max9000000

Why it holds up

Reliable by construction.

01

The flow decides. The model speaks.

A deterministic engine owns which question comes next and when the call is done. The model words the reply and proposes values; each one is validated before it is kept. It cannot skip a question or invent a step.

Flow engine decides
  1. saygreeting
  2. askvisit_status
  3. asknew_slot
  4. askreasonasking
  5. endwrap_up
Language model speaks
Words the question

Could you give me a day and a time?

Proposes a value from the reply

new_slot ← "Thursday, 11:30"

AnthropicOpenAIGeminichosen per agent
Validation"Thursday, 11:30" is a valid slot. Kept. Move to the next step.
DiagramLooping example of one question. Step and field names are illustrative.

02

Interrupt it like a person.

Speech is streamed in both directions. When the caller talks over the agent, it stops mid-word, listens, and answers what was actually said.

AgentCaller
  1. AgentYour appointment is tomorrow morning at ten, will you be ab…
  2. CallerOne minute, tomorrow won't work.
  3. AgentAll right. Which day suits you?
DiagramLooping example. The dashed bars are the words the agent never said.

03

English, Hindi, and the mix in between.

Agents speak English, Hindi and Hinglish today, with more languages planned. They follow the caller turn by turn, including the code-switching most real calls in India are made of.

The caller speaks
More coming

AgentWhich day works better for you?

CallerThursday evening, after six.

Stored as Preferred slot, in every language
Thu, after 6 pm
ExampleAn illustrative exchange. Switching here changes every example call on the site.

04

Every turn is traced.

Each reply is timed from the moment the caller stops speaking to the first audio they hear, and stored beside the transcript and the flow step. A slow turn is something you can find.

  • Transcript
  • Flow step
  • Time to first word
  • Time to first audio
  1. t0

    Caller stops speaking

    The clock starts.

    then: transcribing

  2. t1

    Transcript final

    The caller's words are settled.

    then: model thinking

  3. t2

    First word from the model

    The reply starts streaming.

    then: voice rendering

  4. t3

    First audio out

    The caller hears the agent.

DiagramThe stages each reply is timed across. Segment lengths are equal by design: this is not a measurement.

Organised the way your work is.

Projects hold agents. Each agent keeps its own flow, settings and call history.

Straight answers

Ask the hard ones.

Do I need an engineer to build a flow?

No. You draw the conversation with drag-and-drop nodes, then set the agent's persona, languages, voice and model.

Which models can run it?

Anthropic, OpenAI or Gemini. You choose per agent, and the flow behaves the same whichever one is doing the talking.

What do I get when a call ends?

The answers your flow asked for, as validated fields. The call history keeps the transcript and the timing of every reply beside them.

Who is using it today?

Nobody we can quote. This is an early build with no customers yet, so there are no logos or numbers on this site. Judge it on your own flow.

Hear it for yourself.

Draw a flow. Play the caller. Watch the answers fill in.

Get started