Back to the catalog

megalinter

Set up, run and fix MegaLinter on any repository: 100+ linters for 69+ languages, 23+ formats and 21+ tooling formats, from CI or locally.

Open source Open in the app JSON README (API)

About

Set up, run and fix MegaLinter on any repository: 100+ linters for 69+ languages, 23+ formats and 21+ tooling formats, from CI or locally.

Details

Kind
Plugins
Topic
No topic detected
Publisher
oxsecurity
Origin
gemini
Category
ferramentas
Version
1.0.6
Stars
2,577
Forks
310
Open pull requests
15
Last push
2026-09-05T06:20:20Z
Repository state
ativo
Language
Dockerfile
License
AGPL-3.0
Added
2026-08-30 14:13:39
Updated
2026-09-05 23:00:32
Origin id
oxsecurity/megalinter

README

<!-- markdownlint-disable MD013 MD033 MD041 -->

<!-- header-intro-start -->
<!-- header-intro-end -->

<!-- header-logo-start -->
<div align="center">
  <a href="https://megalinter.io" target="blank" title="Visit MegaLinter Web Site">
    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/images/megalinter-banner.png" alt="MegaLinter" min-height="200px">
  </a>
</div>
<!-- header-logo-end -->
<!-- mega-linter-title-start -->

# MegaLinter, by [![OX Security](https://www.ox.security/wp-content/uploads/2022/06/logo.svg?ref=megalinter_readme)](https://www.ox.security/?ref=megalinter)

<!-- mega-linter-title-end -->
<!-- mega-linter-badges-start -->
![GitHub release](https://img.shields.io/github/v/release/oxsecurity/megalinter?sort=semver)
[![Docker Pulls](https://img.shields.io/badge/docker%20pulls-27.2M-blue)](https://megalinter.io/flavors/)
[![Downloads/week](https://img.shields.io/npm/dw/mega-linter-runner.svg)](https://npmjs.org/package/mega-linter-runner)
[![Coding Agents](https://img.shields.io/badge/Coding%20Agents-compatible-blueviolet?logo=githubcopilot&logoColor=white)](https://megalinter.io/latest/coding-agents/)
[![GitHub stars](https://img.shields.io/github/stars/oxsecurity/megalinter?cacheSeconds=3600)](https://github.com/oxsecurity/megalinter/stargazers/)
[![MegaLinter](https://github.com/oxsecurity/megalinter/workflows/MegaLinter/badge.svg?branch=main)](https://github.com/oxsecurity/megalinter/actions?query=workflow%3AMegaLinter+branch%3Amain)
[![codecov](https://codecov.io/gh/oxsecurity/megalinter/branch/main/graph/badge.svg)](https://codecov.io/gh/oxsecurity/megalinter)
<!-- gh-dependents-info-used-by-start -->
[![Generated by github-dependents-info](https://img.shields.io/static/v1?label=Used%20by&message=6203&color=informational&logo=slickpic)](https://github.com/oxsecurity/megalinter/blob/main/./docs/used-by-stats.md)<!-- gh-dependents-info-used-by-end -->
[![Secured with Trivy](https://img.shields.io/badge/Trivy-secured-green?logo=docker)](https://github.com/aquasecurity/trivy)
[![GitHub contributors](https://img.shields.io/github/contributors/oxsecurity/megalinter.svg)](https://github.com/oxsecurity/megalinter/graphs/contributors/)
[![GitHub Sponsors](https://img.shields.io/github/sponsors/nvuillam)](https://github.com/sponsors/nvuillam)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](https://github.com/oxsecurity/megalinter/blob/main/.github/CONTRIBUTING.md)
[![Tweet](https://img.shields.io/twitter/url/http/shields.io.svg?style=social)](https://twitter.com/intent/tweet?text=Check+MegaLinter+to+say+goodbye+to+dirty+code+in+your+projects+%3A%29+100%25+free+and+open+source+for+all+uses&url=https://megalinter.io/&via=NicolasVuillamy&hashtags=linters,code,quality,ci,python,java,golang,c,dotnet,kotlin,rust,scala,salesforce,terraform)
<!-- mega-linter-badges-end -->

<!-- welcome-phrase-start -->
MegaLinter is an **open-source** tool for **CI/CD workflows** that analyzes the **consistency of your code**, **IaC**, **configuration**, and **scripts** in your repository to **ensure all your project sources are clean and formatted**, no matter which IDE or toolbox is used by your developers. Powered by [**OX Security**](https://www.ox.security/?ref=megalinter).

Supports [**66** languages](#languages), [**24** formats](#formats), [**22** tooling formats](#tooling-formats), and is **ready to use out of the box** as a GitHub Action or with any CI system. It is **highly configurable** and **free for all uses**.

MegaLinter has **native integrations** with popular CI/CD tools and is compliant with most [**Coding Agents**](https://megalinter.io/latest/coding-agents/).

<div align="center">
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/reporters/GitHubCommentReporter.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/integrations/github.png?raw=true" alt="GitHub" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/reporters/GitlabCommentReporter.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/integrations/gitlab.png?raw=true" alt="GitLab" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/reporters/AzureCommentReporter.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/integrations/azure.png?raw=true" alt="Azure" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/reporters/BitbucketCommentReporter.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/integrations/bitbucket.png?raw=true" alt="Bitbucket" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/install-jenkins.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/integrations/jenkins.png?raw=true" alt="Jenkins" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/install-drone.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/integrations/drone.png?raw=true" alt="Drone" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/install-concourse.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/integrations/concourse.png?raw=true" alt="Concourse" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/install-docker.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/integrations/docker.png?raw=true" alt="Docker" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/reporters/SarifReporter.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/integrations/sarif.png?raw=true" alt="SARIF" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/observability/grafana.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/integrations/grafana.png?raw=true" alt="Grafana" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/observability/datadog.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/integrations/datadog.png?raw=true" alt="Datadog" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/observability/newrelic.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/integrations/newrelic.png?raw=true" alt="New Relic" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/observability/elastic.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/integrations/elastic.png?raw=true" alt="Elastic" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
</div>

<div align="center">
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/claude.png?raw=true" alt="Claude Code" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/cursor.png?raw=true" alt="Cursor" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/github-copilot.png?raw=true" alt="GitHub Copilot CLI" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/codex.png?raw=true" alt="Codex" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/antigravity.png?raw=true" alt="Antigravity" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/opencode.png?raw=true" alt="OpenCode" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/gemini-cli.png?raw=true" alt="Gemini CLI" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/windsurf.png?raw=true" alt="Windsurf" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/cline.png?raw=true" alt="Cline" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/roo-code.png?raw=true" alt="Roo Code" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/kilo-code.png?raw=true" alt="Kilo Code" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/amp.png?raw=true" alt="Amp" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/goose.png?raw=true" alt="Goose" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/openhands.png?raw=true" alt="OpenHands" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
<a href="https://github.com/oxsecurity/megalinter/tree/main/docs/coding-agents.md"><img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/qwen-code.png?raw=true" alt="Qwen Code" height="40" style="height:40px;vertical-align:middle;margin:4px"></a>
</div>


<!-- welcome-phrase-end -->

![MegaLinter Presentation GIF](https://github.com/oxsecurity/megalinter/blob/main/docs/assets/images/MegaLinter-banner-Medium.gif?raw=true)

- Use the new [LLM Advisor](https://megalinter.io/latest/llm-advisor/) that will tell you how to fix linters issues
- Create your own [MegaLinter Custom Flavors](https://megalinter.io/latest/custom-flavors/) to improve performance

<!-- online-doc-start -->
Before you go further, see the [**online documentation website, which offers much easier navigation than this README**](https://megalinter.io/)
<!-- online-doc-end -->

<!-- table-of-contents-start -->
## Table of Contents

- [Why MegaLinter](#why-megalinter)
- [Quick Start](#quick-start)
- [Coding Agents](#coding-agents)
- [Supported Linters](#supported-linters)
  - [Languages](#languages)
  - [Formats](#formats)
  - [Tooling formats](#tooling-formats)
  - [Other](#other)
- [Installation](#installation)
  - [Coding agents (skills)](#coding-agents-skills)
  - [Coding Agents (Plugins)](#coding-agents-plugins)
  - [Assisted installation](#assisted-installation)
  - [Which version to use ?](#which-version-to-use-)
  - [GitHub Action](#github-action)
  - [GitLab CI](#gitlab-ci)
  - [Azure Pipelines](#azure-pipelines)
    - [Single Repository](#single-repository)
    - [Central Repository](#central-repository)
    - [Pull Request Comments](#pull-request-comments)
    - [Detailed Tutorial](#detailed-tutorial)
  - [Bitbucket Pipelines](#bitbucket-pipelines)
  - [Jenkins](#jenkins)
  - [Concourse](#concourse)
    - [Pipeline step](#pipeline-step)
    - [Use it as a reusable task](#use-it-as-a-reusable-task)
  - [Drone CI](#drone-ci)
    - [(Optional) Adjusting trigger rules](#optional-adjusting-trigger-rules)
  - [Docker container](#docker-container)
  - [Run MegaLinter locally](#run-megalinter-locally)
- [Configuration](#configuration)
  - [.mega-linter.yml file](#mega-linteryml-file)
  - [Common variables](#common-variables)
  - [Activation and deactivation](#activation-and-deactivation)
  - [Filter linted files](#filter-linted-files)
  - [Apply fixes](#apply-fixes)
    - [Apply fixes issues](#apply-fixes-issues)
    - [Notes](#notes)
  - [Linter specific variables](#linter-specific-variables)
  - [Pre-commands](#pre-commands)
  - [Post-commands](#post-commands)
  - [Environment variables security](#environment-variables-security)
    - [Secured env variables](#secured-env-variables)
    - [Secured configuration examples](#secured-configuration-examples)
    - [Default secured variables](#default-secured-variables)
    - [Unhide variables for linters](#unhide-variables-for-linters)
  - [CLI lint mode](#cli-lint-mode)
- [Reporters](#reporters)
- [Flavors](#flavors)
- [Badge](#badge)
  - [Markdown](#markdown)
  - [reStructuredText](#restructuredtext)
- [Plugins](#plugins)
  - [External Plugins Catalog](#external-plugins-catalog)
  - [Use external plugins](#use-external-plugins)
    - [Example](#example)
  - [Create your own plugin](#create-your-own-plugin)
    - [Limitations](#limitations)
- [They talk about MegaLinter](#they-talk-about-megalinter)
  - [English articles](#english-articles)
  - [French articles](#french-articles)
  - [Videos](#videos)
  - [Web Sites](#web-sites)
  - [Linters](#linters)
- [Frequently Asked Questions](#frequently-asked-questions)
- [How to contribute](#how-to-contribute)
- [Special thanks](#special-thanks)
  - [Maintainers](#maintainers)
  - [Contributors](#contributors)
  - [Open-source teams](#open-source-teams)
  - [Super-Linter team](#super-linter-team)
- [License](#license)
- [MegaLinter vs Super-Linter](#megalinter-vs-super-linter)
  - [Security](#security)
  - [Performance](#performance)
  - [More languages and formats linted](#more-languages-and-formats-linted)
  - [Automatically apply formatting and fixes](#automatically-apply-formatting-and-fixes)
  - [Run locally](#run-locally)
  - [Reports](#reports)
    - [Capabilities](#capabilities)
    - [Additional Reporters](#additional-reporters)
  - [Enhanced configuration](#enhanced-configuration)
  - [Enhanced documentation](#enhanced-documentation)
  - [Plugin management](#plugin-management)
  - [Simplify architecture and evolutionary maintenance](#simplify-architecture-and-evolutionary-maintenance)
  - [Improve robustness \& stability](#improve-robustness--stability)
<!-- table-of-contents-end -->

## Why MegaLinter

Projects need to contain clean code in order to **avoid technical debt**, which makes **ongoing maintenance harder and more time-consuming**.

By using [**code formatters and code linters**](#supported-linters), you ensure that your **codebase is easier to read** and **follows best practices**, from kickoff through each step of the project lifecycle.

Not all developers use linters in their IDEs, which makes code reviews harder and longer to process.

By using **MegaLinter**, you'll enjoy the following benefits for your team:

- At **each pull request**, it **automatically analyzes all updated code across all languages**.
- By reading error logs, **developers learn best practices** for the languages they use.
- The [**MegaLinter documentation**](https://megalinter.io/) provides a **list of IDE plugins for each linter**, so developers know which linter and plugins to install.
- MegaLinter **works out of the box** after a [**quick setup**](#quick-start).
- **Formatting and fixes** can be automatically [**applied directly to the Git branch**](https://github.com/oxsecurity/megalinter/tree/main/docs/config-apply-fixes.md) or [**provided in reports**](https://github.com/oxsecurity/megalinter/tree/main/docs/reporters/UpdatedSourcesReporter.md).
- This tool is **100% open source** and **free for all uses** (personal, professional, public, and private repositories).
- MegaLinter can run on [**any CI tool**](https://github.com/oxsecurity/megalinter/tree/main/docs/install-assisted.md) and be [**run locally**](https://megalinter.io/mega-linter-runner/): **no need to authorize an external application**, and **your codebase never leaves your tooling ecosystem**.

Join a **continuously growing community**: MegaLinter Docker images are pulled **hundreds of thousands of times every month**.

[![MegaLinter Docker pulls per month](https://github.com/oxsecurity/megalinter/raw/main/docs/assets/images/docker-pulls-monthly.svg)](https://megalinter.io/latest/flavors-stats/)

<!-- quick-start-section-start -->
<!-- markdown-headers
---
title: Quick Start with MegaLinter
description: Setup MegaLinter in 5 minutes thanks to its assisted installation tool
---
-->
## Quick Start

- **With a coding agent**: install the [MegaLinter agent skills](https://megalinter.io/latest/install-agent-skills/) with `npx skills add oxsecurity/megalinter/skills`, then ask your agent to _"setup megalinter"_.
- **Or with the interactive wizard**: run `npx mega-linter-runner --install` to generate configuration files (you need [Node.js](https://nodejs.org/en/) installed).
- Commit, push, and create a pull request.
- Watch!

![Runner Install](https://github.com/oxsecurity/megalinter/blob/main/docs/assets/images/mega-linter-runner-generator.gif?raw=true)

**Notes**:

<!-- # MAJOR-RELEASE-IMPACTED -->

- This repo is a hard fork of [GitHub Super-Linter](https://github.com/super-linter/super-linter), rewritten in Python to add [many additional features](#mega-linter-vs-super-linter).
- If you are a Super-Linter user, you can transparently **switch to MegaLinter and keep the same configuration** (just replace `super-linter/super-linter@v3` with `oxsecurity/megalinter@v10` in your GitHub Action YAML file, [like on this PR](https://github.com/nvuillam/npm-groovy-lint/pull/109)).
- If you want to use MegaLinter's extra features (recommended), please take 5 minutes to use the [assisted installation](https://github.com/oxsecurity/megalinter/tree/main/docs/install-assisted.md).
- For a beginner-friendly example of getting started with MegaLinter, check out [this blog post](https://ayyjohn.com/posts/linting-a-jekyll-blog-with-mega-linter) by Alec Johnson.
<!-- quick-start-section-end -->

<!-- coding-agents-section-start -->
<!-- markdown-headers
---
title: Use MegaLinter with coding agents
description: Setup, run and fix MegaLinter errors from Claude Code, Cursor, GitHub Copilot CLI, Codex, Gemini CLI, Antigravity, OpenCode and other coding agents, with token-efficient sub-agents orchestration
---
-->
## Coding Agents

MegaLinter is designed to work hand in hand with your coding agent:

[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/claude.png?raw=true" alt="Claude Code" height="40" style="height:40px">](https://claude.com/product/claude-code)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/cursor.png?raw=true" alt="Cursor" height="40" style="height:40px">](https://cursor.com)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/github-copilot.png?raw=true" alt="GitHub Copilot CLI" height="40" style="height:40px">](https://github.com/features/copilot)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/codex.png?raw=true" alt="Codex" height="40" style="height:40px">](https://openai.com/codex/)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/antigravity.png?raw=true" alt="Antigravity" height="40" style="height:40px">](https://antigravity.google/)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/opencode.png?raw=true" alt="OpenCode" height="40" style="height:40px">](https://opencode.ai)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/gemini-cli.png?raw=true" alt="Gemini CLI" height="40" style="height:40px">](https://github.com/google-gemini/gemini-cli)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/windsurf.png?raw=true" alt="Windsurf" height="40" style="height:40px">](https://windsurf.com)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/cline.png?raw=true" alt="Cline" height="40" style="height:40px">](https://cline.bot)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/roo-code.png?raw=true" alt="Roo Code" height="40" style="height:40px">](https://roocode.com)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/kilo-code.png?raw=true" alt="Kilo Code" height="40" style="height:40px">](https://kilocode.ai)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/amp.png?raw=true" alt="Amp" height="40" style="height:40px">](https://ampcode.com)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/goose.png?raw=true" alt="Goose" height="40" style="height:40px">](https://block.github.io/goose/)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/openhands.png?raw=true" alt="OpenHands" height="40" style="height:40px">](https://www.all-hands.dev)
[<img src="https://github.com/oxsecurity/megalinter/blob/main/docs/assets/icons/agents/qwen-code.png?raw=true" alt="Qwen Code" height="40" style="height:40px">](https://github.com/QwenLM/qwen-code)

### Get started

Install the [MegaLinter agent skills](https://github.com/oxsecurity/megalinter/tree/main/skills) at the root of your repository:

With **Claude Code** (the skills are copied directly into `.claude/skills/`):

```bash
npx skills add oxsecurity/megalinter/skills -s '*' -a claude-code -y
```

With **another coding agent**, replace `claude-code` with your agent's identifier (`cursor`, `github-copilot`, `codex`, `antigravity`, `opencode`... full list in the [skills CLI documentation](https://github.com/vercel-labs/skills#supported-agents)) — or let the CLI **detect your installed agents** and install the skills for all of them at once:

```bash
npx skills add oxsecurity/megalinter/skills -s '*' -y --copy
```

Then just talk to your agent:

- _"Setup MegaLinter on this repo"_
- _"Run MegaLinter and fix the errors"_
- _"Why is the MegaLinter CI job failing? Fix it"_

### What the skills do

| Skill                | Role                                                                                                                                                                |
|:---------------------|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| **megalinter**       | Entry point: detects the repository state and orchestrates the other skills in a check → fix → re-check loop (3 iterations max)                                     |
| **megalinter-setup** | Installs or upgrades MegaLinter using `npx mega-linter-runner --install` (non-interactive), then refines `.mega-linter.yml`                                         |
| **megalinter-check** | Collects errors: watches a MegaLinter CI job (GitHub Actions, GitLab CI, Azure Pipelines, Bitbucket Pipelines) or runs MegaLinter locally with docker/podman        |
| **megalinter-fix**   | Fixes errors guided by a per-linter fix guide (one for each of the 124 linters, loaded only when its linter has errors), asks you before disabling rules or pushing |

### Sub-agents orchestration

On agents supporting sub-agents (Claude Code, OpenCode, GitHub Copilot custom agents...), `megalinter-setup` installs three sub-agents that keep large CI logs and linter outputs **out of your main agent's context**, and run on low-cost models when possible:

```mermaid
flowchart TD
    U(["👤 You: <i>run megalinter and fix the errors</i>"]) --> O["🎯 megalinter<br/>(orchestrator skill)"]
    O -->|"no config found"| S["🛠️ megalinter-setup"]
    S -->|"npx mega-linter-runner --install"| CFG[/".mega-linter.yml<br/>+ CI workflow"/]
    O --> C["🔍 megalinter-check"]
    C -->|"watch mode"| W[["👀 megalinter-watcher<br/>sub-agent, low-cost model"]]
    W --> CI[/"CI job logs<br/>GitHub / GitLab / Azure / Bitbucket"/]
    C -->|"local mode"| RUN[["🐳 megalinter-runner<br/>sub-agent, low-cost model"]]
    RUN --> IMG[/"MegaLinter Docker image<br/>docker or podman"/]
    W --> ERR[/"📋 Compact error list<br/>grouped by linter"/]
    RUN --> ERR
    ERR --> F["🔧 megalinter-fix"]
    F -->|"one sub-agent per failing linter,<br/>in parallel"| FX1[["🤖 megalinter-fixer<br/>+ python_ruff fix guide"]]
    F --> FX2[["🤖 megalinter-fixer<br/>+ markdown_markdownlint fix guide"]]
    FX1 --> RES[/"✏️ Fixed files<br/>+ proposed rule disables"/]
    FX2 --> RES
    RES -->|"you confirm disables"| RC["♻️ Targeted re-check<br/>parallel standalone linter images"]
    RC -->|"errors remain (max 3 loops)"| F
    RC -->|"clean"| DONE(["✅ Commit on a branch<br/>(never on main)"])

    classDef user fill:#e8f5e9,stroke:#2e7d32,stroke-width:2px,color:#1b5e20
    classDef skill fill:#ede7f6,stroke:#5e35b1,stroke-width:2px,color:#311b92
    classDef subagent fill:#e3f2fd,stroke:#1976d2,stroke-width:2px,color:#0d47a1
    classDef artifact fill:#fff8e1,stroke:#f9a825,stroke-width:1px,color:#5d4037
    classDef recheck fill:#e0f2f1,stroke:#00897b,stroke-width:2px,color:#004d40

    class U,DONE user
    class O,S,C,F skill
    class W,RUN,FX1,FX2 subagent
    class CFG,CI,IMG,ERR,RES artifact
    class RC recheck
```

The fix guides combine information generated from the [linter descriptors](https://github.com/oxsecurity/megalinter/tree/main/megalinter/descriptors) (auto-fix support, rules documentation URLs, MegaLinter tuning variables) with curated fix, inline-disable and ignore instructions grounded in each linter's official documentation.

### Safety rules

- Safe fixes are applied automatically; ambiguous ones are asked to you
- Disabling a linter or a rule always requires your confirmation
- Commits are never pushed to the default branch

See also the [installation page for coding agents](https://megalinter.io/latest/install-agent-skills/), or install everything at once as an [agent plugin](https://megalinter.io/latest/agent-plugins/).

<!-- coding-agents-section-end -->

<!-- supported-linters-section-start -->
<!-- markdown-headers
---
title: List of the 100+ supported linters embedded in MegaLinter
description: Full list of all linters for all languages and formats that are available in MegaLinter
---
-->
## Supported Linters

All linters are integrated into the [MegaLinter Docker image](https://hub.docker.com/r/oxsecurity/megalinter), which is frequently updated with their latest versions.

<!-- languages-section-start-->
<!-- linters-table-start -->
### Languages

|                                                                               <!-- -->                                                                               | Language                                                                                                            | Linter                                                                                                                                                                                                                                                                             |                                                                                                                                                                                                Additional                                                                                                                                                                                                 |
|:--------------------------------------------------------------------------------------------------------------------------------------------------------------------:|---------------------------------------------------------------------------------------------------------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|:---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------:|
|    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/bash.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->    | [**BASH**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bash.md)                             | [**bash-exec**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bash_bash_exec.md)<br/>[_BASH_EXEC_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bash_bash_exec.md)                                                                    |                                                                                                                                                                                                                                                                                                                                                                                                           |
|    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/bash.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->    | [**BASH**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bash.md)                             | [**shellcheck**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bash_shellcheck.md)<br/>[_BASH_SHELLCHECK_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bash_shellcheck.md)                                                           |                                                                                                           [![GitHub stars](https://img.shields.io/github/stars/koalaman/shellcheck?cacheSeconds=3600)](https://github.com/koalaman/shellcheck) ![sarif](https://shields.io/badge/-SARIF-orange)                                                                                                           |
|    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/bash.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->    | [**BASH**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bash.md)                             | [**shfmt**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bash_shfmt.md)<br/>[_BASH_SHFMT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/bash_shfmt.md)                                                                               |                                                                                                                   [![GitHub stars](https://img.shields.io/github/stars/mvdan/sh?cacheSeconds=3600)](https://github.com/mvdan/sh) ![formatter](https://shields.io/badge/-format-yellow)                                                                                                                    |
|     <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/c.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->      | [**C**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/c.md)                                   | [**cppcheck**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/c_cppcheck.md)<br/>[_C_CPPCHECK_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/c_cppcheck.md)                                                                            |                                                                                                                                                                             ![sarif](https://shields.io/badge/-SARIF-orange)                                                                                                                                                                              |
|     <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/c.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->      | [**C**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/c.md)                                   | [**cpplint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/c_cpplint.md)<br/>[_C_CPPLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/c_cpplint.md)                                                                                |                                                                                                                                       [![GitHub stars](https://img.shields.io/github/stars/cpplint/cpplint?cacheSeconds=3600)](https://github.com/cpplint/cpplint)                                                                                                                                        |
|     <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/c.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->      | [**C**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/c.md)                                   | [**clang-format**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/c_clang_format.md)<br/>[_C_CLANG_FORMAT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/c_clang_format.md)                                                            |                                                                                                           [![GitHub stars](https://img.shields.io/github/stars/llvm/llvm-project?cacheSeconds=3600)](https://github.com/llvm/llvm-project) ![autofix](https://shields.io/badge/-autofix-green)                                                                                                            |
|  <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/clojure.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->   | [**CLOJURE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/clojure.md)                       | [**clj-kondo**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/clojure_clj_kondo.md)<br/>[_CLOJURE_CLJ_KONDO_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/clojure_clj_kondo.md)                                                      |                                                                                                            [![GitHub stars](https://img.shields.io/github/stars/borkdude/clj-kondo?cacheSeconds=3600)](https://github.com/borkdude/clj-kondo) ![sarif](https://shields.io/badge/-SARIF-orange)                                                                                                            |
|  <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/clojure.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->   | [**CLOJURE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/clojure.md)                       | [**cljstyle**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/clojure_cljstyle.md)<br/>[_CLOJURE_CLJSTYLE_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/clojure_cljstyle.md)                                                          |                                                                                                           [![GitHub stars](https://img.shields.io/github/stars/greglook/cljstyle?cacheSeconds=3600)](https://github.com/greglook/cljstyle) ![autofix](https://shields.io/badge/-autofix-green)                                                                                                            |
|   <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/coffee.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->   | [**COFFEE**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/coffee.md)                         | <s>[**coffeelint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/coffee_coffeelint.md)<br/>[_COFFEE_COFFEELINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/coffee_coffeelint.md)</s>                                              | <span title="Disabled: CoffeeScript tooling is discontinued, and coffeelint can not honor EXCLUDED_DIRECTORIES (it has no exclusion option and only reads .coffeelintignore from its working directory). The linter will be removed in a future version">🚫</span> [![GitHub stars](https://img.shields.io/github/stars/clutchski/coffeelint?cacheSeconds=3600)](https://github.com/clutchski/coffeelint) |
|    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/cpp.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->     | [**C++** (CPP)](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cpp.md)                         | [**cppcheck**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cpp_cppcheck.md)<br/>[_CPP_CPPCHECK_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cpp_cppcheck.md)                                                                      |                                                                                                                                                                             ![sarif](https://shields.io/badge/-SARIF-orange)                                                                                                                                                                              |
|    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/cpp.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->     | [**C++** (CPP)](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cpp.md)                         | [**cpplint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cpp_cpplint.md)<br/>[_CPP_CPPLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cpp_cpplint.md)                                                                          |                                                                                                                                       [![GitHub stars](https://img.shields.io/github/stars/cpplint/cpplint?cacheSeconds=3600)](https://github.com/cpplint/cpplint)                                                                                                                                        |
|    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/cpp.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->     | [**C++** (CPP)](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cpp.md)                         | [**clang-format**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cpp_clang_format.md)<br/>[_CPP_CLANG_FORMAT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/cpp_clang_format.md)                                                      |                                                                                                           [![GitHub stars](https://img.shields.io/github/stars/llvm/llvm-project?cacheSeconds=3600)](https://github.com/llvm/llvm-project) ![autofix](https://shields.io/badge/-autofix-green)                                                                                                            |
|   <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/csharp.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->   | [**C#** (CSHARP)](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/csharp.md)                    | [**dotnet-format**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/csharp_dotnet_format.md)<br/>[_CSHARP_DOTNET_FORMAT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/csharp_dotnet_format.md)                                         |                                                                                                                 [![GitHub stars](https://img.shields.io/github/stars/dotnet/sdk?cacheSeconds=3600)](https://github.com/dotnet/sdk) ![formatter](https://shields.io/badge/-format-yellow)                                                                                                                  |
|   <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/csharp.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->   | [**C#** (CSHARP)](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/csharp.md)                    | [**csharpier**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/csharp_csharpier.md)<br/>[_CSHARP_CSHARPIER_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/csharp_csharpier.md)                                                         |                                                                                                            [![GitHub stars](https://img.shields.io/github/stars/belav/csharpier?cacheSeconds=3600)](https://github.com/belav/csharpier) ![formatter](https://shields.io/badge/-format-yellow)                                                                                                             |
|   <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/csharp.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->   | [**C#** (CSHARP)](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/csharp.md)                    | [**roslynator**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/csharp_roslynator.md)<br/>[_CSHARP_ROSLYNATOR_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/csharp_roslynator.md)                                                     |                                                                                                          [![GitHub stars](https://img.shields.io/github/stars/dotnet/Roslynator?cacheSeconds=3600)](https://github.com/dotnet/Roslynator) ![formatter](https://shields.io/badge/-format-yellow)                                                                                                           |
|    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/dart.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->    | [**DART**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/dart.md)                             | [**dartanalyzer**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/dart_dartanalyzer.md)<br/>[_DART_DARTANALYZER_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/dart_dartanalyzer.md)                                                   |                                                                                                                                         [![GitHub stars](https://img.shields.io/github/stars/dart-lang/sdk?cacheSeconds=3600)](https://github.com/dart-lang/sdk)                                                                                                                                          |
|     <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/go.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->     | [**GO**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/go.md)                                 | [**golangci-lint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/go_golangci_lint.md)<br/>[_GO_GOLANGCI_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/go_golangci_lint.md)                                                     |                                                                              [![GitHub stars](https://img.shields.io/github/stars/golangci/golangci-lint?cacheSeconds=3600)](https://github.com/golangci/golangci-lint) ![autofix](https://shields.io/badge/-autofix-green) ![sarif](https://shields.io/badge/-SARIF-orange)                                                                              |
|     <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/go.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->     | [**GO**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/go.md)                                 | [**revive**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/go_revive.md)<br/>[_GO_REVIVE_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/go_revive.md)                                                                                 |                                                                                                                [![GitHub stars](https://img.shields.io/github/stars/mgechev/revive?cacheSeconds=3600)](https://github.com/mgechev/revive) ![sarif](https://shields.io/badge/-SARIF-orange)                                                                                                                |
|   <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/groovy.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->   | [**GROOVY**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/groovy.md)                         | [**npm-groovy-lint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/groovy_npm_groovy_lint.md)<br/>[_GROOVY_NPM_GROOVY_LINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/groovy_npm_groovy_lint.md)                                 |                                                                            [![GitHub stars](https://img.shields.io/github/stars/nvuillam/npm-groovy-lint?cacheSeconds=3600)](https://github.com/nvuillam/npm-groovy-lint) ![autofix](https://shields.io/badge/-autofix-green) ![sarif](https://shields.io/badge/-SARIF-orange)                                                                            |
|    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/java.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->    | [**JAVA**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/java.md)                             | [**checkstyle**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/java_checkstyle.md)<br/>[_JAVA_CHECKSTYLE_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/java_checkstyle.md)                                                           |                                                                                                         [![GitHub stars](https://img.shields.io/github/stars/checkstyle/checkstyle?cacheSeconds=3600)](https://github.com/checkstyle/checkstyle) ![sarif](https://shields.io/badge/-SARIF-orange)                                                                                                         |
|    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/java.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->    | [**JAVA**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/java.md)                             | [**pmd**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/java_pmd.md)<br/>[_JAVA_PMD_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/java_pmd.md)                                                                                       |                                                                                                                       [![GitHub stars](https://img.shields.io/github/stars/pmd/pmd?cacheSeconds=3600)](https://github.com/pmd/pmd) ![sarif](https://shields.io/badge/-SARIF-orange)                                                                                                                       |
| <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/javascript.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon --> | [**JAVASCRIPT**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/javascript.md)                 | [**eslint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/javascript_eslint.md)<br/>[_JAVASCRIPT_ES_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/javascript_eslint.md)                                                             |                                                                                       [![GitHub stars](https://img.shields.io/github/stars/eslint/eslint?cacheSeconds=3600)](https://github.com/eslint/eslint) ![autofix](https://shields.io/badge/-autofix-green) ![sarif](https://shields.io/badge/-SARIF-orange)                                                                                       |
| <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/javascript.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon --> | [**JAVASCRIPT**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/javascript.md)                 | [**standard**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/javascript_standard.md)<br/>[_JAVASCRIPT_STANDARD_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/javascript_standard.md)                                                 |                                                                                                           [![GitHub stars](https://img.shields.io/github/stars/standard/standard?cacheSeconds=3600)](https://github.com/standard/standard) ![autofix](https://shields.io/badge/-autofix-green)                                                                                                            |
| <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/javascript.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon --> | [**JAVASCRIPT**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/javascript.md)                 | [**prettier**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/javascript_prettier.md)<br/>[_JAVASCRIPT_PRETTIER_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/javascript_prettier.md)                                                 |                                                                                                          [![GitHub stars](https://img.shields.io/github/stars/prettier/prettier?cacheSeconds=3600)](https://github.com/prettier/prettier) ![formatter](https://shields.io/badge/-format-yellow)                                                                                                           |
| <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/javascript.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon --> | [**JAVASCRIPT**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/javascript.md)                 | [**biome**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/javascript_biome.md)<br/>[_JAVASCRIPT_BIOME_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/javascript_biome.md)                                                             |                                                                                       [![GitHub stars](https://img.shields.io/github/stars/biomejs/biome?cacheSeconds=3600)](https://github.com/biomejs/biome) ![autofix](https://shields.io/badge/-autofix-green) ![sarif](https://shields.io/badge/-SARIF-orange)                                                                                       |
|    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/jsx.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->     | [**JSX**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/jsx.md)                               | [**eslint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/jsx_eslint.md)<br/>[_JSX_ESLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/jsx_eslint.md)                                                                              |                                                                                 [![GitHub stars](https://img.shields.io/github/stars/Rel1cx/eslint-react?cacheSeconds=3600)](https://github.com/Rel1cx/eslint-react) ![autofix](https://shields.io/badge/-autofix-green) ![sarif](https://shields.io/badge/-SARIF-orange)                                                                                 |
|    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/jsx.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->     | [**JSX**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/jsx.md)                               | [**biome**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/jsx_biome.md)<br/>[_JSX_BIOME_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/jsx_biome.md)                                                                                  |                                                                                       [![GitHub stars](https://img.shields.io/github/stars/biomejs/biome?cacheSeconds=3600)](https://github.com/biomejs/biome) ![autofix](https://shields.io/badge/-autofix-green) ![sarif](https://shields.io/badge/-SARIF-orange)                                                                                       |
|   <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/kotlin.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->   | [**KOTLIN**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kotlin.md)                         | [**ktlint**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kotlin_ktlint.md)<br/>[_KOTLIN_KTLINT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kotlin_ktlint.md)                                                                     |                                                                                    [![GitHub stars](https://img.shields.io/github/stars/pinterest/ktlint?cacheSeconds=3600)](https://github.com/pinterest/ktlint) ![autofix](https://shields.io/badge/-autofix-green) ![sarif](https://shields.io/badge/-SARIF-orange)                                                                                    |
|   <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/kotlin.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->   | [**KOTLIN**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kotlin.md)                         | [**detekt**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kotlin_detekt.md)<br/>[_KOTLIN_DETEKT_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/kotlin_detekt.md)                                                                     |                                                                                                                 [![GitHub stars](https://img.shields.io/github/stars/detekt/detekt?cacheSeconds=3600)](https://github.com/detekt/detekt) ![sarif](https://shields.io/badge/-SARIF-orange)                                                                                                                 |
|    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/lua.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->     | [**LUA**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/lua.md)                               | [**luacheck**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/lua_luacheck.md)<br/>[_LUA_LUACHECK_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/lua_luacheck.md)                                                                      |                                                                                                                                 [![GitHub stars](https://img.shields.io/github/stars/lunarmodules/luacheck?cacheSeconds=3600)](https://github.com/lunarmodules/luacheck)                                                                                                                                  |
|    <img src="https://github.com/oxsecurity/megalinter/raw/main/docs/assets/icons/lua.ico" alt="" height="32px" class="megalinter-icon"></a> <!-- linter-icon -->     | [**LUA**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/lua.md)                               | [**stylua**](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/lua_stylua.md)<br/>[_LUA_STYLUA_](https://github.com/oxsecurity/megalinter/tree/main/docs/descriptors/lua_stylua.md)                                                                              |                                                                                                                                  [![GitHub stars](https://img.shields.io/github/stars/JohnnyMorganz/StyLua?cacheSeconds=3600)](https://github.com/JohnnyMorganz/StyLua)                                                        

More