validation-tools

Lint Dockerfiles, shell scripts, and YAML workflows with hadolint, shellcheck, actionlint, and yamllint.

Updated Feb 6, 2026
One-click install
npx skills add https://github.com/wtah/spec-master --skill validation-tools
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: validation-tools
Source: https://github.com/wtah/spec-master/tree/main/.claude/skills/validation-tools
Command: npx skills add https://github.com/wtah/spec-master --skill validation-tools

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill helps developers validate and lint CI/CD configurations and related scripts locally, reducing the risk of faulty deployments and broken workflows.

Core Features & Use Cases

  • Local linting of Dockerfiles, shell scripts, and YAML workflows before pushing to repository.
  • Tool coverage: hadolint, shellcheck, actionlint, yamllint, and yq for comprehensive validation.
  • Use case: before merging changes to a GitHub workflow, run validation to catch syntax errors and best-practice issues.

Quick Start

Use this skill to validate your CI/CD artifacts: run hadolint on a Dockerfile, shellcheck on scripts/.sh, actionlint on .github/workflows/.yml, yamllint on YAML files, and yq to query YAML when needed.

Frequently Asked Questions about validation-tools

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I lint Dockerfiles and shell scripts before pushing to a repository?

To lint Dockerfiles and shell scripts before pushing, run hadolint on Dockerfiles and shellcheck on shell scripts. This local validation catches syntax errors and best-practice issues early in development workflows to prevent broken deployments.

What is the best way to validate GitHub workflow YAML files locally?

Validating GitHub workflow YAML files locally is best done using actionlint on .github/workflows/*.yml files and yamllint for general YAML syntax. This catches workflow configuration errors before merging changes to ensure reliable CI/CD pipelines.

Can I use yq to query YAML files during CI/CD validation?

Yes, you can use yq to query and parse YAML files during CI/CD validation. It complements linters like yamllint by allowing you to extract and verify specific configuration values within your YAML workflows before deployment.

Why does local CI/CD validation help reduce faulty deployments?

Local CI/CD validation reduces faulty deployments by catching syntax errors and best-practice issues in Dockerfiles, shell scripts, and YAML workflows before code is pushed. Running hadolint, shellcheck, and actionlint locally ensures configurations are reliable.

Does this validation approach work without external dependencies?

Yes, this validation approach provides local guidance and usage examples for hadolint, shellcheck, actionlint, yamllint, and yq without requiring external dependencies. It integrates directly into development workflows and code review processes.

When do I need to run actionlint during my development workflow?

You need to run actionlint during your development workflow before merging changes to GitHub workflows. Applying actionlint to .github/workflows/*.yml files catches syntax errors and best-practice issues in CI/CD configurations early.