- Una única fuente de verdad para el comportamiento de revisión a través de muchos repositorios.
- Configuración-como-código: historial, revisión en PR, rollback, validación en CI.
- Kody Rules consistentes (reglas de revisión y memorias) en toda la organización.
- Cambios de configuración gestionados desde el CLI o CI.
Cómo Funciona
- Elige un repositorio para almacenar tu configuración centralizada.
- Habilita la Configuración Centralizada en la UI y apúntala a ese repositorio.
- Elige un modo de sincronización inicial:
pr— Kodus abre el PR de inicialización con tu configuración efectiva actual y las reglas.manual— Kodus genera los archivos; tu equipo los descarga y abre el PR.
- Después del primer merge, cada merge futuro en el repositorio centralizado propaga automáticamente los cambios a Kodus.
Estructura del Repositorio
El repositorio centralizado usa rutas de carpetas para mapear archivos a alcances. La estructura cubre tanto la configuración de revisión (kodus-config.yml) como las Kody Rules (.kody-rules/).
El nombre del repositorio es arbitrario — elige el que mejor se adapte a tu organización. A continuación se usa
kodus-config como convención.- Un
kodus-config.ymlen la raíz del repositorio centralizado se aplica globalmente. - Una carpeta de nivel superior cuyo nombre coincida con un repositorio de Kodus (p. ej.
backend-api/) limita los archivos a ese repositorio. - Una ruta anidada dentro de una carpeta de repositorio (p. ej.
backend-api/src/auth/) limita los archivos a ese directorio, siguiendo el mismo modelo de herencia que la interfaz web. - Las reglas bajo
.kody-rules/review/se convierten en reglas de revisión; las reglas bajo.kody-rules/memories/se convierten en memorias.
Archivos de Configuración
Cadakodus-config.yml usa el mismo esquema que el kodus-config.yml por repositorio documentado en Configuración General. Los campos se aplican al nivel de la carpeta donde vive el archivo y siguen las reglas de herencia habituales (ver Herencia y Overrides de Configuración).
Ejemplo mínimo:
Archivos de Kody Rules
Cada regla es un único archivo YAML bajo.kody-rules/review/ (reglas estándar) o .kody-rules/memories/ (memorias). El nombre del archivo es arbitrario — Kodus identifica las reglas por el campo title y por la ruta canónica del archivo almacenada con la regla.
Ejemplo de regla de revisión (.kody-rules/review/require-tests-for-endpoints.yml):
inheritance.inheritable, exclude e include.
Flujo de Trabajo en la UI
Desde Configuración → Code Review → General:- Abre Configuración Centralizada.
- Habilita la Configuración Centralizada.
- Selecciona el repositorio fuente.
- Elige el Método de Sincronización Inicial:
- Automático (Crear PR ahora)
- Manual (Sincronizar más tarde)
- Guarda y confirma el estado.
Comportamiento de la Interfaz Web Cuando Está Habilitada
Cuando la Configuración Centralizada está habilitada, la fuente de verdad para la configuración es el repositorio centralizado. La interfaz web refleja esto:- Los ajustes de code review de repositorio, directorio y globales se vuelven de solo lectura en la interfaz web. Edítalos abriendo un PR en el repositorio centralizado.
- Las Kody Rules y los Mensajes de PR permanecen editables en la interfaz web. Guardar una edición no muta la regla directamente — Kodus abre un pull request en el repositorio centralizado con el cambio propuesto. Una vez que el PR es mergeado, el cambio se activa.
Estados de Sincronización
Cada regla que proviene de la Configuración Centralizada rastrea su ciclo de vida mediante un estado:| Estado | Significado |
|---|---|
SYNCED | La regla en Kodus coincide con el archivo en el repositorio centralizado. |
PENDING_ADD | Se creó una nueva regla vía UI/CLI y se abrió un PR; el archivo aún no existe en la rama predeterminada. |
PENDING_EDIT | Se propuso una edición vía UI/CLI y hay un PR abierto; el archivo existente aún no ha sido actualizado. |
PENDING_DELETE | Se propuso una eliminación vía UI/CLI y hay un PR abierto; el archivo todavía existe en la rama predeterminada. |
PENDING_* vuelve a SYNCED una vez que el PR correspondiente es mergeado.
Modos de Sincronización
- PR (predeterminado)
- Manual
Kodus abre el pull request de inicialización automáticamente con tu
configuración efectiva actual y las reglas.
Descargar Paquete de Configuración
Puedes descargar un ZIP con los archivoskodus-config.yml generados y el árbol .kody-rules/ que reflejan tu configuración y reglas actuales.
Úsalo cuando:
- Audites la configuración generada.
- Compartas artefactos de configuración con otro equipo.
- Mantengas una copia de seguridad local antes de un despliegue.
- Inicialices el repositorio centralizado en modo
manual.
Deshabilitar la Configuración Centralizada
Deshabilitar la Configuración Centralizada borra el repositorio fuente seleccionado y devuelve todos los repositorios al comportamiento estándar no centralizado (ajustes editados en la interfaz web,kodus-config.yml opcional por repositorio).
Las reglas y ajustes que fueron sincronizados permanecen en Kodus — no se eliminan al deshabilitar.
CLI
Usa estos comandos para gestionar la Configuración Centralizada desde flujos de trabajo en terminal y scripts de CI.Requisitos
- Autenticación con clave de equipo.
- Al menos un repositorio seleccionado en Kodus.
Verificar Estado
Inicializar la Configuración Centralizada
--sync-optiontiene como valor predeterminadopr.- Si el repositorio se omite en una terminal interactiva, el CLI solicita la selección.
- En entornos no interactivos, el repositorio debe proporcionarse.
Ejecutar Sincronización
Deshabilitar la Configuración Centralizada
Descargar ZIP de Configuración
--outes obligatorio.- La salida es un paquete ZIP con los archivos de configuración generados y el árbol
.kody-rules/.
Salida en JSON
Todos los comandos centralizados soportan salida estructurada con--json.