Home Assistant Automation — Claude Code skill
This skill controls Home Assistant devices, builds automations, and manages scenes. Use it for lighting, climate, security, energy, and media workflows.
npx skills add claude-office-skills/skills --skill home-assistant-automation -a claude-code
npx skills add claude-office-skills/skills --skill home-assistant -a claude-codeWhat Home Assistant Automation does
Home Assistant Automation provides device commands and YAML workflow patterns for Home Assistant. It can turn lights on or off, set thermostat values, control media players and locks, monitor sensor states, and return event information.
The skill includes automation templates with triggers, conditions, actions, and delays. It also covers scenes such as movie_night and good_night, voice intents, energy monitoring, and security flows that capture a camera snapshot and send a notification.
A connected homeassistant-mcp server is required, with ha_service_call, ha_state_get, ha_automation, and ha_scene tools. Check that MCP connection first, because device actions depend on it.
What it helps with
- turn on lights from a time or sensor trigger
- build morning and good-night home routines
- switch climate settings when everyone leaves
- define a movie-night scene
- send a camera snapshot after motion detection
Example prompts for the agent
- Create a
morning_routinethat triggers at06:30:00, turns onlight.bedroom, sets the temperature, and startsnews_briefing. - Define a
good_nightscene that turns offlight.all_lights, lockslock.all_locks, and arms the home for night. - When
binary_sensor.motion_frontturns on, capturecamera.front_doorand send a mobile notification with the image.
How to install Home Assistant Automation
1Skills CLI (Vercel)
npx skills add claude-office-skills/skills --skill home-assistant-automation -a claude-codenpx skills add claude-office-skills/skills --skill home-assistant -a claude-code2Manually: put the files in place
~/.claude/skills/home-assistant/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/home-assistant/
1Skills CLI (Vercel)
npx skills add claude-office-skills/skills --skill home-assistant -a codex2Manually: put the files in place
.agents/skills/home-assistant/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add claude-office-skills/skills --skill home-assistant -a cursor2Manually: put the files in place
.cursor/skills/home-assistant/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install claude-office-skills/skills home-assistant2Manually: put the files in place
.github/skills/home-assistant/SKILL.md1Skills CLI (Vercel)
npx skills add claude-office-skills/skills --skill home-assistant -a gemini-cli2Platform CLI
gemini skills install https://github.com/claude-office-skills/skills --path home-assistantManually: put the files in place
.devin/skills/home-assistant/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add claude-office-skills/skills --skill home-assistant -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about Home Assistant Automation
How do I install Home Assistant Automation in Claude Code?
Run npx skills add claude-office-skills/skills --skill home-assistant-automation -a claude-code, then run npx skills add claude-office-skills/skills --skill home-assistant -a claude-code. After installation, open ~/.claude/skills/home-assistant/SKILL.md.
What does Home Assistant Automation do?
It helps define Home Assistant device commands, create automations and scenes, monitor states, and configure voice intents.
What does Home Assistant Automation need to work?
It needs a connected homeassistant-mcp server with the ha_service_call, ha_state_get, ha_automation, and ha_scene tools.
Source text
SKILL.md · MIT
---
name: Home Assistant Automation
description: Automate smart home devices and create intelligent home automation workflows with Home Assistant
version: 1.0.0
author: Claude Office Skills
category: smart-home
tags:
- home-assistant
- iot
- smart-home
- automation
- devices
department: operations
models:
- claude-3-opus
- claude-3-sonnet
- gpt-4
mcp:
server: homeassistant-mcp
tools:
- ha_service_call
- ha_state_get
- ha_automation
- ha_scene
capabilities:
- Device control
- Automation creation
- Scene management
- State monitoring
input:
- Device commands
- Automation triggers
- Scene configurations
- Sensor data
output:
- Device states
- Automation status
- Scene activations
- Event logs
languages:
- en
related_skills:
- calendar-automation
- slack-workflows
---
# Home Assistant Automation
Automate smart home devices and create intelligent automation workflows.
## Core Capabilities
### Device Control
```yaml
device_commands:
lights:
- turn_on:
entity_id: light.living_room
brightness_pct: 80
color_temp: 350
- turn_off:
entity_id: light.all_lights
climate:
- set_temperature:
entity_id: climate.main_thermostat
temperature: 72
hvac_mode: heat
media:
- media_play_pause:
entity_id: media_player.living_room_tv
- volume_set:
entity_id: media_player.sonos
volume_level: 0.5
```
### Automation Templates
```yaml
automations:
morning_routine:
trigger:
- platform: time
at: "06:30:00"
- platform: state
entity_id: binary_sensor.alarm
to: "off"
condition:
- condition: state
entity_id: person.owner
state: "home"
action:
- service: light.turn_on
target:
entity_id: light.bedroom
data:
brightness_pct: 30
transition: 300
- service: climate.set_temperature
data:
temperature: 72
- delay: "00:05:00"
- service: media_player.play_media
data:
media_content_type: music
media_content_id: "news_briefing"
away_mode:
trigger:
platform: state
entity_id: group.family
to: "not_home"
for: "00:10:00"
action:
- service: climate.set_preset_mode
data:
preset_mode: away
- service: light.turn_off
target:
entity_id: all
- service: lock.lock
target:
entity_id: lock.front_door
```
### Scenes
```yaml
scenes:
movie_night:
entities:
light.living_room:
state: on
brightness: 20
color_temp: 500
light.tv_backlight:
state: on
rgb_color: [0, 0, 255]
media_player.soundbar:
state: on
source: "TV"
cover.blinds:
state: closed
good_night:
entities:
light.all_lights:
state: off
lock.all_locks:
state: locked
alarm_control_panel.home:
state: armed_night
climate.thermostat:
temperature: 68
```
### Voice Commands
```yaml
voice_intents:
- intent: "Turn on the lights"
action: light.turn_on
entity: light.all_lights
- intent: "Set temperature to {temp}"
action: climate.set_temperature
entity: climate.thermostat
data:
temperature: "{{ temp }}"
- intent: "I'm leaving"
action: script.away_mode
```
## Integration Examples
### Energy Monitoring
```yaml
energy_dashboard:
sensors:
- sensor.electricity_usage
- sensor.solar_production
- sensor.battery_level
automations:
- name: "Off-peak charging"
trigger:
platform: time
at: "00:00:00"
action:
service: switch.turn_on
entity_id: switch.ev_charger
```
### Security System
```yaml
security:
motion_detection:
trigger:
platform: state
entity_id: binary_sensor.motion_front
to: "on"
condition:
- condition: state
entity_id: alarm_control_panel.home
state: armed_away
action:
- service: camera.snapshot
entity_id: camera.front_door
- service: notify.mobile_app
data:
message: "Motion detected at front door"
data:
image: "/local/snapshots/front_door.jpg"
```
## Best Practices
1. **Entity Naming**: Use consistent naming conventions
2. **Groups**: Organize devices logically
3. **Conditions**: Always add appropriate conditions
4. **Notifications**: Don't over-notify
5. **Testing**: Test automations thoroughly
6. **Backup**: Regular configuration backups
© Claude Office Skills · MIT · claude-office-skills/skills