extends: default

rules:
  # ESPHome uses True/False (Python style) and yes/no
  truthy:
    allowed-values: ["true", "false", "True", "False", "yes", "no", "on", "off", "ON", "OFF"]
    check-keys: false

  # Lambdas and long substitutions can exceed 80 chars
  line-length:
    max: 200
    level: warning

  # Not all files use --- document start marker
  document-start: disable

  # ESPHome uses both indented and non-indented sequences
  indentation:
    spaces: 2
    indent-sequences: whatever
    check-multi-line-strings: false

  # Some files have trailing spaces; warn only
  trailing-spaces: enable

  comments:
    require-starting-space: false
