USER GUIDE

Run your model in a few steps.

Use the Linux runtime with your signed .wake model and connect its detection event to your own application.

1 · DownloadGet your wake model and the Linux runtime ZIP.
2 · ExtractExtract the runtime ZIP into a folder.
3 · RunPass your model path and start listening.

Files you need

  • wake-runtime-linux-x64.zip — the microphone listener.
  • my-word.wake — your custom signed wake-word model.

A .wake file does not run by itself. Use it with the runtime. Python is not required for normal use.

1. Extract the runtime

cd ~/Downloads
unzip wake-runtime-linux-x64.zip
cd wake-runtime

Keep the wake-runtime executable and _internal folder together.

2. Check the model

./wake-runtime --check-model --model ~/Downloads/my-word.wake

A valid package prints a Model OK message.

3. Start listening

./wake-runtime --model ~/Downloads/my-word.wake

The runtime prints a JSON event when it detects your wake word. It continues listening after every detection. Press Ctrl+C to stop.

{"event":"wake_word_detected","wake_word":"My Word","timestamp":"..."}

Choose a microphone

./wake-runtime --list-devices
./wake-runtime --device 2 --model ~/Downloads/my-word.wake

Connect your application

Read the runtime output and start any action when a detection arrives.

import json, subprocess

runtime = subprocess.Popen(
    ["./wake-runtime", "--quiet", "--model", "./my-word.wake"],
    stdout=subprocess.PIPE, text=True,
)
for line in runtime.stdout:
    if json.loads(line)["event"] == "wake_word_detected":
        print("Wake word detected")

Troubleshooting

No such file or directory

Make sure you are inside the runtime folder and that the model path is correct.

Permission denied

Do not execute the ZIP file; extract it first with unzip.

Wrong microphone

Use --list-devices, then pass the correct number with --device.

Detection is difficult

Select the correct pronunciation, check microphone levels, and use a short but distinctive phrase.