Automations

A Node-RED-style flow editor - drag nodes onto a canvas, wire them together, and Athena runs the result whenever it's triggered.

The Automations list

The same card/list view toggle, search box, and Enabled/Disabled filter every integration device list already has (see e.g. MOS) - card view is the default. Each automation can carry a short, optional description of what it does, editable right below the name field in the editor itself; it shows as a subtitle under the name in both views, and the search box matches it alongside the name.

Node types

  • State Trigger - fires when a connected device's entity changes (via ESPHome's own live connection).
  • Time Trigger - fires on a wall-clock schedule.
  • Condition - gates the flow on an entity's current value.
  • Action - controls an entity on a connected device.
  • Delay - waits before continuing the flow.
  • AI Action - hands a plain-language instruction to your AI Assistant, with separate whitelists for which entities it can see and which ones it's actually allowed to control.
  • Notify - sends a push notification to your phone through the Notify integration's own ntfy server - topic, title, message, and priority.
  • Send Message - tells some other system something happened, distinct from Notify above (always a push to your own phone) - currently publishes an arbitrary topic/payload to MQTT, with more protocols planned. The message can embed a live value via the literal placeholder {value} (e.g. {"temperature": {value}}) - defaults to whatever value fired the flow's own trigger, or pick a specific, different entity instead.
  • Speak - synthesizes text through your configured AI Assistant's own TTS server and plays it through a chosen media player, the same way a voice satellite's own spoken reply already does. Leave the message blank to speak whatever value fired the trigger instead of a fixed line - the natural fit for a plugin-reported entity, with no separate templating step needed to get a dynamic value into the spoken text.
  • Wake Device Screen - point it at any device running the Athena Android app (Companion App) and, when the flow runs, that device's screen wakes and its kiosk blackout clears - for a motion / presence / doorbell automation that should light up a wall panel. Delivered over a live connection, so it's near-instant. Optionally waits a few seconds for the panel to confirm the screen came back on.
  • Blackout Device Screen - the counterpart to Wake Device Screen: drops the kiosk blackout on the panel you point it at. For "dim the panel once there's been no motion for a while", put a Delay node before it and set the delay there - freely adjustable. Can also wait for the panel to confirm it went dark.
  • Debug - logs a value to the run's activity feed, without affecting anything.

Condition and Action nodes show both the device and the specific entity on it (e.g. "MultiSensor Backyard: SHT41 Temperature above 20"), not just the device name, so a flow with several nodes against the same device stays readable.

Entity pickers

Every node that references an entity picks it from your currently connected devices - nothing to type by hand. A Source selector on State Trigger/Condition/Action nodes reaches beyond native devices to any other connected integration - MQTT, Shelly, MOS, Unraid, iRobot, Tuya, IKEA, TVs, a Companion App phone or tablet's own sensors (battery, screen state, Do Not Disturb, network - reporting must be on), and even Athena's own System info (its own version/update-available/restart/ update, alongside CPU/memory/disk) are all wired in by default, the same as ESPHome - a new integration doesn't need any special case to show up here.

State Trigger/Condition's own comparison control adapts to what you picked: a Dashboard Button entity gets a "Tap action" dropdown (Any press/Single tap/Double tap/Triple tap/Hold) instead of a free-text value field, and any other button-domain entity (e.g. System info's own Restart/ Update Athena) just says "Fires on any press", since a press-only entity has no value to compare against in the first place.

Watching a run

Each automation run is recorded and broadcast live, so you can watch a flow fire in real time from a debug panel while testing it - useful for confirming a Condition actually evaluated the way you expected before relying on it.