Your Home
Assistant,
Live
A conversation layer that sits on top of Home Assistant and makes it genuinely talkative — deterministic where it matters, intelligent where it counts. Wake word to answer in a single breath, with a memory that actually remembers your home.
The demo is the real dashboard driving a fictional house — lights wander, weather updates, news rolls in. Every visitor gets their own private copy; the admin console is there too, read-only.
tests green
checks
tools
covered
stages
trip
What this system is for
Home Assistant already owns the hardest part of a smart home: a live, unified graph of every device, sensor and area in the house. What it has never had is a natural voice presence — something household members actually want to talk to, that answers in seconds, and that remembers what happened yesterday.
YourHA.live is that layer. It connects to an existing Home Assistant instance over its WebSocket API, adds a nine-stage natural-language pipeline, long-term memory, and dedicated voice satellite hardware — and turns "a home you configure" into "a home you talk to."
Built as a commercial, deployable product: it targets device classes and standard event shapes rather than any one brand's quirks, so the same stack runs in any Home Assistant environment — whatever lights, locks, media players and sensors that home happens to have.
- What it is
- A self-hosted voice assistant server + satellite hardware that fronts Home Assistant with natural conversation.
- Who it's for
- Households and installers who already run Home Assistant and want a fast, private, talkative control layer.
- How it talks
- Wake word → speech-to-text → NLU → action → speech, end to end in a few seconds on dedicated hardware.
- What it remembers
- Per-speaker conversation memory plus a house activity diary — locks, motion, media, climate, availability.
- Where it runs
- Your LAN. No cloud dependency for core voice; optional serverless GPU for memory consolidation.
- Design stance
- Patterns first, LLM second — deterministic speed for the daily 80%, language-model breadth for everything else.
Built to run with your Home Assistant
The stack targets standard HA domains, device classes and event shapes — so it deploys into any Home Assistant environment, with whatever products and sensors that home already has.
Everything it can do
Coverage is measured in Home Assistant domains and device classes, not brand names — so capability travels with the home, whatever hardware it runs.
Hands-free conversation
Wake-word satellites with on-device detection, streaming speech-to-text, and spoken answers. Conversations hold context per speaker across turns.
Whole-home device control
Lights, switches and fans; covers and blinds; climate and humidifiers; locks and garage doors; the alarm panel; the vacuum. By room, by name, or all at once.
Streaming media, by voice
Spotify and Jellyfin front-ends with explicit routing — play, pause, resume, skip, volume, and "what's playing" across multi-room players.
Answers, not just switches
Environment Canada weather with hourly and 12-period forecasts plus alerts, curated news catalogs, recipes, Wikipedia and web search, and the home's own wiki journal.
It remembers the house
Every speaker gets a conversation memory bank; the home gets an activity diary of locks, motion, doors, media sessions, climate changes and device flaps, rolled into timed digests.
Alarms, timers & reminders
Spoken alarm clocks, kitchen timers and one-shot reminders with a dedicated fast-path handler — no language-model round trip for "ten more minutes."
Reacts to the house, live
An automation engine taps the live HA event stream: motion alerts, device-usage logging, battery-low watch — with notification delivery to panels and devices.
Ask about usage & activity
Recent-motion queries, power usage over time, device-usage history, and open-ended past-activity questions answered from the diary — "what happened around here this morning?"
Operate it from a dashboard
A web admin surface: live device registry, settings manager, entity browser, pattern analytics, selftest runner, backups — plus a keyed, safe restart protocol.
Nine stages between "hey" and "done"
Every utterance races down a waterfall. Fast deterministic layers catch the daily majority in milliseconds; language-model layers catch everything the patterns can't. The first layer that can answer, answers.
"play some jazz in the kitchen" never waits on a language model."is the tv playing", "are the blinds open" — and steer them to the HA pattern layer before any LLM sees them.21 tools, two executors
A dedicated executor for the home-automation loop, a general executor for open-ended questions — both sharing the same tool schemas:
Past, present, or trend?
The handler's prompt rules decide where an answer comes from — so questions hit the right data source:
| Question shape | Source |
|---|---|
| Past activity"did anyone come to the door yesterday?" | recall_house_memory |
| Current state"is the garage open?" | get_entity_state |
| Recent trends"how often does the heater run?" | get_history |
A memory with banks
Hindsight is an in-process memory engine: PostgreSQL with pgvector embeddings, a worker pool for consolidation, and a dedicated memory LLM running on serverless GPU hardware. Every conversation turn and every house digest becomes recallable context.
House activity bank
The home's own diary. Significant events roll up into timed digests — one memory per window, not one per event.
- locks · alarm arm/disarm
- doors & windows · presence
- motion (all three shapes)
- climate setpoint & mode
- scene & script runs
- media sessions
- availability flaps
Speaker banks
Each household member's conversations are retained in their own bank — recalled on a 3-second budget on the voice path, so answers stay fast.
- turn-by-turn retention
- contextual follow-ups
- preference learning
- recall_raw: 10 s broad recall
Consolidation engine
Background workers consolidate, deduplicate and refresh a mental model of each bank on a schedule, using a gpt-oss-class model on serverless GPU infrastructure.
- pgvector similarity recall
- retention + reconciliation
- mental-model refresh
- outage-safe retain buffers
One WebSocket. Total awareness.
The system subscribes to Home Assistant's live event stream and maintains its own caches, so answers come from memory-speed state — while every action flows back through HA's canonical service layer.
Subscribed, not polled
Permanent WebSocket subscriptions to state_changed and call_service events, with automatic reconnect survival — a dropped link heals without losing the tap. State changes update the local cache instantly and feed both the automation engine and the house diary.
Area- and availability-aware
Queries resolve against an entity graph with area mappings and an understanding of device availability. A dead device gets an honest answer — "all media players in the living room are showing as unavailable" — instead of a shrug or a hallucination.
Device classes over brands
Capability is derived from HA device classes and domains, so the same system runs in any home. Real example — motion is understood in all three shapes real installations actually use:
Actions through canonical services
Every command executes via Home Assistant's service layer — the same path as the HA UI and automations — and service calls are tapped too, so scene and script runs are diarized no matter what triggered them.
The operator's endpoints
| Method | Endpoint | Purpose |
|---|---|---|
| POST | /chat | Send a message, get the assistant's answer. The main conversational entry point for satellites and integrations. |
| GET | /health | Liveness plus subsystem status — memory engine, HA link, watchdog. |
| GET | /api/selftest | Run the full 10-check functional selftest on demand; fresh boots run it automatically. |
| GET | /api/devices | Entity snapshot by domain — what the home actually has, right now. |
| GET | /api/admin/devices | Voice-satellite registry: hardware IDs, last-seen timestamps, last IP. |
| POST | /api/server/restart | Keyed, single-shot restart with health-gap verification — operators never double-restart. |
ALL ENDPOINTS AUTHENTICATED WITH X-API-Key · SELF-HOSTED ON YOUR LAN
A satellite for every room
Voice needs dedicated ears. The ESP32-P4 satellite handles wake-word detection on device and streams 24 kHz audio to the server — no cloud microphone, no always-on third party.
- Processor
- ESP32-P4 — dual-core RISC-V, enough headroom for on-device wake-word inference plus the panel UI.
- Wake word
- On-device detection verified by a dedicated 24 kHz wake endpoint check at every boot. Nothing streams until the wake word fires.
- Audio
- I2S digital microphone at 24 kHz, streaming speech-to-text after wake. Round-trip voice latency budget: under five seconds.
- Display
- Panel interface — live status, listening state, and transcribed interaction on the satellite itself.
- Network
- Wi-Fi to the LAN, with reconnect soak testing. Each satellite registers itself in the device registry with heartbeat, last-seen and last-IP.
- Fleet
- Multiple satellites, one server. Session and memory are per speaker, not per device — walk room to room, keep talking.
What the satellites talk to
Assistant server
FastAPI application: the nine-stage NLU pipeline, tool executors, automation engine, house-events diary, notifications, admin dashboard. Persistent store in SQLite with rotating logs and scheduled backups.
Hindsight engine
In-process memory system: PostgreSQL with pgvector, worker pool for consolidation and retention, per-speaker and house banks, recall budgets tuned for voice.
Model serving
Chat and router models for the NLU stages, plus a dedicated memory LLM (gpt-oss-class) on serverless GPU infrastructure for consolidation — optional, and swappable.
See it running
No screenshots — the live dashboard itself, embedded below and driving a fictional house in real time. Click into it, drag its cards around, page its tabs; the house keeps living while you do. Below it, faithful recreations of the satellite panel and dashboard chrome, built from the actual firmware and dashboard source.
Feels like 1.8° · Wind 11 km/h
Fri 8° / −1° · Sunny
Sat 11° / 2° · Cloudy
Feels like 1.8°
Feels like 1.8° · Wind 11 km/h W
Prove it, every boot
A voice assistant that fails silently is worse than none. Every fresh boot runs a 10-check functional selftest — real audio, real models, real database — before the system declares itself nominal.
TIMINGS FROM A LIVE FRESH-BOOT SELFTEST · STATUS "PASSED" REQUIRED BEFORE NOMINAL
2,612 tests, every change
The full suite runs before anything ships — NLU gate reachability, pattern coverage, diary semantics, memory retention, housekeeping. The count only goes up.
Loop & HA health
An asyncio loop watchdog tracks event-loop lag with stall thresholds, and a dedicated HA health monitor watches the Home Assistant link state — armed, and reporting.
Keyed restart protocol
Restarts are single-shot and API-keyed, with health-gap verification and regression probes after boot. Memory buffers survive outages — digests are only dropped from the buffer once Hindsight confirms the retain.
Where it's headed
Each increment ships live, verified on real hardware, with the full regression suite green — the same discipline that got the system here.
Licensing — 60-day evaluation & license keys
The commercial spine, product side: a 60-day full-featured evaluation that starts at first boot, $25/year license keys signed with Ed25519 and verified offline — the server never phones home. An expired license ends updates and support; it never stops the household from talking.
Endpoint coverage & media-state routing
Closed the reachability gap between pattern coverage and the pre-router gate: state queries like "is the tv playing" now reach the HA pattern layer, with availability-aware answers when the whole device pool is down. Regression-probed on every restart.
Roadmap 3 — House events → Hindsight memory
The home keeps a diary. Significant HA events — locks, alarm, doors, motion in all three shapes, presence, climate changes, scene and script runs, media sessions, availability flaps — roll up into 15-minute digests in a dedicated memory bank. Ask "what happened around the house this morning" and the recall tool answers from it.
Roadmap 4 — Proactive alerts
The same event tap that feeds the diary becomes an intelligence layer: contextual, non-spammy alerts that notice patterns — a door left open at night, unusual motion while away, a device that keeps flapping — and speak up when it actually matters.
Roadmap 5 — Camera intelligence
Vision on top of the same architecture: camera feeds as another event and memory source — who's at the door, what the driveway camera saw — recalled by voice alongside the rest of the home's history.
Get YourHA
Just talk to your home. It listens, remembers, and gets it done — for less than the price of a smart bulb a year. Register, download, and live with the real thing for 60 days before you pay anything.
A year of updates, support and continued development — for about the price of a take-out dinner. No ads, no data harvesting, no upsells; the license is the entire business model.
What you need
Home Assistant
Any running Home Assistant instance. The assistant connects over its WebSocket API with a long-lived access token and reads areas, devices and entities from what's already there — no re-pairing, no vendor lock.
A server on your LAN
An always-on machine — a mini-PC is plenty. Runs the FastAPI assistant server with SQLite; the Hindsight memory engine adds PostgreSQL with pgvector. GPU optional, cloud optional.
Voice satellites
ESP32-P4 satellites put wake-word detection on-device and stream 24 kHz audio to the server. Start with one in the kitchen — the web dashboard covers the rest until the house grows on you.
Your voice stays home
Wake-word detection runs on the satellite; speech-to-text, reasoning and speech run on your server. Core voice never leaves the LAN. The one optional exception is memory consolidation, which can use serverless GPU — decline it and everything still runs locally. License verification is offline. There is no telemetry, no account portal, no phone-home.
Included with a license
A license year includes email support and every update that ships inside it. Evaluation users get the documentation and the live demo. The support address arrives with your license email — the storefront opening is the last step before downloads go live.
Asked, answered
Is the demo the real product?
Yes — yourha.live/dashboard is the actual dashboard driving a fictional house in real time. Every visitor gets a private copy of the house, and the admin console is right there too, read-only.
Why a license, not a donation?
Predictable funding buys predictable work. A $25/year community-supported license means updates and support are budgeted, not hoped for — and it keeps the business model out of your data.
What happens if I stop paying?
Nothing dramatic. The assistant keeps running — talking, remembering, controlling the house. Updates and support pause until the license is renewed.
Does it need the internet?
For core voice, no — the whole conversation path runs on your LAN. Internet is used for what you'd expect: weather, news and web answers when you ask for them, plus the optional serverless GPU for memory consolidation.
Can I move it or rebuild?
Yes. The license is tied to your email, not a dongle or a machine fingerprint — re-download from your link and install on your hardware.
When can I download it?
The storefront — registration, download delivery and PayPal checkout — is the final piece, in active build now. The live demo above is the full product experience today.