.raigal/config.yml in your repository root. Configuration files use strict schema validation validated with Zod; unexpected or misspelled keys trigger validation errors.
Complete configuration example
Here is a full.raigal/config.yml file matching the schema:
File locations and precedence
Raigal resolves configuration by searching upward from the target directory until reaching the repository root:.raigal/config.ymlor.raigal/config.yaml.raigal/config.json- Root files:
.raigal.yml,.raigal.yaml, or.raigal.json - Legacy directory paths for backward compatibility (
.aislop/config.yml)
Options reference
engines
Enables or disables individual analysis engines:
format(boolean, default:true): whitespace, indentation, line wrapping, and import ordering.lint(boolean, default:true): static analysis rules via Oxlint, Ruff, Clippy, and language tools.code-quality(boolean, default:true): unused exports (Knip), dead code detection, and complexity limits.ai-slop(boolean, default:true): rules detecting AI-generated anti-patterns, trivial comments, and redundant wrappers.architecture(boolean, default:false): layer boundary enforcement and dependency validation.security(boolean, default:true): hardcoded secrets, injection vulnerabilities, and risky APIs.
quality
Defines structural thresholds enforced by the code-quality engine:
maxFunctionLoc(number, default:80): maximum physical lines of code per function.maxFileLoc(number, default:400): maximum physical lines of code per file.maxNesting(number, default:5): maximum depth of nested control flow blocks.maxParams(number, default:6): maximum parameter count per function signature.
lint
Configures language-specific compiler and diagnostic tools:
typecheck(boolean, default:false): runs TypeScript compiler diagnostics (tsc).expoDoctor(boolean, default:false): runs Expo React Native health checks.csharp: settings for C# tooling, includingroslynatorand JetBrains InspectCode (jb).cpp: settings for C/C++ tooling (cppcheck,clangTidy).
ci
Configures automated continuous integration behavior:
failBelow(number, default:70): minimum passing quality score. If a scan score falls below this value or encounters anerror-level finding,raigal ciexits with code 1.format("json", default:"json"): output serialization format for CI runs.
baseline
Configures incremental regression matching against .raigal/baseline.json:
mode("strict"|"relaxed", default:"relaxed"): when set to"strict", Stage 3 file-level absorption is disabled. Any finding outside the 11-line window is flagged as a blocking regression.
licensing
Defines CI behavior when entitlement verification lapses:
onLapse("fail-open"|"fail-closed", default:"fail-open"): when set to"fail-closed", CI exits with code 2 if entitlement cannot be verified after the grace period.
workspace
Enforces organizational minimum standards across monorepo packages:
minimumFloor(number, default:50): sets a hard lower bound onci.failBelowthat child package configs cannot lower.
scoring
Tunes scoring engine parameters:
thresholds: object defining CLI status boundaries.good(number, default:75): score at or above which status is labeledHealthy.ok(number, default:50): score at or above which status is labeledNeeds Work. Below this, status isCritical.
smoothing(number, default:5): smoothing constant added to file count to avoid disproportionate penalties in small repositories.maxPerRule(number, default:40): maximum deduction baseline allowed for any single rule before repository scale multipliers apply.weights: custom category weights (defaults:security: 1.5,ai-slop: 1.0,architecture: 1.0,code-quality: 0.8,lint: 0.6,format: 0.3).
rules
A map of rule identifiers to severity overrides:
"error", "warning", and "off".
exclude and include
Defines filesystem scope for all engines:
exclude(array of strings): paths and directories to ignore. Default:["node_modules", ".git", "dist", "build", "coverage"].include(array of strings): explicit paths to scan. When empty ([]), all non-excluded supported files are scanned.
overrides
Applies custom quality limits or rule severities to matching file patterns:
telemetry
Controls telemetry delivery to Raigal Cloud:
false to disable outbound telemetry queueing.