home-assistant

star 1

Guidance for Home Assistant configurations. Use when writing automations, dashboards, or service calls for HA.

racurry By racurry schedule Updated 12/6/2025

name: home-assistant description: Guidance for Home Assistant configurations. Use when writing automations, dashboards, or service calls for HA.

Home Assistant Skill

Fetch official docs for current syntax - HA evolves rapidly:

Quality Checklist

  • Use modern service syntax: target: + data:, not entity_id: at root
  • Automations have unique id and explicit mode
  • Secrets via !secret, never hardcoded
  • Templates tested in Developer Tools → Template
  • Check entity availability for unreliable devices

Common Pitfalls

Legacy Syntax

Claude may generate deprecated patterns. Use modern syntax:

# Wrong: deprecated
service: homeassistant.turn_on
entity_id: light.porch

# Right: modern
service: light.turn_on
target:
  entity_id: light.porch

Automations need id and mode:

automation:
  - id: porch_light_sunset
    alias: "Porch light at sunset"
    mode: single  # or restart, queued, parallel
    trigger:
      - platform: sun
        event: sunset
    action:
      - service: light.turn_on
        target:
          entity_id: light.porch

Missing Availability Checks

Unreliable devices need guards:

action:
  - choose:
      - conditions:
          - condition: template
            value_template: >
              {{ states('light.unreliable_bulb') not in ['unavailable', 'unknown'] }}
        sequence:
          - service: light.turn_on
            target:
              entity_id: light.unreliable_bulb

Trigger Spam

State triggers fire on every change. Use thresholds or debounce:

# Threshold: only fires when crossing
trigger:
  - platform: numeric_state
    entity_id: sensor.temperature
    above: 75

# Debounce: must stay in state
trigger:
  - platform: state
    entity_id: sensor.temperature
    for:
      minutes: 5

Hardcoded Values

Use templates for dynamic content:

# Bad
message: "Front door opened"

# Good
message: "Front door opened at {{ now().strftime('%I:%M %p') }}"
Install via CLI
npx skills add https://github.com/racurry/neat-little-package --skill home-assistant
Repository Details
star Stars 1
call_split Forks 0
navigation Branch main
article Path SKILL.md
More from Creator