awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
rhysd avatar

rhysd/actionlint

0
View on GitHub↗
rhysd.github.io/actionlint↗

Actionlint

actionlint is a static analysis tool and linter specifically designed for GitHub Actions workflow files. It functions as a CI workflow validator and YAML configuration linter to ensure the syntax and logic of automation files are correct before deployment.

The project distinguishes itself by performing deep security auditing and script analysis. It includes a shell script auditor to detect syntax bugs and script injection vulnerabilities in inline commands, and it scans for hardcoded credentials to prevent security leaks.

The tool covers a broad range of validation capabilities, including expression type checking, job dependency verification, and the validation of reusable workflows and matrix configurations. It also verifies trigger events, cron schedules, and action metadata to ensure compatible data types and required parameters are present.

The linter can be used via the command line or integrated into IDEs for real-time feedback.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Features

  • Workflow Linters - Provides comprehensive static analysis of workflow files for syntax, expressions, and security issues.
  • Shell Script Linters - Integrates external checking tools to identify execution errors and syntax bugs within inline shell scripts.
  • Graph Analysis Tools - Analyzes the job dependency graph to detect invalid references or circular dependencies.
  • CI CD Pipelines - Automates the verification of CI/CD workflow files to prevent broken deployments.
  • Shell Script - Identifies security vulnerabilities where untrusted inputs are passed into inline shell commands.
  • GitHub Configuration Audits - Audits GitHub workflows for hardcoded credentials and potential script injection vulnerabilities.
  • Abstract Syntax Tree Parsing - Converts workflow configuration files into a structured syntax tree to identify and report structural or formatting errors.
  • Linters - Provides a specialized linter to verify schema adherence and anchor resolution for YAML automation files.
  • Workflow Configuration Validators - Checks GitHub Actions YAML configuration files for syntax errors and structural issues.
  • Workflow Linters - A static analysis tool that validates the syntax and logic of GitHub Actions workflow files.
  • Expression Type Resolution - Performs strict type checking on expression placeholders to ensure variables and functions use compatible data types.
  • CI Configuration Validators - Validates job dependencies and trigger events within continuous integration configurations.
  • Taint Analysis Engines - Uses taint analysis to track untrusted inputs into shell commands and detect script injection vulnerabilities.
  • Reference Anchors - Evaluates YAML anchors and aliases to ensure the resulting expanded configuration is valid and error-free.
  • Automated Linting Integrations - Enables automated linting checks within continuous integration pipelines and pre-commit hooks.
  • Environment Variable Validation - Ensures environment variable names do not contain invalid characters like equals signs or spaces.
  • Syntax Validators - Checks the syntax of schedule triggers to ensure they follow the valid CRON format.
  • Syntax Validators - Scans path and reference glob filters for syntax errors to ensure correct file matching.
  • IDE Real-time Feedback - Reports analysis results and remediation guidance in real time within supported text editors.
  • Shell Scripting Linters - Integrates with external shell scripting linters to detect bugs and syntax errors in inline commands.
  • Environment Requirement Validators - Specifies expected runner labels and configuration variables to ensure files align with the target environment.
  • Reusable Workflow Validators - Checks the syntax, input types, and secret requirements for both calling and called workflows.
  • Workflow Event Triggers - Verifies webhook event names, activity types, and the correct use of complementary filters.
  • Script Security Auditors - Checks inline scripts within workflow commands for syntax errors and script injection vulnerabilities.
  • Abstract Syntax Tree Parsers - Implements a parser that transforms YAML workflow text into a structured syntax tree for deep logic analysis.
  • Hardcoded Credential Detection - Scans configuration files for plain-text secrets and passwords to prevent accidental security leaks.
  • Usage Validators - Checks that action references are correctly formatted and that all required inputs are provided.
  • Deprecation Management - Identifies the use of deprecated commands and action inputs to ensure compatibility with current standards.
  • Identifier Uniqueness Verifiers - Verifies that job and step identifiers are unique within the configuration to prevent execution conflicts.
  • Matrix Configuration Validators - Ensures exclude values exist in the matrix and identifies duplicate variations of matrix values.
  • Metadata Schema Validations - Validates action inputs and outputs by comparing workflow usage against defined metadata specification files.
  • Graph Validation - Verifies job dependency graphs to detect circular references and undefined job identifiers.
  • Static Logic Analyzers - Detects constant conditions in logic statements that cause workflow steps to always run or never run.
  • Static Type Checking - Ensures that inputs, outputs, and context variables in workflows use compatible data types.
  • Action Metadata Validators - Verifies that action inputs and outputs match metadata file definitions to ensure strict typing.
3,617 stars·203 forks·Go·mit·22 views

Star history

Star history chart for rhysd/actionlintStar history chart for rhysd/actionlint

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Frequently asked questions

What does rhysd/actionlint do?

actionlint is a static analysis tool and linter specifically designed for GitHub Actions workflow files. It functions as a CI workflow validator and YAML configuration linter to ensure the syntax and logic of automation files are correct before deployment.

What are the main features of rhysd/actionlint?

The main features of rhysd/actionlint are: Workflow Linters, Shell Script Linters, Graph Analysis Tools, CI CD Pipelines, Shell Script, GitHub Configuration Audits, Abstract Syntax Tree Parsing, Linters.

Which projects share features with rhysd/actionlint?

Projects with overlapping indexed features include: zizmorcore/zizmor — Zizmor is a security linter and static analysis tool designed to audit GitHub Actions workflow files. It functions as… google/cel-go — cel-go is a Go implementation of the Common Expression Language, providing a type-safe engine for the evaluation of… antonmedv/expr — Expr is a high-performance expression evaluation engine and language for Go applications. It functions as a dynamic… microsoft/power-fx — Power-Fx is a declarative logic framework and low-code formula language based on Excel formulas. It functions as an… anordal/shellharden — Shellharden is a shell script hardening tool and linter designed to improve the security and reliability of Bash… facebook/pyre-check — Pyre is a high-performance static type checker and analysis tool for Python. It identifies type errors and ensures…

Projects sharing features with Actionlint

These projects share indexed features with Actionlint. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • zizmorcore/zizmorzizmorcore avatar

    zizmorcore/zizmor

    5,717View on GitHub↗

    Zizmor is a security linter and static analysis tool designed to audit GitHub Actions workflow files. It functions as a CI/CD security scanner that identifies security vulnerabilities, misconfigurations, and software supply chain risks within automation pipelines. The project distinguishes itself by providing an automated workflow remediator that applies security fixes to identified vulnerabilities. It also implements a language server for integration with code editors and supports a variety of analysis personas to scale the sensitivity and volume of reported findings. The tool covers a broa

    Rustgithub-actionssecuritysecurity-tools
    View on GitHub↗5,717
  • google/cel-gogoogle avatar

    google/cel-go

    2,875View on GitHub↗

    cel-go is a Go implementation of the Common Expression Language, providing a type-safe engine for the evaluation of non-Turing complete, side-effect-free expressions. It functions as an embedded expression engine that converts human-readable strings into type-checked abstract syntax trees to ensure safe execution. The system utilizes a compile-once evaluate-many model, parsing and validating expressions into cached programs for repeated execution across different datasets. It further distinguishes itself as a partial state evaluator, using commutative logic to compute results and return resid

    Gocelexpressionexpression-evaluator
    View on GitHub↗2,875
  • antonmedv/exprantonmedv avatar

    antonmedv/expr

    7,905View on GitHub↗

    Expr is a high-performance expression evaluation engine and language for Go applications. It functions as a dynamic rule engine that parses and executes custom logic and data validations at runtime without requiring the application to be recompiled. The system utilizes a sandboxed logic executor to run expressions without side effects. It ensures program termination by employing instruction-level loop detection to prevent infinite loops and isolates the evaluation process from the host system. The engine employs a bytecode-based virtual machine and abstract syntax tree analysis to achieve ex

    Go
    View on GitHub↗7,905
  • anordal/shellhardenanordal avatar

    anordal/shellharden

    4,784View on GitHub↗

    Shellharden is a shell script hardening tool and linter designed to improve the security and reliability of Bash scripts. It functions as an automated utility that rewrites scripts to follow industry standards for quoting and security practices. The project provides an optimizer and standardizer that replaces unsafe patterns and aliases with safer functional equivalents. It includes a syntax highlighter that uses visual markers and colorization to indicate vulnerabilities and areas where quoting corrections are required. The tool covers a broad range of capabilities including automated safet

    Rust
    View on GitHub↗4,784
Compare all 30 related projects→