--- # yamllint configuration for Home Assistant YAML files extends: default rules: line-length: max: 200 level: warning # Allow indentation to be flexible for Home Assistant configs indentation: spaces: consistent indent-sequences: whatever check-multi-line-strings: false # Allow comments at various positions comments: min-spaces-from-content: 1 level: warning # Allow comment indentation flexibility comments-indentation: disable # Allow empty lines empty-lines: max: 2 level: warning # Allow empty values (common in HA configs) empty-values: forbid-in-block-mappings: false forbid-in-flow-mappings: false # Allow duplicate keys in some cases (HA uses this for conditions) key-duplicates: forbid-duplicated-merge-keys: true # Relax truthy checks for on/off (common in HA) truthy: allowed-values: ['true', 'false', 'yes', 'no', 'on', 'off'] check-keys: false # Allow both flow and block styles braces: min-spaces-inside: 0 max-spaces-inside: 1 brackets: min-spaces-inside: 0 max-spaces-inside: 1 # Allow Jinja2 templates (they use curly braces) quoted-strings: quote-type: any required: false # Disable document start requirement (HA doesn't use ---) document-start: disable # Allow trailing spaces (HA auto-formats may add them) trailing-spaces: disable # Allow new line at end of file to be missing new-line-at-end-of-file: disable # Relax new lines rules new-lines: type: unix ignore: | .venv/ venv/ .git/ __pycache__/ *.pyc