actionlint is a static checker for GitHub Actions workflow files.

Features:
- Syntax check for workflow files to check unexpected or missing keys following
  workflow syntax.
- Strong type check for ${{ }} expressions to catch several semantic errors like
  access to not existing property, type mismatches, ...
- Actions usage check to check that inputs at with: and outputs in
  steps.{id}.outputs are correct.
- Reusable workflow check to check inputs/outputs/secrets of reusable workflows
  and workflow calls.
- shellcheck and pyflakes integrations for scripts at run:
- Security checks; script injection by untrusted inputs, hard-coded credentials.
- Other several useful checks; glob syntax validation, dependencies check for
  needs:, runner label validation, cron syntax validation, ...
