v0.12.0
Hands-free wake-word activation: idle, listen for a spoken phrase, and
start dictation or the assistant with no key — locally, on the ONNX
runtime already in the binary, and auto-served over Wyoming for Home
Assistant.
Added
- Optional always-on wake-word activation (
[wakeword], default
off). Fono can idle and listen for a spoken wake phrase, then start
dictation or the assistant on the same path the hotkey uses — no key,
no hands. Detection runs locally on the ONNX runtime already in the
binary via openWakeWord,
so it adds no new dependency and no measurable size, and your audio
never leaves the machine while idle on the default path. The listener
suspends during any active recording or assistant turn and resumes
when Fono goes idle. Ships with a clean Apache-2.0 default phrase as
the only enabled model, plus an opt-in community phrase catalog that
is downloaded on demand, never bundled, and shows its NonCommercial
license as a notice when you pick one. When the LAN Wyoming server is
enabled, Fono automatically serves wake detection over it — exactly
like it serves STT and TTS, with no extra switch — so Home Assistant
discovers Fono as a drop-in wake-word provider and detection runs on the
Fono box with audio staying on the machine. Opt-in and off by default,
behind an explicit "idle mic audio leaves the machine over the LAN"
warning, Fono can instead forward audio to an external
wyoming-openwakewordservice.fono doctorreports the wake-word
configuration and that privacy warning. The clean-licensehey_fono
default model is not yet hosted, so the local always-on listener stays
off until you enable it; the auto-served Wyoming path uses the community
hey_jarvismodel as a temporary fetchable default in the meantime.
Engine and licensing rationale is in ADR 0012.
Full Changelog: v0.11.1...v0.12.0