From c01c3f4b28773ad32ec8a87ae817e0c6f10c43d7 Mon Sep 17 00:00:00 2001 From: Brooklyn Nicholson Date: Sat, 27 Jun 2026 11:38:55 -0500 Subject: [PATCH] =?UTF-8?q?chore(voice):=20tidy=20wake=5Fword=20=E2=80=94?= =?UTF-8?q?=20drop=20dead=20SURFACES,=20unused=20np,=20stale=20docstring?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tools/wake_word.py | 15 ++++++--------- 1 file changed, 6 insertions(+), 9 deletions(-) diff --git a/tools/wake_word.py b/tools/wake_word.py index b899a56d06f..641a20bda81 100644 --- a/tools/wake_word.py +++ b/tools/wake_word.py @@ -1,10 +1,10 @@ -"""Wake-word ("Hey Hermes") detection — hands-free session trigger for the CLI. +"""Wake-word ("Hey Hermes") detection — hands-free session trigger. A lightweight, always-on hotword listener that fires a callback when a wake -phrase is spoken — the "Hey Siri" / "Alexa" pattern. The CLI uses it to start a -fresh voice session without touching the keyboard: say the wake word, Hermes -opens the mic, captures one utterance via the existing voice pipeline, and -answers. +phrase is spoken — the "Hey Siri" / "Alexa" pattern. Shared by the CLI, TUI, and +desktop GUI (one of them owns it, gated by ``wake_surface_enabled``): say the +wake word, Hermes opens a fresh session and captures voice via the existing +pipeline, then answers. Two engines, both fully on-device (no audio leaves the machine for detection): @@ -56,9 +56,6 @@ _DEFAULTS: Dict[str, Any] = { "start_new_session": True, } -# Surfaces that can host the listener. "auto" means whichever one is running. -SURFACES = ("cli", "tui", "gui") - def load_wake_word_config() -> Dict[str, Any]: """Return the ``wake_word`` config section, shape-guarded to a dict.""" @@ -347,7 +344,7 @@ class WakeWordDetector: def _run(self) -> None: try: - sd, np = _import_audio() + sd, _ = _import_audio() except (ImportError, OSError) as e: logger.error("wake word: audio libraries unavailable: %s", e) return