Skip to content

Home Assistant Automation Helper

Client-side: paste an automation YAML for a static health check, or generate trigger/condition/action snippets. Data never leaves the browser. Useful for "it never triggers" and "the action did not run" problems.

Automation YAML health check

Paste an automation YAML (either a single automation or an item under automations:) and the tool runs these heuristic checks offline, without uploading anything:

  • missing trigger — no trigger / triggers, so it never fires
  • empty action — has a trigger but no action / actions, so it does nothing when it fires
  • trigger / condition / action type sanity — enum values are spelled correctly
  • unclosed template braces — {{ }} / {% %} are balanced
  • tab indentation — YAML forbids tabs; offending lines are flagged
  • condition references a trigger variable that may not exist (hint, not an error)

Generate trigger / condition / action snippets

Pick a scenario to get a standard YAML snippet you can paste into the matching slot of an automation:

Common pitfalls

Symptom Cause Fix
Automation never fires missing trigger, or wrong trigger type / entity add a trigger; entity_id must be a real entity
Fires but does nothing empty action or a mistyped entity add an action; double-check the entity name after action:
Action runs only sometimes a condition that is rarely true filter the HA log by this automation to see which condition failed
Motion sensor fires repeatedly trigger missing for add for: 00:00:10 so it fires only after 10 seconds
Template throws TemplateError unclosed {{ }} or wrong variable name use the line hint; the variable name must match the entity attribute exactly
Whole YAML fails to parse tabs, misaligned indentation, or a colon with no space the check flags tab lines; a colon must be followed by a space

Note: this is a static heuristic check. It only validates YAML structure and common spelling / logic pitfalls, and does not simulate Home Assistant runtime (it does not verify whether an entity is online or what a condition currently evaluates to). Treat Home Assistant's Automation validator and home-assistant.log as the source of truth.