Instead of actionlint
actionlint alternatives
actionlint focuses on GitHub Actions workflows: it checks syntax and expression types, validates action inputs and outputs, and examines reusable workflow calls, inputs, outputs, and secrets. Its security checks flag script-injection risks from untrusted inputs and hard-coded credentials. It can also connect ShellCheck and Pyflakes to scripts in `run:` steps. You can run it from prebuilt binaries, Docker, source, CI download scripts, or package managers, and its browser playground runs through WebAssembly without sending data outside the browser.
- 1
Biome
Free plan ExtensionLinuxMac+2Web projects needing formatting, linting, and import organization — Biome combines formatting, linting, and import organization for web languages, while actionlint checks GitHub Actions workflows.
- 2
Cppcheck
Free plan Open source LinuxMacSelf-hosted+1C and C++ analysis, including embedded code — Cppcheck analyzes C and C++ code, including non-standard embedded syntax, rather than GitHub Actions workflows.
- 3
Hadolint
Free plan LinuxMacWeb+1Dockerfile linting and Bash checks inside RUN instructions — Hadolint parses Dockerfiles and applies Dockerfile and ShellCheck rules, while actionlint validates GitHub Actions workflows.
- 4
JSHint
Free plan Open source APIExtensionLinux+4JavaScript static analysis across Node and browser environments — JSHint flags JavaScript syntax and potential code problems; actionlint checks GitHub Actions workflow syntax and expressions.
- 5
PMD
Free plan LinuxMacSelf-hosted+1Multilanguage static analysis and copy-paste detection — PMD analyzes many programming and markup languages, offers custom rules and copy-paste detection, and does not target workflow validation.
- 6
Ruff
Free plan LinuxMacSelf-hosted+2Python linting, formatting, and automatic fixes — Ruff lints and formats Python with over 900 built-in rules and automatic fixes, unlike actionlint’s workflow checks.
- 7
ShellCheck
Free plan ExtensionLinuxMac+2Bash and sh script warnings and suggestions — ShellCheck analyzes Bash and sh scripts directly, whereas actionlint can integrate it for scripts in workflow `run:` steps.
- 8
Flake8
Free plan Open source APILinuxMac+2 - 9
Astral
Free plan LinuxMacWindows - 10
Checkstyle
Free plan LinuxMacWindows - 11
cpplint
Free plan LinuxMacWindows - 12
golangci-lint
Free plan LinuxMacSelf-hosted+1 - 13
detekt
Free plan LinuxMacWindows - 14
ESLint
Free plan APIExtensionSelf-hosted - 15
Luacheck
Free plan LinuxMacSelf-hosted+1 - 16
clang-tidy
Free plan Linux - 17
HLint
Free plan LinuxMacWindows - 18
PHPMD
Free plan LinuxMacSelf-hosted+1 - 19
Clippy
Free plan LinuxMacWindows - 20
Oxc
Free plan LinuxMacWindows - 21
pycodestyle
Free plan LinuxMacWindows - 22
SQLFluff
Free plan APILinuxMac+2 - 23
Stylelint
Free plan APILinuxMac+1 - 24
Credo
Free plan
Its scope is deliberately narrow, so readers may want a dedicated analyzer for application code or another file type. Consider which languages and constructs need checking, whether automatic fixes or formatting matter, and what editor, CI, and runtime support fits the project. The alternatives below target web projects, C and C++, Dockerfiles, JavaScript, multiple programming languages, Python, or shell scripts. They can complement actionlint, but their language-specific checks do not replace validation of GitHub Actions workflows.