Context-Gated Voice Commands – Offline
A Rust library and CLI that infers the current situation from audio features and lets through only the voice commands that fit it.

One-time purchase.
What it is
Context-Gated Voice Commands is a Rust library and CLI that estimates which phase a scene is in (a lesson, a meeting, a shop floor) from acoustic features and cues, second by second, and decides whether each voice command may run, needs a wake word, or is blocked. It runs offline and ships with classroom, meeting and retail presets plus a seeded simulator.
Quick start
cargo build --release
./target/release/scene-engine simulate --preset all --sessions 100 --seed 20261018 --out out
cat out/report.mdCompared with
| Tool | Type | Notes |
|---|---|---|
| Picovoice Rhino | On-device speech-to-intent | Free non-commercial (1 MAU); Foundation $6,000/year |
| Research papers | Methods only | No packaged product |
| Hobby voice-command repos | Free open source | Fixed command grammars, no situation model |
| Context-Gated Voice Commands | Rust library + CLI, source included | $29 one-time; gates commands by the detected phase, offline |
FAQ
How do I reduce false voice command triggers in a noisy room?
Gate commands by context. The engine tracks which phase is active and, per phase, allows a command, requires a wake word or blocks it.
How does it detect the situation?
A probabilistic filter over phases with configured transitions and acoustic profiles (voice count, loudness, overlap, main-speaker share, media playing), plus optional spoken or app cues, updated once per second.
Can I model my own situations?
Yes. Define phases, durations, transitions, acoustic profiles and command rules in a TOML file, validate it with scene-engine validate, and simulate it. Classroom, meeting and retail-store presets are built in.
How do I use it in my app?
Add it as a Rust path dependency, feed one observation per second to SceneFilter and call gate::decide for each command. The CLI can also stream JSONL observations in and phase snapshots out.
Does it need the cloud or Python?
No. It runs locally with Rust 1.85 or newer, with no account, API key or Python. One-time purchase, full source included.
How do I stop background talk from triggering voice commands?
Gate commands by context. The engine estimates which phase the scene is in (lesson, meeting, shop floor) second by second from acoustic features and cues, and lets a command run, asks for a wake word, or blocks it. It runs offline as a Rust library and CLI.
Which tier should I buy?
Personal/Research is for one person, and that includes shipping the engine inside your own paid or free apps as compiled code. Commercial is for a company or organisation, where more than one person uses it, and adds priority email support. Neither lets you share the source itself. Both include the full source. One-time purchase.
What do I get after paying?
A zip with the full source, README and runnable demo. Polar shows the download right after checkout and in the receipt email.
One-time purchase.

