Saga feature docs

What each capability does, how to talk to it, and its current known limits.

Car Parker
Where the car is parked, and when it needs to move for street sweeping. Saga doesn't track parking itself — it reads and phrases what the existing "Car Parker" Home Assistant automation (GPS + SF street-sweeping schedule) already knows.
Home control
Turn lights, switches, fans, and other Home Assistant entities on/off by a natural name — no entity IDs required.
Interaction log
A structured, queryable record of every completed /speak request: what Saga heard, what it said back, which tools fired (if any), and whether a deterministic power response answered it instead of the LLM.
Long-term memory
Durable facts about the user or household, remembered across sessions — distinct from notes/reminders (checklist items) and from the in-session conversation thread (short-term, not a "feature" so much as core plumbing).
Notes & reminders (list manager)
A note is a Home Assistant todo-list item with no due date; a reminder is one with a due date/time. Either kind can live on any HA todo.* list — not just Saga's own — resolved by natural name the same way control_ha resolves a light target.
Persona & voice
Saga speaks as "the radio demon" — a theatrical 1930s broadcaster who *is* the house, not a neutral assistant wearing a character skin. This is the core pipeline every other feature's spoken output runs through (except the notes/reminders tools, which deliberately bypass it — see below).
Timers
Simple countdown timers, named or anonymous.
Wake-word listener
Always-on "Hey Saga" voice activation — the first working hands-free client, as opposed to the push-to-talk run_demon.py client.
Weather
Current conditions and forecast, answered as a plain fact rather than performed in character — so the numbers stay exact.