Control which files are included or excluded from automated PR reviews using simple pattern matching.

Overview

CodeAnt AI reviews all files in pull requests by default. Use review configuration to:

  • Focus reviews on critical code paths
  • Exclude test files or generated files
  • Optimize review time and relevance

Note: CodeAnt does not analyze files mentioned in .gitignore

Setup

1. Create Configuration Folder

Create a .codeant folder in your repository root (same level as your .git folder):

your-repo/
├── .git/
├── .codeant/
│   └── configuration.json
├── src/
└── package.json

2. Create Instructions File

Inside the .codeant folder, create an configuration.json file with your custom review instructions.

Configuration Format

The configuration.json file uses the following structure:

{
  "review_configuration": {
    "include": [],
    "exclude": []
  }
}

How It Works

Default Behavior

  • When both include and exclude are empty: All files are reviewed
  • When only exclude has patterns: All files except matches are reviewed
  • When only include has patterns: Only matching files are reviewed
  • When both have patterns: Include patterns are applied first, then excludes

Pattern Matching

Patterns use minimatch syntax for flexible file matching.

Configuration Examples

Exclude Common Patterns

{
  "review_configuration": {
    "include": [],
    "exclude": [
      "**/*test.js"
    ]
  }
}

Include Only Source Code

{
  "review_configuration": {
    "include": [
      "src/**/*.{js,ts,jsx,tsx}",
      "lib/**/*.{js,ts}",
      "components/**/*.{vue,svelte}"
    ],
    "exclude": []
  }
}

Combined Include/Exclude

{
  "review_configuration": {
    "include": [
      "src/**/*"
    ],
    "exclude": [
      "src/**/*.test.{js,ts}",
      "src/**/*.spec.{js,ts}",
      "src/generated/**"
    ]
  }
}

Pattern Reference

Basic Patterns

PatternMatches
*.jsAll .js files in root
**/*.jsAll .js files in any directory
src/**Everything under src/
*.{js,ts}All .js and .ts files
!*.test.jsExclude test files

Common Exclusions

PatternPurpose
**/node_modules/**Dependencies
**/dist/**Build output
**/*.min.{js,css}Minified files
**/*.generated.*Generated code
**/coverage/**Test coverage
**/.env*Environment files
**/vendor/**Third-party code
**/*.{png,jpg,gif,svg}Images
**/package-lock.jsonLock files

Common Inclusions

PatternPurpose
src/**/*.{js,ts,jsx,tsx}Source files
**/*.{py,pyw}Python files
app/**/*.rbRuby files
**/*.{cs,vb}.NET files
**/*.{java,kt}JVM files
**/*.goGo files
**/*.rsRust files
**/*.{swift,m,h}iOS files

Advanced Patterns

PatternDescription
src/**/!(*.test).*Src files except tests
**/{src,lib}/**/*.jsJS in src or lib
`**/?(*.)+(.spectest).js`Optional test files
**/*.controller.{ts,js}Controller files
{app,src}/**/*.{ts,tsx}TS files in multiple dirs