All notable changes to the Home Assistant Development Plugin are documented here.
ha-integration-revieweragent downgraded from Sonnet to Haiku. The review checklist is structural (manifest fields, config_flow presence, coordinator usage, type annotations) — mechanical pattern-matching with no inference required. Roughly 40% reduction in per-review token cost when invoked from Opus sessions.
- npm audit fix - resolve hono, path-to-regexp CVEs
- unblock 3 plugin releases
- Bump handlebars
- Bump hono in /plugins/home-assistant-dev/mcp-server
- Bump picomatch
- Bump the all-dependencies group across 1 directory with 7 updates
- Bump flatted in /plugins/home-assistant-dev/mcp-server
- bump express-rate-limit
- bump @hono/node-server
- bump ts-jest to 29.4.9 in both plugin lock files
- update remaining L3Digital-Net references
- update org references from L3Digital-Net to L3DigitalNet
- apply audit findings — plugin.json, CHANGELOG
- bump hono to 4.12.4 (CVE-2026-27700)
- Fix structural README issues and docs path
- Revert: restore original HA skill files, remove extracted references
- Strengthen skill triggers and extract long content to references
- Fix ha-dev skill count in README
validate_manifestMCP tool now throws (returnsisError:true) whenpathargument is missing, consistent withvalidate_stringsandcheck_patternsbehavior
- Update version numbers in design and testing documents to v2.2.1 and v1.0.5
- Update hono 4.11.9 → 4.12.0 in mcp-server lockfiles (GHSA-gq3j-xvxp-8hrf)
- Audit and split wide-scope skills
- Update hono 4.11.9 → 4.12.0 in mcp-server lockfiles (GHSA-gq3j-xvxp-8hrf)
- Fix HA Dev Plugin Tests failures on testing and main
- MCP server now wired into plugin via
.mcp.json— registersha-dev-mcpwith 12 tools for live HA connection, documentation search, and code validation - esbuild bundling for MCP server — single 630KB self-contained
dist/server.bundle.cjsrequires nonpm installpost-plugin-install .gitignorefor plugin directory — tracks only the distributable bundle, ignores build artifacts andnode_modules/
commands/scaffold-integration.md— added missingnamefrontmatter fieldplugin.json— updated author fromChris/chrisuthetoL3DigitalNetto match marketplaceplugin.json— fixedrepositoryURL to point toL3DigitalNet/Claude-Code-Pluginsmarketplace.json— restored MCP server mention in description now that it's wired inREADME.md— replaced stalechrisuthe/ha-dev-plugininstall URLs with correct marketplace install instructionsREADME.md— fixed directory tree root name fromha-dev-plugin/tohome-assistant-dev/README.md— fixed skill count in directory tree from 18 to 19mcp-server/package.json— changed package name from@anthropic/ha-dev-mcp-servertoha-dev-mcp-servermcp-server/package.json— changed author fromAnthropictoL3DigitalNet
hooks/hooks.jsonrewritten to use correct record schema with dispatcher pattern- Replaced invalid trigger/action format with proper
PostToolUsematcher and${CLAUDE_PLUGIN_ROOT}path variable
scripts/post-write-hook.sh— dispatcher script that routes PostToolUse events to the appropriate validation script based on file path
ha-hacs- Complete HACS compliance guide: hacs.json, brands, validation, publishingha-diagnostics- Diagnostics implementation for Gold tier complianceha-migration- Version migration, deprecation fixes, config entry upgradesha-documentation- README and documentation generationha-repairs- Repair issues and fix flows (Gold tier requirement)ha-device-triggers- Device triggers, conditions, and actionsha-websocket-api- Custom WebSocket API commandsha-recorder- Statistics and history integration
scripts/validate-manifest.py- Validates manifest.json required fieldsscripts/validate-strings.py- Syncs config_flow.py steps with strings.jsonscripts/check-patterns.py- Detects 20+ anti-patterns and deprecationsscripts/lint-integration.sh- Wrapper for ruff, mypy, and custom checksscripts/generate-docs.py- Generates README and info.md from code
hooks/hooks.json- PostToolUse hook configuration for automatic validation
examples/polling-hub/- Complete Gold-tier reference integration- DataUpdateCoordinator with _async_setup
- entry.runtime_data pattern
- EntityDescription pattern for sensors
- Complete config flow (user, reauth, reconfigure, options)
- Diagnostics with data redaction
- HACS-compliant structure
- GitHub Actions workflow
- Test examples
examples/minimal-sensor/- Bronze-tier minimal example for learningexamples/push-integration/- Silver-tier push-based integration with dispatcher
templates/testing/conftest.py.template- Test fixturestemplates/testing/test_config_flow.py.template- Config flow teststemplates/testing/test_init.py.template- Setup/unload teststemplates/testing/pytest.ini.template- pytest configurationtemplates/testing/requirements-test.txt.template- Test dependenciestemplates/ci/github-actions.yml.template- CI/CD workflowtemplates/ci/pre-commit-config.yaml.template- Pre-commit hookstemplates/ci/ruff.toml.template- Ruff linter configurationtemplates/docs/README.md.template- Documentation templatetemplates/docs/info.md.template- HACS info page template
generate-integration- Generate complete integration from prompts
mcp-server/- Full TypeScript MCP server implementation- 12 tool handlers across 3 categories
- Home Assistant WebSocket client with state caching
- Safety layer with configurable blocklists
- Documentation search with pre-indexed content
- Code pattern detection for 20+ anti-patterns
- Manifest and strings.json validation
- Unit tests for safety checker
- ESLint and Jest configuration
- Added
issue_trackerto manifest.json template (required for HACS) - Added
services.yamlandicons.jsonto file structure - Added HACS repository structure (hacs.json, README.md)
- Now covers all 52 official IQS rules (was ~30%)
- Bronze tier: 18 rules
- Silver tier: 10 rules
- Gold tier: 21 rules
- Platinum tier: 3 rules
- Added quick validation commands
- Updated reference checklist with implementation examples
- Added OptionsFlow deprecation note (don't use
__init__) - Clarified
self.config_entryis automatically available
- Fixed missing imports in test_init.py examples
- Added
MockConfigEntryimport - Added
test_setup_entry_not_readyexample - Added proper type hints
- Removed malformed directory artifacts
- Corrected manifest.json required fields list
- 19 skills (up from 11)
- 5 scripts for automated validation
- 3 example integrations
- 9 project templates
- ~75 files total (up from 22)
ha-architecture- Core HA internals: event bus, state machine, service registry, entity lifecycleha-integration-scaffold- Scaffold new integrations with 2025 file structureha-config-flow- Config flows, options flows, reauth, discovery methodsha-coordinator- DataUpdateCoordinator with_async_setupand error handlingha-entity-platforms- Entity platforms with EntityDescription patternsha-service-actions- Service actions in Python and YAMLha-async-patterns- Async Python patterns for Home Assistantha-testing- pytest patterns with hass fixtureha-debugging- Troubleshooting workflows and common fixesha-yaml-automations- YAML automations, scripts, blueprintsha-quality-review- Integration Quality Scale assessment
ha-integration-dev- Full integration development specialistha-integration-reviewer- Code reviewer against Quality Scaleha-integration-debugger- Systematic debugging assistant
scaffold-integration- Interactive integration scaffolding
ha-config-flow/reference/discovery-methods.md- Zeroconf, SSDP, DHCP, USB patternsha-entity-platforms/reference/device-classes.md- Complete device class referenceha-quality-review/reference/quality-scale-checklist.md- Full tier checklists
- Targets Home Assistant 2025.2+ (Python 3.13)
- Includes ServiceInfo import relocations (2025.1+)
- Includes DataUpdateCoordinator
_async_setup(2024.8+) - Includes
retry_aftersupport (2025.10+) - Follows Integration Quality Scale requirements
- Requires Claude Code 1.0+
- Uses plugin manifest v1 schema
- Skills support progressive disclosure via reference files