Skip to main content
Fastest path: run /scenarios add voice testing to my agent in your coding assistant after installing the /scenarios skill. It detects your transport, picks the matching adapter, and wires it to your deployed agent. To do it by hand, follow the steps below.

How a voice test runs

The user simulator synthesizes a caller, speaks to your agent through its real transport, and reacts to the replies turn after turn. The judge scores the conversation against your criteria, and the run records the audio and a per-segment transcript. Voice Agent Testing

What you can test

Real-audio, multi-turn calls

A synthesized user actually speaks to your agent and reacts to its replies, turn after turn.

Audio effects

Inject background noise, phone-quality codec degradation, or custom WAV clips to test how the agent handles degraded audio.

Interruptions

Script the user barging in mid-reply, with native barge-in or a VAD-driven fallback per adapter.

Latency metrics

Time-to-first-byte and p50/p95 per turn, so you catch a slow agent before a release.

Adapters per transport

Pick the adapter that matches the transport you deployed:
Full constructors, the per-adapter capability matrix, and guidance on choosing an adapter are in the Scenario docs.

Get it running

If you have not used Scenario, start with Getting Started for the basics (API key, your agent’s call() adapter), then come back for the voice specifics.
1

Install Scenario

2

Point at your agent, add a voice user and a judge

Swap BOT_WS_URL for your running bot (or use the adapter for your transport from the table above). The user simulator speaks with a real voice; the judge scores the call against your criteria.
3

Run it

Run your usual test command (pytest or vitest). With LANGWATCH_API_KEY set, the run appears under Agent Testing > Results with full audio playback and per-segment transcripts, and writes a recordings/<scenario>/full.wav to listen back.
Voice scenarios are slower than text: TTS + transport + multi-turn means 30 to 120 seconds per run, so give your test runner a generous timeout.

Full documentation

Voice quick start

The complete five-minute walkthrough with a worked example per adapter.

Audio effects & interruptions

Background noise, codec degradation, custom WAVs, and barge-in recipes.

Capability matrix

Exactly which features each adapter supports.

Runnable examples

Demos per adapter and use case on GitHub.
Last modified on August 30, 2026