Before, coding agents had no way to actually verify if the voice agents they ship work.
I built a CLI that lets your agent place real calls to voice agents on Vapi, LiveKit, and other platforms so they can autonomously fix broken logic with better context.
> Runs on Haiku 4.5 and speaks via Deepgram (configurable persona + 7 languages)
> Forwards every event to stdout - STT transcript, tool calls, transfers, costs, provider warnings
> Measures call from inside - mouth-to-ear latency at p50-p99, per-turn TTS/STT/LLM, audio quality (clipping, SNR, drops)
All open source.
npx vent-hq@latest init - no setup needed. Your agent auto-authenticates and generates an access token.
@ArtemKozlovets 50/50, a lot of bugs with audio buffers in turn taking specifically - each platform has a different way of connecting and managing audio flows
Before, coding agents had no way to actually verify if the voice agents they ship work.
I built a CLI that lets your agent place real calls to voice agents on Vapi, LiveKit, and other platforms so they can autonomously fix broken logic with better context.
> Runs on Haiku 4.5 and speaks via Deepgram (configurable persona + 7 languages)
> Forwards every event to stdout - STT transcript, tool calls, transfers, costs, provider warnings
> Measures call from inside - mouth-to-ear latency at p50-p99, per-turn TTS/STT/LLM, audio quality (clipping, SNR, drops)
All open source.
npx vent-hq@latest init - no setup needed. Your agent auto-authenticates and generates an access token.
CI for voice AI is essentially done.
Parallel LiveKit calls now work - as for every other platform adapter. Iterate 10x faster and load test from your editor.
Before, coding agents had no way to actually verify if the voice agents they ship work.
I built a CLI that lets your agent place real calls to voice agents on Vapi, LiveKit, and other platforms so they can autonomously fix broken logic with better context.
> Runs on Haiku 4.5 and speaks via Deepgram (configurable persona + 7 languages)
> Forwards every event to stdout - STT transcript, tool calls, transfers, costs, provider warnings
> Measures call from inside - mouth-to-ear latency at p50-p99, per-turn TTS/STT/LLM, audio quality (clipping, SNR, drops)
All open source.
npx vent-hq@latest init - no setup needed. Your agent auto-authenticates and generates an access token.
Your coding agent places a call, reads back the full trace, patches the agent, and calls again. It keeps looping until the voice agent passes (default behavior, can opt out).
All runs are also auto-persisted locally, so your agent can diff them whenever it needs to check for regressions.
A bit of engineering context.
The caller has to behave like a real user, or the coding agent ends up fixing bugs that donโt matter. Per turn, Haiku picks one of four decision modes: continue, wait, close, or hang up.
On the listening side, Ventโs own VAD detects when the agent stops speaking. Itโs a vendored TEN VAD compiled to WebAssembly, in-process, no external service. Two filters in front: it ignores quiet background noise, and it waits for two consecutive voice frames before deciding itโs speech (a single noise blip canโt fool it).
The silence threshold isnโt fixed. It adapts per turn (200โ3000ms) based on how the agent responds in order to not cut the response mid sentence or inflate latency with silence.