.raigal/config.yml en la raíz del repositorio. El archivo sigue un esquema estricto validado con Zod; cualquier propiedad no reconocida o mal escrita produce un error inmediato de validación.
Ejemplo completo de configuración
A continuación tienes un archivo.raigal/config.yml completo con todos los campos válidos:
Ubicación de archivos y orden de prioridad
Raigal busca el archivo de configuración recorriendo directorios hacia arriba hasta la raíz del repositorio:.raigal/config.ymlo.raigal/config.yaml.raigal/config.json- Archivos en la raíz:
.raigal.yml,.raigal.yamlo.raigal.json - Rutas heredadas de compatibilidad (
.aislop/config.yml)
Referencia de opciones
engines
Activa o desactiva motores de análisis individuales:
format(booleano, por defecto:true): espacios en blanco, sangrado, ajuste de líneas y orden de importaciones.lint(booleano, por defecto:true): reglas de linters con Oxlint, Ruff, Clippy y herramientas nativas.code-quality(booleano, por defecto:true): exportaciones sin uso (Knip), código muerto y límites de complejidad.ai-slop(booleano, por defecto:true): reglas contra malos patrones generados por IA, comentarios obvios y funciones wrapper redundantes.architecture(booleano, por defecto:false): límites arquitectónicos e importaciones cruzadas entre capas.security(booleano, por defecto:true): secretos expuestos, inyecciones de código y llamadas a funciones peligrosas.
quality
Define los límites estructurales evaluados por el motor code-quality:
maxFunctionLoc(número, por defecto:80): máximo de líneas físicas permitidas por función.maxFileLoc(número, por defecto:400): máximo de líneas físicas permitidas por archivo.maxNesting(número, por defecto:5): profundidad máxima de bloques anidados.maxParams(número, por defecto:6): número máximo de parámetros permitidos por función.
lint
Configura herramientas de compilación y diagnóstico específicas por lenguaje:
typecheck(booleano, por defecto:false): ejecuta diagnósticos del compilador de TypeScript (tsc).expoDoctor(booleano, por defecto:false): ejecuta comprobaciones de higiene en proyectos Expo React Native.csharp: opciones para C#, incluyendoroslynatory JetBrains InspectCode (jb).cpp: opciones para C/C++ (cppcheck,clangTidy).
ci
Configura las comprobaciones en integración continua:
failBelow(número, por defecto:70): nota mínima para dar el paso por bueno. Si la nota es inferior o hay algúnerror,raigal cidevuelve código de salida 1.format("json", por defecto:"json"): formato de salida en ejecuciones de CI.
baseline
Configura la comparación de regresiones contra .raigal/baseline.json:
mode("strict"|"relaxed", por defecto:"relaxed"): en modo"strict", se desactiva la tolerancia de Stage 3 a nivel de archivo. Cualquier incidencia fuera de la ventana de 11 líneas se considera una regresión bloqueante.
licensing
Define cómo actuar en CI si vence la licencia:
onLapse("fail-open"|"fail-closed", por defecto:"fail-open"): en modo"fail-closed", el CI finaliza con código de salida 2 si no se puede validar la licencia tras el periodo de gracia.
workspace
Aplica estándares mínimos en monorrepositorios:
minimumFloor(número, por defecto:50): suelo mínimo paraci.failBelowque las configuraciones de paquetes hijos no pueden rebajar.
scoring
Calibra los parámetros del cálculo de notas:
thresholds: límites de estado en la CLI.good(número, por defecto:75): nota a partir de la cual el estado esHealthy.ok(número, por defecto:50): nota a partir de la cual el estado esNeeds Work. Por debajo se consideraCritical.
smoothing(número, por defecto:5): constante sumada al recuento de archivos para evitar caídas bruscas en repositorios pequeños.maxPerRule(número, por defecto:40): límite base de deducción para cualquier regla antes de escalar por tamaño de repositorio.weights: pesos personalizados por categoría (por defecto:security: 1.5,ai-slop: 1.0,architecture: 1.0,code-quality: 0.8,lint: 0.6,format: 0.3).
rules
Diccionario de reglas para cambiar su gravedad o desactivarlas:
"error", "warning" y "off".
exclude e include
Define qué carpetas y archivos analiza Raigal:
exclude(lista de cadenas): rutas y directorios ignorados. Por defecto:["node_modules", ".git", "dist", "build", "coverage"].include(lista de cadenas): rutas explícitas a analizar. Si está vacía ([]), se analizan todos los archivos compatibles no excluidos.
overrides
Aplica límites o severidades diferentes según patrones de archivos:
telemetry
Controla el envío de métricas a Raigal Cloud:
false para desactivar el envío de telemetría.