yaml-validator
Comprehensive YAML syntax validation, error fixing, and schema validation for various formats (GitHub Actions, Docker Compose, Kubernetes, GitLab CI). Use when Claude needs to: (1) Validate YAML syntax, (2) Check YAML files for errors, (3) Fix common YAML formatting issues, (4) Validate against schemas like GitHub Actions workflows, Docker Compose files, Kubernetes manifests, or GitLab CI pipelines, (5) Debug YAML parsing errors. Triggers on phrases like "check yaml", "validate yaml", "fix yaml errors", "yaml syntax".
When & Why to Use This Skill
The YAML Validator is a robust Claude skill designed to automate the validation, debugging, and fixing of YAML configuration files. It ensures structural integrity and schema compliance for critical DevOps tools like Kubernetes, Docker Compose, and CI/CD pipelines (GitHub Actions, GitLab CI), helping developers prevent deployment errors and maintain clean, standardized codebases.
Use Cases
- CI/CD Pipeline Debugging: Validate and fix GitHub Actions or GitLab CI/CD workflow files to prevent pipeline failures caused by syntax errors or schema mismatches.
- Infrastructure as Code (IaC) Verification: Ensure Kubernetes manifests and Docker Compose files are compliant with official schemas before deployment to production environments.
- Automated Code Formatting: Automatically resolve common YAML issues such as tab-to-space conversion, trailing whitespace, and inconsistent indentation to maintain project standards.
- Home Automation Configuration: Validate Home Assistant configuration files against specific schemas to ensure smart home setups run without parsing errors.
- Pre-commit Syntax Checks: Use as a quick diagnostic tool to identify quote mismatches, colon spacing issues, or duplicate keys in complex configuration files.
| name | yaml-validator |
|---|---|
| description | Comprehensive YAML syntax validation, error fixing, and schema validation for various formats (GitHub Actions, Docker Compose, Kubernetes, GitLab CI). Use when Claude needs to: (1) Validate YAML syntax, (2) Check YAML files for errors, (3) Fix common YAML formatting issues, (4) Validate against schemas like GitHub Actions workflows, Docker Compose files, Kubernetes manifests, or GitLab CI pipelines, (5) Debug YAML parsing errors. Triggers on phrases like "check yaml", "validate yaml", "fix yaml errors", "yaml syntax". |
YAML Validator
Validate, fix, and check YAML files against schemas.
Quick Start
Basic Syntax Validation
Validate YAML files for syntax errors:
python scripts/validate_yaml.py file.yml
python scripts/validate_yaml.py file1.yml file2.yml # Multiple files
python scripts/validate_yaml.py *.yml --quiet # Only show errors
Auto-Fix Common Errors
Automatically fix common YAML issues:
python scripts/fix_yaml.py file.yml -i # Fix in-place
python scripts/fix_yaml.py file.yml > fixed.yml # Output to new file
python scripts/fix_yaml.py *.yml -i --no-backup # Fix without backups
Common fixes applied:
- Convert tabs to spaces
- Remove trailing whitespace
- Normalize indentation
- Add newline at end of file
- Remove excessive blank lines
Schema Validation
Validate against specific schemas:
# Auto-detect schema type
python scripts/validate_schema.py workflow.yml
# Explicit schema type
python scripts/validate_schema.py -t home-assistant configuration.yaml
python scripts/validate_schema.py -t github-actions .github/workflows/ci.yml
python scripts/validate_schema.py -t docker-compose docker-compose.yml
python scripts/validate_schema.py -t kubernetes deployment.yml
python scripts/validate_schema.py -t gitlab-ci .gitlab-ci.yml
# List available schemas
python scripts/validate_schema.py --list-schemas
Workflow
When YAML validation is requested:
- Check syntax first: Use
validate_yaml.pyto identify syntax errors - Fix if needed: Use
fix_yaml.pyto auto-fix common issues - Validate schema: Use
validate_schema.pyfor format-specific validation
For YAML errors:
- Run validation to identify the issue
- Check
references/common-errors.mdfor guidance on specific error types - Apply fixes manually or use
fix_yaml.py - Re-validate to confirm
For schema validation:
- Identify the YAML type (GitHub Actions, Docker Compose, etc.)
- Run
validate_schema.pywith appropriate type - See
references/schemas.mdfor schema-specific requirements
Supported Schemas
- home-assistant: Home Assistant configuration files
- github-actions: GitHub Actions workflow files
- docker-compose: Docker Compose configuration files
- kubernetes: Kubernetes resource manifests
- gitlab-ci: GitLab CI/CD pipeline files
See references/schemas.md for detailed schema documentation.
Common Error Patterns
For detailed error explanations and fixes, see references/common-errors.md:
- Indentation errors (tabs vs spaces)
- Quote mismatches
- Colon spacing issues
- Boolean value confusion
- Multiline string formatting
- Duplicate keys
- Special character handling
Dependencies
Scripts require:
- Python 3.7+
- PyYAML:
pip install pyyaml - jsonschema:
pip install jsonschema(for schema validation only)
Exit Codes
All scripts use standard exit codes:
0: Success (all files valid)1: Validation failed (syntax or schema errors)2: Missing dependencies or invalid arguments