Voice agents in production
Two and a half years of building dealership voice agents at Spyne, written up as one field guide: what worked, what it cost, and what breaks.
The agents answer and place real dealership calls over real phone numbers. They started on a managed platform and now run on LiveKit. In our deployment the migration took infrastructure cost from $0.26 to $0.10 per minute, alongside the provider and pipeline tuning that came with it, and working that close to the framework sent eight merged pull requests upstream to the LiveKit Agents SDKs. The six pieces below are meant to be read in order; each one stands on its own.
Read in order
Migrating Production Voice Agents from Vapi to LiveKitWe ran dealership voice agents on Vapi and now run them on LiveKit. What we did before the migration so it would not become a rewrite, and what it did to cost.Part 01 · The migration7 min readTurn-Taking Is the Hardest Problem in Voice AICallers forgive a mediocre answer long before they forgive being interrupted. Notes on endpointing, latency and barge-in from real phone lines.Part 02 · Turn-taking6 min readAnswering-Machine Detection Is Turn-Taking's Evil TwinBefore a voice agent can decide when to speak, it has to decide whether anyone is there. Why AMD is hard, and why you cannot test it by calling your own phone.Part 03 · Voicemail detection6 min readThe Real Cost of a Voice Agent MinuteOur infrastructure cost fell from $0.26 to $0.10 per minute. How to meter each component, compare operating costs, and protect conversation quality.Part 04 · Cost per minute5 min readSTIR/SHAKEN, CNAM, and Why Nobody Answers Your AI's CallsYour agent can be flawless and still show up as Spam Likely. What I learned about caller identity and number reputation running outbound voice agents.Part 05 · Caller identity6 min readOne API, Many Carriers: Designing a Provider-Neutral Telephony LayerProduct code should talk to a capability, not a vendor SDK. Lessons from running Twilio, Vonage and Telnyx behind one interface.Part 06 · The carrier layer6 min readThe systems behind it
Conversational Voice AgentsA provider-neutral control plane with interchangeable LiveKit and Pipecat workers for production voice agents.Project2026Telephony Voice SimulatorA local-first test platform for voice agents, AMD, IVRs, PBX routing, live carrier behavior, recordings, and automated grading.Project2026TelephonyA provider-agnostic NestJS backend for SMS, voice, verification, lookup, phone numbers and A2P 10DLC. Product code talks to a capability, not a vendor SDK.Project2026Around the series
GlossaryThe terms behind this series and the rest of the work, each defined in two or three sentences and linked to where it matters.ReferenceUpstream contributionsThe pull requests merged into the Python and Node LiveKit Agents SDKs from this work.Open sourceAll LiveKit pull requestsMerged and open, on GitHub.GitHub