Bear Stone Smart Home
Bear Stone Smart Home Documentation

Be sure to :star: my configuration repo so you can keep up to date on any daily progress!

[![X Follow](https://img.shields.io/static/v1?label=talk&message=3k&color=blue&logo=twitter&style=for-the-badge)](https://x.com/ccostan) [![YouTube Subscribe](https://img.shields.io/youtube/channel/subscribers/UC301G8JJFzY0BZ_0lshpKpQ?label=VIEW&logo=Youtube&logoColor=%23DF5D44&style=for-the-badge)](https://www.youtube.com/vCloudInfo?sub_confirmation=1) [![GitHub Stars](https://img.shields.io/github/stars/CCOSTAN/Home-AssistantConfig?label=STARS&logo=Github&style=for-the-badge)](https://github.com/CCOSTAN)
[![HA Version Badge](https://raw.githubusercontent.com/ccostan/home-assistantconfig/master/ha-version-badge.svg)](https://github.com/CCOSTAN/Home-AssistantConfig/blob/master/config/.HA_VERSION) [![Last Commit](https://img.shields.io/github/last-commit/CCOSTAN/Home-AssistantConfig.svg?style=plastic)](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master) [![Commit Activity](https://img.shields.io/github/commit-activity/y/CCOSTAN/Home-AssistantConfig.svg?style=plastic)](https://github.com/CCOSTAN/Home-AssistantConfig/commits/master)
# HA YAML DRY Verifier (Codex Skill) This directory contains the `homeassistant-yaml-dry-verifier` skill and the CLI used to detect repeated YAML structures in Home Assistant automations/scripts/packages. ### Quick navigation - You are here: `codex_skills/homeassistant-yaml-dry-verifier/` - [Repo overview](../../README.md) | [Codex skills](../README.md) | [Packages](../../config/packages/README.md) | [Scripts](../../config/script/README.md) ## What This Skill Does - Detects repeated `trigger`, `condition`, `action`, and `sequence` blocks. - Detects repeated entries inside those blocks. - Detects duplicate entries within a single block (`INTRA`). - Detects package-defined scripts called from multiple files (`CENTRAL_SCRIPT`). - Collapses noisy ENTRY reports when they are already fully explained by an identical `FULL_BLOCK` finding. ## CLI Usage Run on one file: ```bash python codex_skills/homeassistant-yaml-dry-verifier/scripts/verify_ha_yaml_dry.py config/packages/bearclaw.yaml ``` Run on broader scope: ```bash python codex_skills/homeassistant-yaml-dry-verifier/scripts/verify_ha_yaml_dry.py config/packages config/script ``` Strict mode (non-zero exit if findings exist): ```bash python codex_skills/homeassistant-yaml-dry-verifier/scripts/verify_ha_yaml_dry.py config/packages config/script --strict ``` ## Output Model The CLI prints: - Scan summary counts - `FULL_BLOCK` findings - `ENTRY` findings - `INTRA` findings - `CENTRAL_SCRIPT` findings Exit codes: - `0`: success (or findings in non-strict mode) - `1`: findings present in strict mode - `2`: parse/path errors ## Notes - This verifier intentionally keeps text output and a small CLI surface. - It does not implement suppression files, severity scoring, JSON output, or diff-only mode. - Use it as a fast pre-refactor signal and pair with Home Assistant config validation before restart/reload. **All of my configuration files are tested against the most stable version of home-assistant.** **Still have questions on my Config?**
**Message me on X :** [![Follow CCostan](https://img.shields.io/twitter/follow/CCostan)](https://www.x.com/ccostan)

Buy me a coffeeYou can buy me a coffeeBuy me a coffee

Affiliate Disclosure