> For the complete documentation index, see [llms.txt](https://help.aikido.dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.aikido.dev/code-quality/code-quality-overview.md).

# Code Quality Overview

<table data-view="cards"><thead><tr><th>Section</th><th>What you will find</th><th data-hidden data-card-target data-type="content-ref">Target</th></tr></thead><tbody><tr><td><strong>Set Up PR Checks</strong></td><td>Quality checks on <strong>new code</strong> — scan changed lines on every pull request.</td><td><a href="/pages/RYZG5Loj4cVx7ibbwszK">/pages/RYZG5Loj4cVx7ibbwszK</a></td></tr><tr><td><strong>Repository Scans</strong></td><td>Quality checks on <strong>existing code</strong> — full-repo scores, findings, and hotspots.</td><td><a href="/pages/qdEUqdqgDqaIQcSLuBgd">/pages/qdEUqdqgDqaIQcSLuBgd</a></td></tr><tr><td><strong>Add Custom Code Rules</strong></td><td>Define team-specific checks beyond the defaults.</td><td><a href="/pages/ciSrPopp6tzVhwPcHjtp">/pages/ciSrPopp6tzVhwPcHjtp</a></td></tr><tr><td><strong>Add Extra Code Context</strong></td><td>Give Aikido background on your codebase and conventions.</td><td><a href="/pages/QRM3zrTTGojbe4vdVAdr">/pages/QRM3zrTTGojbe4vdVAdr</a></td></tr><tr><td><strong>Ignore Specific Lines</strong></td><td>Suppress findings on lines you've reviewed and accepted.</td><td><a href="/pages/2bPdLOUICTIuiDt51ghF">/pages/2bPdLOUICTIuiDt51ghF</a></td></tr></tbody></table>

## What is Code Quality?

Code Quality helps you maintain high standards across your codebase — on the **new code** you ship and the **existing code** already in your repos.

Aikido applies AI-powered checks against your team's enabled rules. Findings include plain-language explanations and fix guidance, so developers can act on them without being security experts.

## How it works

Code Quality splits cleanly across two modes:

<table><thead><tr><th width="188.30859375">Mode</th><th>What it covers</th></tr></thead><tbody><tr><td><a href="/pages/RYZG5Loj4cVx7ibbwszK"><strong>PR checks</strong></a></td><td><strong>New code</strong> — lines added or changed in a pull request</td></tr><tr><td><a href="/pages/qdEUqdqgDqaIQcSLuBgd"><strong>Repository scans</strong></a></td><td><strong>Existing code</strong> — the full codebase as it stands today</td></tr></tbody></table>

Use either mode on its own, or both together. PR checks stop quality from getting worse; repository scans show you what's already there and where to focus cleanup.

### PR checks — new code

On every pull request, Aikido scans only the lines you changed and leaves inline comments (or fails the gate, if you configure it that way). This catches regressions before they merge and keeps new contributions aligned with your standards.

See [Set Up PR Checks](/code-quality/code-quality-setup.md) for the full setup flow.

### Repository scans — existing code

A full-codebase scan scores each repository across four quality categories, lists every open finding in code that's already merged, and highlights hotspots where high churn meets low quality.

{% hint style="info" %}
Repository scans are in **early access** and rolling out soon. If you don't see the **Repositories** tab under Code Quality yet, open the **Intercom chat** in the bottom right corner — our team can enable early access for your workspace.
{% endhint %}

See [Repository Scans](/code-quality/repository-scans.md) for setup, pricing, and how to read results.

## Use cases

* **Guard new code at review time** — PR checks on changed lines, with optional gate failures
* **Understand existing code health** — category scores across the full codebase per repository
* **Prioritize legacy cleanup** — scatter plot hotspots where frequently changed files carry the most debt
* **Enforce team standards** — custom rules and code context tailored to your conventions
* **Cover both layers** — PR checks on every merge; repository scans with incremental rescans during your yearly subscription

## Supported languages

Code Quality supports a wide and growing set of languages and frameworks. Click below for the full list.

{% hint style="info" %}
Don't see your language listed? Reach out in intercom. We can look at adding it.
{% endhint %}

<details>

<summary>Supported languages</summary>

* ABAP (SAP)
* angular
* Ansible
* Apex (Salesforce)
* C/C++
* C#
* Clojure
* COBOL
* ColdFusion
* Dart
* Delphi
* Elixir
* Erlang
* go
* Groovy
* Haskell
* Java
* JS
* JSON
* Julia
* Kotlin
* Kubernetes / Helm charts
* Lua
* MySQL
* OCaml
* OpenEdge
* Pascal
* perl
* PHP
* PL/SQL
* PowerShell
* PY
* R
* react
* Ruby
* Rust
* Scala
* shell
* Solidity
* SQL
* svelte
* Swift/Objective-C
* Terraform
* TS
* Visual Basic
* vue
* YAML
* Zig

</details>

For ignoring findings via `.aikido` configuration files in your repository, see [Ignore via Code with Aikido Files](/code-scanning/scanning-practices/ignore-via-code-with-aikido-files.md).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://help.aikido.dev/code-quality/code-quality-overview.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
