LIVESTREAM · 30 MIN
EPISODE 01 · BUILD WITH VAPI

Ship a Voice Agent.
In 30 Minutes.

We go from a rough first-draft script to four production voice agents in four AI-driven steps.

00 · INTRO

Here's what we're doing.

The iteration loop we used to ship the 15 agents on vapi.ai.

Rough → Production
AI iterates from your first draft.
Each step is a prompt to the AI, and one bootstrap run ships the diff to every assistant.
Four steps
Build the agent end to end with AI.
  1. Bootstrap the fleet.
  2. Apply Vapi's prompting guide.
  3. Build a response bank.
  4. Capture data mid-call.
Install the skill
All you need is the skill and your rough draft.
Drop vapi-bootstrap-framework into .cursor/skills/, then write your own ROUGH_DRAFT.md.
00 · CONTEXT

What we're building.

Two scenarios across two languages gives us four assistants, which is the same shape we use for the fleet on vapi.ai.

Lead Qualification · EN · ES · Appointment Scheduling · EN · ES
00 · MENTAL MODEL

The mental model.

You author one rough draft, and the AI scaffolds the whole fleet from it.

AUTHOR
ROUGH_DRAFT.md
One paragraph
per scenario.
AI + skill
AI SCAFFOLDS
vapi-bootstrap-framework
framework·per-scenario files
composer·bootstrap loop
bun run bootstrap
VAPI
4 baked assistants
prompt·voice·STT·LLM
tools·hooks·analysis
01

Let's build it.

We scaffold the framework, apply the prompting guide, add a response bank, and wire up the capture tools.

01
01 · STEP 01

Bootstrap the fleet.

  • Drop in the skill and write a ROUGH_DRAFT.md at the root.
  • The AI scaffolds the whole project, including the framework and both scenarios.
  • Run bun run bootstrap and the whole fleet comes up.
Press to start the demo
voice-agents — ai editor
AI EDITOR · main *
voice-agents — bun — 96×26
TERMINAL
dashboard.vapi.ai — chrome
VAPI DASHBOARD
AssistantsToolsFilesLogsPhone
01 · STEP 02

Apply Vapi's prompting guide.

  • We turn each rough body.md into a real production prompt.
  • The same rewrite from docs.vapi.ai/prompting-guide lands on both bodies in one swing.
  • Re-run bun run bootstrap and all four assistants upgrade in place.
Press to start the demo
voice-agents — ai editor
AI EDITOR · main *
voice-agents — bun — 96×26
TERMINAL
dashboard.vapi.ai — chrome
VAPI DASHBOARD
AssistantsToolsFilesLogsPhone
01 · STEP 03

Make it feel natural.

  • Contracts pick the agent's behaviors, but they don't pick its phrases.
  • We pre-write a response bank covering acks, transitions, off-ramps, closers, and disfluency.
  • The agent varies its surface phrasing while keeping the same substance underneath.
Press to start the demo
voice-agents — ai editor
AI EDITOR · main *
voice-agents — bun — 96×26
TERMINAL
dashboard.vapi.ai — chrome
VAPI DASHBOARD
AssistantsCallsLogsPhone
01 · STEP 04

Capture data while the agent talks.

  • We add one async: true client tool per scenario.
  • It's capture_lead on qualification and capture_booking on appointment.
  • Watch the tools fire mid-call in the Messages panel.
Press to start the demo
voice-agents — ai editor
AI EDITOR · main *
voice-agents — bun — 96×26
TERMINAL
dashboard.vapi.ai — chrome
VAPI DASHBOARD
AssistantsCallsLogsPhone
02 · TAKEAWAYS

The 6 patterns you just used.

Take them to your next voice agent.

01
Bootstrap as code.The upsert is idempotent, so every assistant lives in git as the source of truth.
02
One body per scenario; preamble per language.A short preamble handles the language override, so one body stays canonical.
03
Split the stack at language.Language drives the voice and transcriber, while the scenario drives the prompt and tools.
04
Prompt to the prompting guide.It's organized into six sections, with voice-first response rules built into each one.
05
Response bank for natural variation.The agent varies its surface phrasing while keeping the same substance underneath.
06
Capture at the edge.An async: true client tool fires mid-call with no backend round-trip.
02 · NOW TEST IT

Now test it.

Once the fleet is live, the next job is keeping it from regressing. Three patterns fit naturally on top of the shape you just built.

Simulations (alpha)
Run synthetic test calls without picking up the phone.
Define scenarios with mock tool responses and structured-output evaluations, then wire them into CI so every prompt change runs against a smoke and regression suite. The full guide lives at docs.vapi.ai/observability/simulations-advanced.
Evals
Every bug becomes a permanent test.
Write mock conversations that pin down what the agent should say, then validate each turn with exact match, regex, or an AI judge. Add one to your suite every time you fix a real-call regression, and that bug can't quietly come back. The full guide lives at docs.vapi.ai/observability/evals-quickstart.
Tester agent
Build a voice agent whose job is to test yours.
Spin up an assistant whose system prompt tells it to roleplay hard customers, including unclear answers, off-topic asks, and contradictions, then point it at your production agent on a loop. It uses the same bun run bootstrap and the same framework, just with a different scenario.
REFERENCES & NEXT

Where to go from here.

Try it live
vapi.aiThis is where the 15-agent homepage hero lives.
discord.gg/vapiThe community where folks ask questions and share what they're building.
lu.ma/vapiLists every Vapi event we run, both online and in person.
docs.vapi.aiThe reference docs for prompts, voices, transcribers, tools, and hooks.
Build it yourself
docs.vapi.ai/prompting-guideThis is what Step 2 follows, and Step 3 inherits the same shape.
npx skills add VapiAI/skills --skill vapi-bootstrap-framework
Installs the Step 1 skill into your .cursor/skills/ folder.
ROUGH_DRAFT.md
The spec the skill reads, with one paragraph per scenario.
bun run bootstrap
Paste in your VAPI_PRIVATE_KEY and run it, and the whole fleet comes up.
Install the skill and bring your own rough draft.
It's the same path you just watched, with your fleet and your scenarios.