An open standard for voice agents is released: UNMUTE//
Pick a voice agent platform today and your agent stays there. Build on Pipecat and it won't run on LiveKit Agents without a rewrite, and the reverse is just as true. Whatever a team learns about its callers ends up encoded in one vendor's prompts and one framework's plumbing. The voice IP belongs to the stack, not to the company that built it.
UNMUTE//, released September 16, is an open, declarative standard for voice agents built to fix that. It was created at SLNG and is published under the MIT license as a separate repository with an open source CLI.

SLNG Team
Team

Declare your agent once, run anywhere
The UNMUTE// package holds everything that makes the agent what it is: the steps it takes, what each step is allowed to see, what runs before the call connects, how long it waits, which models it uses and where they live, and the compliance rules it has to respect.
Run slng compile and the package becomes a working agent on Pipecat, LiveKit Agents or SLNG. Cascade or speech to speech. In whichever region the team chooses.
The framework, the runtime, the cloud and the region are treated as infrastructure. Swap any of them and the agent does not change. It stays in version control, reviewed like code, owned by the company that wrote it.
The LLM is a resource, not the spine
Most voice agents make the language model responsible for the whole call: which tool to call, what data flows where, when to move to the next step, what to do when something fails. That is why they demo well and misbehave in production.
Behaviour is spread across prompts, framework code, provider integrations and decisions the model makes at runtime.
Change the model and the behaviour drifts. Change a compliance rule and someone updates every deployment by hand.
Unmute moves those decisions into the package, where the compiler enforces them. The model is called when a step needs it and given only the context that step requires. Prompts get shorter, tokens per turn fall, latency follows.
Anything read-only that the agent could know before the greeting, such as the caller's number or their record, is fetched before the call, which removes whole turns. Variables carry declared scope, so a value cannot reach a prompt that shouldn't see it. If it does, the build fails.
Determinism is a dial
Teams have been offered two positions: a rigid IVR tree, or one long prompt and hope. Both break at scale. Unmute lets determinism vary turn by turn inside the same call. A regulated disclosure is locked. An open ended objection is left to the model. The team decides where the dial sits for each step, and the compiler holds it there.
Compliance travels with the agent
Compliance boundaries live in the package. Update them once, recompile, and every deployment inherits the change. For regulated markets, where SLNG runs most of its infrastructure across fifteen sovereign regions, that turns a per deployment audit into one reviewable file.
What ships today
The UNMUTE// standard under MIT, the open source CLI, and three compile targets: Pipecat, LiveKit Agents and SLNG.
Skills for coding agents ship with the repository, so a full package can be generated from a plain language description and compiled without designing the structure by hand.
"Standards outlive platforms," said Luke Miller, SLNG's co-founder. "UNMUTE// is open. Take it, build with it, and tell us what we missed."
The specification, CLI and examples are at unmute.ai and on GitHub.
Get all of our updates directly to your inbox. Sign up for our newsletter.