XDA-Developers reviewed a $50 ESP32 fridge magnet this week that takes voice notes without touching a cloud service. It’s the same story we keep hearing from tinkerers and privacy-minded households: modern voice assistants are useful, but sending every “hey” to a big-tech cloud is a bad trade. The good news is a full private AI voice assistant now runs on desktop-class hardware. Below are seven apps that make it real.
We picked apps that install on your own machine, keep transcripts local, and cover the full pipeline: wake word, speech-to-text, intent, response, and text-to-speech.
What to look for in a private voice assistant stack
A working private assistant needs to solve five problems at once:
- Wake word detection. Something has to listen constantly without draining CPU.
- Speech-to-text. Whisper is the current standard for local transcription.
- Intent handling. Once the words are transcribed, something has to decide “turn on the kitchen light” vs “set a timer”.
- Language model or scripted response. For open-ended chat, a local LLM. For home automation, a rules engine.
- Text-to-speech. A voice that answers back.
The apps below cover all five, sometimes in combination.
The apps
1. Home Assistant, best for the full private assistant stack
Home Assistant started as a home automation hub and grew a first-class voice assistant this year. Its Assist feature ties together Whisper for speech-to-text, Piper for text-to-speech, and a rules engine for intent. Add a local LLM (via Ollama) and you have a fully offline chatty voice assistant.
Where it falls short: Setup takes patience. The Home Assistant OS install is straightforward, but voice add-ons need configuration for microphones, wake words, and response voices.
Pricing:
- Free, Apache 2.0
- Optional Nabu Casa cloud sub for remote access ($6.50/mo) is not required for voice
Platforms: Windows, macOS, Linux (Home Assistant OS ships on Raspberry Pi and x86 mini PCs)
Download: Home Assistant | GitHub
Bottom line: The best glue holding a private voice assistant together. Everything below plugs into it.
2. Willow, best for hardware-first voice interfaces
Willow is a purpose-built open-source voice assistant that runs on ESP32-S3 boards (like the ESP32-BOX-3) and streams audio to a local inference server on your PC or NAS. It handles wake word, speech-to-text, and intent forwarding to Home Assistant, MQTT, or a REST endpoint.
Where it falls short: Requires dedicated hardware. Not a “install this on my laptop” solution, more a “build the puck” project.
Pricing:
- Free, Apache 2.0
- ESP32-BOX-3 hardware runs around $40
Platforms: Server runs on Linux; clients are ESP32 boards
Download: Willow GitHub | Willow Application Server
Bottom line: The right answer if you want physical voice pucks around the house, not just a laptop mic.
3. Rhasspy, best for offline-first tinkering
Rhasspy is the veteran of local voice assistants. Modular by design, it lets you swap in any wake word engine, any speech-to-text model, any intent handler, and any text-to-speech voice. Its intent recognition supports offline sentence templates so simple commands work with zero LLM.
Where it falls short: Development pace has slowed since Home Assistant absorbed the maintainer. Still works, but community help is thinner than it was.
Pricing:
- Free, MIT
Platforms: Windows, macOS, Linux (Docker recommended)
Download: Rhasspy Docs | GitHub
Bottom line: Use if you want the most control over each stage. Newer users should start with Home Assistant Assist instead.
4. Whisper.cpp, best for local speech-to-text
Whisper.cpp is a C++ port of OpenAI’s Whisper model optimized for CPU inference. It’s the transcription engine most private voice stacks rely on. Model sizes from tiny (~40 MB) to large-v3 (~3 GB) let you trade accuracy for latency.
Where it falls short: Not a whole assistant, just the transcription piece. Needs wake word, intent, and response wrappers around it.
Pricing:
- Free, MIT
Platforms: Windows, macOS, Linux (runs on Raspberry Pi 4 with the small models)
Download: Whisper.cpp GitHub | OpenAI Whisper model card
Bottom line: The speech-to-text default. Every stack below uses it or something similar under the hood.
5. Piper, best for local text-to-speech
Piper is Home Assistant’s neural text-to-speech engine, small enough to run on a Raspberry Pi and good enough to sound natural. Voice packs cover 40+ languages and dozens of accents.
Where it falls short: Not up to Eleven Labs-level expressiveness. Fine for assistant responses, not for audiobook narration.
Pricing:
- Free, MIT
Platforms: Windows, macOS, Linux, Raspberry Pi
Download: Piper GitHub | Voice samples
Bottom line: The go-to local TTS engine. Ships as a Home Assistant add-on.
6. Ollama, best for the LLM brain
Ollama runs open-weight language models locally with a one-line install. Point Home Assistant Assist or any voice stack at Ollama’s API endpoint and your assistant can answer open-ended questions, summarize your inbox, or reason about a smart home state.
Where it falls short: Response latency depends on model size and hardware. A Llama 3.1 8B answer takes seconds on CPU, sub-second on a modern GPU.
Pricing:
- Free, MIT
Platforms: Windows, macOS, Linux
Download: Ollama Site | Ollama Library
Bottom line: Install Ollama when you want your assistant to think, not just execute commands.
7. OpenWakeWord, best for custom wake words
OpenWakeWord trains a wake word model in the browser from a few audio samples. Say “computer” and mean it, or invent a name that isn’t already taken by every big-tech assistant on the market.
Where it falls short: Custom models need enough training samples to avoid false positives. Expect an evening of fine-tuning.
Pricing:
- Free, Apache 2.0
Platforms: Runs anywhere Python and TensorFlow run
Download: OpenWakeWord GitHub | Community wake words
Bottom line: The way to escape “Alexa” and “Hey Google” for good.
How to pick the right one
Start with Home Assistant plus Whisper.cpp and Piper. That’s the reference private-assistant stack in 2026.
Add Ollama when you want conversational responses rather than scripted intents.
Use Willow if you want physical voice pucks (fridge magnet, kitchen puck, bedroom nightstand) instead of just talking to your laptop.
Use Rhasspy if you already know the pieces and want maximum control. Skip it if you’re new; Home Assistant Assist is a friendlier on-ramp now.
Grab OpenWakeWord the moment “Nabu” or “Jarvis” annoys you.
FAQ
Can a private AI voice assistant match Alexa’s speed? On a modern desktop or Mac mini, Whisper.cpp with the small model transcribes in real time and Piper responds in under a second. It’s competitive.
How much power does a local voice stack use? A Raspberry Pi 4 handles the wake-word listening and basic intents on a couple of watts. Adding a local LLM via Ollama pushes it to a small NUC or a workstation.
Do I need internet at all? No. Whisper, Piper, Ollama, Home Assistant, and Rhasspy all run fully offline. Only optional cloud add-ons need connectivity.
What’s the best hardware for a private voice assistant in 2026? A Ryzen mini PC (AMD Strix Halo class) or an Apple silicon Mac mini for LLM-backed assistants. A Raspberry Pi 5 works fine for intent-only setups.
Can I run this on my existing Home Assistant install? Yes. Home Assistant Assist is a first-party feature. Add the Whisper, Piper, and (optionally) Ollama add-ons from the store, wire them together in the Voice Assistants settings, and you’re done.