ha-integration-dev

Solid

Home Assistant custom integration development in Python. Covers custom_components, DataUpdateCoordinator, config_flow, OAuth2, conversation agent, HACS publishing, device registry, entity platforms, services, repair issues, diagnostics, Bluetooth integrations, and multi-coordinator patterns.

AI & Automation 98 stars 3 forks Updated 1 weeks ago MIT

Install

View on GitHub

Quality Score: 87/100

Stars 20%
66
Recency 20%
90
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
50
License 10%
100
Description 5%
100

Skill Content

# Home Assistant Integration Development Reference skill for developing Home Assistant custom integrations in Python. ## Overview **Core principle:** Home Assistant integrations run in the same Python process as Core with full filesystem access. Security, proper async patterns, and correct timestamp handling are non-negotiable. **Context:** This skill requires understanding the integration type (polling vs push, cloud vs local) before generating code. The DataUpdateCoordinator pattern is mandatory for most integrations. ## The Iron Law ``` TIMESTAMPS: dt_util.now() / dt_util.utcnow() - NEVER datetime.now() ATTRIBUTES: JSON-SERIALIZABLE ONLY - NO DATACLASSES, NO DATETIME OBJECTS ASYNC: aiohttp FOR HTTP - NEVER requests STORAGE: entry.runtime_data - NEVER hass.data[DOMAIN] ``` The first three rules cause 90% of integration bugs. The fourth rule (`runtime_data`) is the modern pattern since HA 2024.4 - it provides type safety and cleaner lifecycle management. ## The Process ``` User request │ ▼ Clarify: API type, auth, entities │ ▼ Ask: HACS preparation? │ ▼ Select template │ ▼ Read relevant references │ ▼ Generate integration code │ ▼ Run pre-completion checklist │ ├──if HACS=yes──▶ Generate HACS files ──▶ Deliver integration │ └──if HACS=no───▶ Deliver integration ``` ## Common Pitfalls Watch out for these Iron Law violations: | Thought | Reality | |---------|---------| | "datetime.now() is fine" | WRON...

Details

Author
tonylofgren
Repository
tonylofgren/aurora-smart-home
Created
7 months ago
Last Updated
1 weeks ago
Language
Python
License
MIT

Integrates with

Bundled in these plugins

Similar Skills

Semantically similar based on skill content — not just same category

AI & Automation Solid

home-assistant-integration

Use this skill when creating, scaffolding, reviewing, or maintaining Python Home Assistant custom integrations, including work on custom_components, manifests, config flows, options flows, config entries, platforms/entities, DataUpdateCoordinator, integration automation triggers, diagnostics, repairs, discovery/networking, authentication, HACS-ready repositories, or Home Assistant integration quality scale compliance.

16 Updated today
denysdovhan
AI & Automation Solid

home-assistant-card

Use when creating, reviewing, debugging, or maintaining Home Assistant custom Lovelace cards or card editors, including custom elements, Web Components, hass data, setConfig, getCardSize/getGridOptions, getConfigElement/getConfigForm, window.customCards, resource registration, HACS card packages, entity display, service calls, translations, or frontend build validation.

16 Updated today
denysdovhan
AI & Automation Solid

api-catalog

Reference guide for connecting popular APIs to Home Assistant via Node-RED, YAML, or custom integrations. Covers authentication, endpoints, and complete working examples for: energy APIs (Tibber, Nordpool), weather (SMHI, OpenWeatherMap, yr.no), transport (SL, Trafikverket, Resrobot), smart home clouds (Shelly, Tuya, Philips Hue, IKEA), and global APIs (OpenAI, Spotify, Google Calendar, Telegram, GitHub). Use this skill whenever the user mentions a specific external service, API, or data source they want to connect to Home Assistant - even if they don't say "API".

98 Updated 1 weeks ago
tonylofgren