teach your AI home assistant
WoowTech Skill Handbook

Teach your AI agent how to work with Home Assistant

A skill is a playbook for an AI agent: a folder containing SKILL.md and, optionally, supporting files. Install one in a compatible harness such as Claude Code, OpenClaw, Cursor, or Codex, and the agent can consult it when the relevant task arises. This handbook presents 10 Home Assistant skills and 6 popular collections, along with installation, compatibility, authoring, and safety guidance.

Research snapshot: Collection sizes, star counts, and maintenance status reflect a public GitHub snapshot taken on 2026-08-20. They will change over time, so check the original repository again before installing anything.

What is a skill, and why install one?

Think of an AI agent such as Claude, Codex, Gemini, OpenClaw, or Hermes as a capable new colleague. It can discuss many home systems, but it cannot infer your entity names, area structure, existing Blueprints, or Zigbee topology. A skill is a handover document for the agent: Markdown instructions explaining when and how to perform a particular kind of work.

  • Install a community skill: Existing projects cover Home Assistant administration, ESPHome firmware, dashboard design, Blueprint imports, and custom integration development.
  • Write your own: Package a household-specific workflow, such as a laundry reminder or weekly energy report. See the SKILL.md specification for a starting point.

A skill is different from an Assist voice assistant, a Home Assistant integration, or a Blueprint. You install it in the AI agent’s environment, not in Home Assistant. Installation alone does not modify Home Assistant, although the skill may direct an authorized agent to do so.

Install a skill in 3 minutes

Anthropic publishes the SKILL.md format in anthropics/skills. SKILL.md-based skills are used with Claude Code, Codex, Gemini CLI, Cursor, OpenCode, OpenClaw, Hermes, and other agent harnesses, but support and installation methods differ. Check the current documentation for your harness, then follow this general process:

  1. Open the Skills or Plugins interface

    Depending on the harness, this may be a settings panel, a Skills screen, or a local directory such as ~/.codex/skills/.

  2. Enter the package location

    Package syntax is not standardized. These examples show forms that a harness may support; confirm the required syntax in its documentation:

    # GitHub repository (most common)
    git:github.com/komal-SkyNET/claude-skill-homeassistant
    
    # Pin a version (tag or commit; recommended in production)
    git:github.com/anthropics/skills@v1.0.0
    
    # npm package
    npm:@scope/some-skill
    
    # Local path (your own skill or a subdirectory cloned from a monorepo)
    ~/skills/my-ha-skill
  3. Start a new session and verify the skill

    Many harnesses load skills when a session starts. Open a new session, ask which skills are loaded, and confirm that the one you installed appears.

  4. Review the skill before using it

    Read SKILL.md in the repository yourself. You can also ask the agent to summarize it without running commands, then identify any requested tools, network access, or Home Assistant changes. This is the first safety rule.

Tip: A monorepo such as anthropics/skills or tonylofgren/aurora-smart-home may contain several SKILL.md files. If you need only one, clone the repository and point your harness to that skill’s subdirectory. There is currently no universal Git package syntax for installing a single subdirectory.

10 selected skills for Home Assistant

These practical options come from Home Assistant-specific repositories and broader collections, ordered from the closest fit for Home Assistant beginners. Review each repository, license, dependency, and permission request before installing it.

SkillWhat it helps you doInstallation spec
claude-skill-homeassistant
≈791★
The leading Home Assistant-specific skill in this snapshot. It can create or edit automations, Blueprints, and dashboards; manage add-ons; read logs; and test templates. It is also the highest-risk option listed here because it can change a live Home Assistant configuration. Review it first, then use a test instance or create and verify a current backup. git:github.com/komal-SkyNET/claude-skill-homeassistant
homeassistant-claude-kit
≈118★
An AI-guided, all-in-one toolkit combining automation templates, a mobile-first React dashboard template, and Claude Code skills for configuration work. It suits users who prefer an integrated starting point to assembling separate tools. git:github.com/dcb/homeassistant-claude-kit
aurora-smart-home
≈102★
A smart-home skill collection covering Home Assistant, ESPHome, Node-RED, custom integrations, dashboards, and even PCB design. Consider it when the same agent needs guidance for both Home Assistant and ESPHome firmware. git:github.com/tonylofgren/aurora-smart-home
docx / pdf / pptx / xlsx
official
Four official document skills. Household uses include exporting energy analysis to a spreadsheet, storing appliance warranty records as a PDF, producing a weekly report in a document, or preparing a presentation for a community meeting. git:github.com/anthropics/skills
skill-creator
official
Guides an agent through packaging a household workflow—such as a laundry reminder, weekly energy report, or filter-replacement alert—as a new skill. git:github.com/anthropics/skills
claude-homeassistant-plugins
≈26★
A marketplace-style collection of Home Assistant plugins, skills, agents, and MCP hooks. Review its individual directories if you are building or extending a Home Assistant plugin. git:github.com/ESJavadex/claude-homeassistant-plugins
ha-nova
≈21★
Provides a lightweight relay and LLM skills for Claude Code, Codex, and OpenCode, with a thin layer over Home Assistant API calls. Consider it when you want to share one Home Assistant interface across supported agents. git:github.com/markusleben/ha-nova
HA_Bubble_Skill
≈13★
Focuses on building dashboards with Bubble Card, Streamline Card, Sidebar Card, and Mushroom. It includes WCAG color checks and a full set of troubleshooting instructions. Consider it for a polished, accessible dashboard. git:github.com/johnnyh1975/HA_Bubble_Skill
grill-me
from mattpocock/skills
Conducts a detailed requirements interview before starting a large project, such as rewriting all the automations in a home. Its Markdown instructions are portable across agents. git:github.com/mattpocock/skills
defuddle
from kepano/obsidian-skills · ≈47,000★
Captures web pages as clean Markdown for a household knowledge base—useful for appliance manuals, Home Assistant community solutions, and video transcripts. git:github.com/kepano/obsidian-skills

6 popular collections and catalogs

Start with these repositories when you want to browse individual skills or evaluate a larger collection. Review the contents before installing an entire collection.

anthropics/skills

Official examples and specification · ≈170,000★ · Very active

The home of the Agent Skills specification and official templates. Its 19 skills include the document suite (docx/pdf/pptx/xlsx), canvas-design, mcp-builder, and skill-creator. It is a useful first catalog to review for a Home Assistant household.

git:github.com/anthropics/skills

Note: The four document skills are source-available, not open source. Some skills include scripts that require a Python or JavaScript environment.

tonylofgren/aurora-smart-home

Home Assistant and smart-home collection · ≈102★ · Closely aligned

The most comprehensive multi-skill smart-home collection in this snapshot, covering home-assistant, esphome, node-red, ha-dashboard-design, ha-integration-dev, hacs, and fabrication-ready hardware design.

git:github.com/tonylofgren/aurora-smart-home

Note: A smaller audience means fewer people may have reviewed it. Because these skills can direct an agent to change your Home Assistant configuration, read each SKILL.md before importing it.

komal-SkyNET/claude-skill-homeassistant

Single Home Assistant skill · ≈791★ · Very active

A single, wide-ranging skill for managing Home Assistant. Its README explains how to use Claude Code to change configuration, retrieve logs, test templates, and add automations.

git:github.com/komal-SkyNET/claude-skill-homeassistant

Start with a test instance, or create and verify a full backup first. Pin an @tag in production.

kepano/obsidian-skills

Notes and household knowledge bases · ≈47,000★ · By Obsidian’s CEO

Includes 5 skills: obsidian-markdown, bases, json-canvas, obsidian-cli, and defuddle. The first 4 support an Obsidian household knowledge base; defuddle is also useful without Obsidian.

git:github.com/kepano/obsidian-skills

The obsidian-cli skill requires the CLI to be installed locally. In a Home Assistant add-on container, you will generally work through an accessible vault directory.

mattpocock/skills

Engineering workflows · ≈220,000★ · Very active

Includes grill-me, tdd, diagnosing-bugs, handoff, and teach. Although primarily intended for software work, grill-me and handoff can help plan a complete home-automation rewrite or a Home Assistant setup for a new home. The Markdown instructions are portable across agents.

git:github.com/mattpocock/skills

hesreallyhim/awesome-claude-code

Curated catalog · ≈53,000★

A curated list of Claude Code skills, agents, status lines, developer tools, and plugins. Browse it as a directory, then open the original repository to review anything you plan to install.

# Use as a catalog; installing the entire collection is not recommended
https://github.com/hesreallyhim/awesome-claude-code

Quality varies, so review each project before installing it.

For reference, other narrowly focused or less active Home Assistant projects include nolte/claude-home-assistant (Lovelace, Blueprint, ESPHome, and add-on development), dallanwagz/untether (reverse-engineering cloud-dependent Bluetooth Low Energy devices to create local Home Assistant integrations), and smalltv-ultra-skill (GeekMagic SmallTV Ultra firmware development). Their star counts are low, so consider them when you have a specific matching use case and review them carefully.

Compatibility

Claude Code, Codex, Gemini CLI, Cursor, OpenCode, OpenClaw, Hermes, and other agent harnesses can use SKILL.md-style instructions, but their discovery rules, metadata, tools, and installation methods are not identical. Plain Markdown instructions are usually the most portable. A skill may lose functionality when it:

  • Depends on harness-specific features, such as hooks, plugin commands, or subagent delegation. The instructions may remain readable even when the automated behavior is unavailable.
  • Requires a particular MCP server or SaaS account. A Home Assistant skill that expects ha-mcp-woow or the official MCP Server integration cannot use those tools until you configure the connection and permissions.
  • Includes scripts/ that need an unavailable runtime. A script may require a particular Python package or Node version, especially when the agent runs inside a Home Assistant add-on container.
Concept: Choose a skill by its requirements, not its star count. Confirm that your Home Assistant instance, MCP server, integrations, tools, and runtime match the environment the skill expects.

Safety rules

Warning: A skill is a set of instructions for an agent. Installing a third-party skill means allowing untrusted text to influence an agent that may have access to your Home Assistant system.
  • Read before installing: Inspect SKILL.md and any referenced files or scripts yourself. If you ask an agent to summarize them, explicitly tell it not to execute anything. Identify every requested tool, command, network connection, secret, and configuration change.
  • Back up before configuration changes: Skills such as claude-skill-homeassistant and aurora-smart-home may change automations, dashboards, or configuration.yaml. Create and verify a full manual backup under Settings → System → Backups first.
  • Test on a separate Home Assistant instance: If your production system is complex, evaluate the skill in a clean test container before granting it access to your household system.
  • Pin production versions: Use an @tag or @commit when supported. Review upstream changes before upgrading.
  • Limit access to entities: For Assist, open Settings → Voice assistants → Expose and select only the areas and entities you need. Do not expose locks, alarms, or main power controls until you have reviewed the risks and safeguards. This setting does not restrict a coding agent or MCP server, so configure least-privilege access separately for every connection.
  • Treat stars as popularity, not proof of safety: Review permissions and behavior even for popular collections, especially skills that include scripts/.

SKILL.md specification at a glance

The example below shows the basic structure of a skill. See anthropics/skills for the full specification.

washer-notify/
├── SKILL.md          ← Required
└── references/       ← Optional supporting files (load only when needed)
    └── ha-service-map.md

# SKILL.md
---
name: washer-notify
description: |
  Use this Skill when the user asks whether the washing machine has finished,
  whether it is time to collect the laundry, or how to automate a laundry
  reminder. Read sensor.washer_power through the Home Assistant API to
  determine whether the machine is running, idle, or finished.
license: MIT
compatibility:
  agents: [claude-code, opencode, openclaw, hermes]
  mcp: [ha-mcp-woow, home-assistant/mcp-server]
allowed-tools: [ha_get_state, ha_get_history, ha_config_set_automation, notify_send]
---

# Laundry reminder Skill

When the user asks about the washing machine, first read the past 15 minutes of
history for sensor.washer_power. If power fell from >100W to <5W and remained
there for at least 3 minutes, report that the cycle is complete. If the machine
is still running, estimate the remaining time using the stated 45-minute
average and clearly label the result as an estimate. Respond in English.

If the user requests an automatic reminder, use ha_config_set_automation to
create an automation based on this logic:
- Trigger when sensor.washer_power remains below 5W for 3 minutes.
- Send a notification through notify.mobile_app_myphone.
Use entity_id references and current Home Assistant automation syntax. Show the
user a YAML summary and obtain approval before applying it. Respond in English.
FieldRequiredDescription
nameYesUse 1–64 lowercase letters, numbers, or hyphens.
descriptionYesExplain what the skill does and when to use it. The agent relies on this description when deciding whether the skill applies. Include phrases a user is likely to say.
licenseNoState the license so others can understand the terms for using or modifying the skill.
compatibilityNoRecord the supported agents and MCP servers when sharing the skill across harnesses.
allowed-toolsNoWhere the harness supports it, list the tools the skill may call as one layer of access control.

Keep SKILL.md concise. Put supporting material in references/, scripts/, or assets/ so the agent loads it only when needed. For a Home Assistant skill, consider adding a service or action map under references/ for the agent to consult before making a call.

FAQ

Why is my installed skill not being used?
Start a new session, because many harnesses load skills only when a session begins. Ask which skills are loaded and check that yours appears. If it is listed but does not activate, its description may not match the way you phrased the request. Name it explicitly: “Use claude-skill-homeassistant for this task.”
How does a skill differ from a Blueprint, integration, or Assist?
You install a skill in an AI agent environment such as Claude Code or OpenClaw. Blueprints, integrations, and Assist are installed or configured in Home Assistant itself. A skill guides how an AI agent works with Home Assistant; a Blueprint gives Home Assistant reusable automation logic. They serve different purposes and can be used together.
What happens if I install too many skills?
A harness may place every skill’s name and description in the agent context. Installing dozens can make the agent’s selection less reliable and increase token use. As a starting point, keep 3–5 Home Assistant skills plus the official document tools you actually use, and remove anything you no longer need after testing it.
Can I install just one skill from a monorepo?
There is currently no universal Git package syntax for selecting a subdirectory. Clone the repository, then place the subdirectory you want—including SKILL.md—in your harness’s skills directory, such as ~/.claude/skills/ where applicable. Alternatively, install it from a local path. Check your harness documentation for the exact location and method.
Can a skill damage my Home Assistant configuration?
Yes. A skill with access to ha_config_set_* tools can make harmful changes. Create and verify a backup first, test on a nonproduction instance, and require a preview and your explicit approval before applying edits. If something goes wrong, use Settings → System → Backups → Restore with a known-good backup. Without one, recovery may depend on a version-controlled configuration.yaml or another recovery method you configured in advance.
How do I write a Home Assistant skill?
Install skill-creator from anthropics/skills, then ask it to package a workflow such as producing a household weekly report. You can develop a first draft in about 10 minutes, but review every generated instruction and permission carefully. Alternatively, start with the example in the SKILL.md specification section.

Take this handbook with you

This handbook is a self-contained HTML file with embedded icons, so you can download and read it offline. Collection details will become outdated; check the online Resource Hub before making an important decision.

Download this handbook Back to the Resource Hub