Finish bootstrap uv before PM replaces its store entry. Keep failure receipts stdlib-only and align the cryptography requirement and override with the locked version. Let bundle builders declare launch paths and update ownership. Remove payload discovery, Store probing, and the unused develop command. Derive Nix Python from the PM lock and share its provenance stamp. Document setup, activation, optional dependencies, and distribution ownership. Targeted Windows tests, relocated runtime launches, Electron bundling, and bilingual docs builds pass. Native Nix and signed-package acceptance remain CI gates.
Bundled wake-word models
hey_hermes.tflite — the on-device "Hey Hermes" hotword model. This is the
default detector for the wake word feature (see
website/docs/user-guide/features/wake-word.md); no training or setup is
required to say "hey hermes".
- Engine: pyopen-wakeword
(rhasspy's maintained fork of openWakeWord; Apache-2.0). Runs TFLite via a
bundled
tensorflowlite_clibrary — no onnx, no runtime download. - Provenance: trained with the openWakeWord training pipeline (synthetic
TTS-generated speech), which produces the
.tfliteartifact. Redistribution is permitted under the openWakeWord license. - Label: the model registers as
hey_hermes(matches the filename). - Runtime: the
pyopen-wakewordwheel includes the shared melspectrogram and embedding models. Starting this engine requires no model download. Identical model files alone do not establish identical scores across inference engines or platforms.
To use a different phrase, point wake_word.openwakeword.model at an
absolute path to a compatible .tflite model. Hermes does not download
models by name, and this engine does not load .onnx files. See the
wake-word docs for the training guide and platform limits.