Best practices for HA automations, helpers, scripts, device controls, and dashboards. TRIGGER THIS SKILL WHEN: - Creating/editing automations, scripts, scenes, or dashboards - Choosing between template sensors and built-in helpers - Writing or restructuring triggers, conditions, or automation modes - Setting up Zigbee button/remote automations (ZHA or Zigbee2MQTT) - Renaming entities or migrating device_id to entity_id - Configuring dashboard cards or picking helpers to feed them - Looking up ca
The Home Assistant Best Practices skill provides guidance for efficiently creating and managing automations, scripts, helpers, device controls, and dashboards within Home Assistant (HA). Its main objective is to prevent common configuration errors and improve maintainability by encouraging the use of native HA constructs instead of custom templates or raw YAML edits. The skill emphasizes safe refactoring, proper handling of entity IDs, and the avoidance of patterns that can lead to silent failures or difficult debugging, helping users build more reliable and future-proof HA setups.
This skill offers a structured workflow for decision-making when creating automations. It covers checking for native conditions and triggers before resorting to templates, selecting appropriate built-in or template helpers, choosing correct automation modes, prioritizing entity IDs over device IDs, and configuring Zigbee buttons and remotes correctly. The documentation also highlights critical anti-patterns, such as using hard-coded values, editing `.storage/` files directly, or misapplying automation modes, providing examples and references for safe alternatives.
Targeted toward Home Assistant users ranging from hobbyists to professional integrators, this skill is particularly useful for those managing complex home automation setups, including multi-device scenarios, motion-sensitive lighting, and dashboard configuration. Use cases include creating new automations, migrating device triggers, renaming entities safely, choosing helper integrations, and ensuring dashboards receive accurate sensor data. It is also valuable for users looking to minimize runtime errors, maintain clean configuration practices, and adopt HA-native solutions over custom templating wherever possible.
Trigger this skill when creating or editing automations, scripts, scenes, dashboards, choosing between template sensors and helpers, renaming entities, or configuring device-specific triggers like Zigbee buttons and remotes.
Direct YAML edits are generally discouraged. Use built-in HA helpers, template helpers via the UI or API, and only write YAML if explicitly required or if no other option is available.
Motion lights with timeouts should use 'restart', sequential processing like door locks use 'queued', independent per-entity actions use 'parallel', and one-shot notifications use 'single'.
Yes, it provides guidance for both ZHA (using event triggers with persistent device_ieee) and Zigbee2MQTT (using device or MQTT triggers for autodiscovered devices).
It helps avoid using Jinja2 templates where native conditions exist, hard-coding values, editing .storage files, using device_id instead of entity_id, and choosing incorrect automation modes.
Quick Setup:
.claude/skills/Repository
homeassistant-ai/skills