Agent skill
yaml-validator
Stars
163
Forks
31
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/devops/yaml-validator
SKILL.md
YAML Validator
Validate, fix, and check YAML files against schemas.
Quick Start
Basic Syntax Validation
Validate YAML files for syntax errors:
bash
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:
bash
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:
bash
# 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
Didn't find tool you were looking for?