Home Assistant + NATS
HATS
Stream Home Assistant events into NATS in real time. React with subscriber services — no polling, no direct HA dependency.
Home Assistant ──ws──▶ HATS ──pub──▶ NATS
                          └──▶ HTTP API (cached state, timers, schedules, commands)
Features
Real-time Streaming
State Changes
Entity state changes stream instantly to NATS subjects — no polling required.
Cached State
Fast Reads
Entity state cached in JetStream KV — subscriber reads never hit Home Assistant.
Event-driven
Timers & Commands
Countdown timers, cron schedules, and HTTP-to-NATS command bridge.
SubjectFires when
homeassistant.states.{domain}.{entity}.{state}Entity state changes
homeassistant.attributes.{domain}.{entity}.{state}Attributes change, state unchanged
homeassistant.zha.{device_ieee}ZHA device event
homeassistant.zwave-scene.{device_id}Z-Wave JS scene
homeassistant.nfc.{tag_id}NFC tag scanned
homeassistant.timers.{name}.finishedTimer expired
schedules.{name}Cron schedule fired
command.{name}HTTP command received
Read the docs Admin →
Alpha software · Breaking changes may occur