- Uma fonte única de verdade para o comportamento das revisões em muitos repositórios.
- Configuração-como-código: histórico, revisão de PR, rollback, validação em CI.
- Kody Rules consistentes (regras de revisão e memórias) em toda a organização.
- Alterações de configuração via CLI ou CI.
Como Funciona
- Escolha um repositório para armazenar a configuração centralizada.
- Habilite a Configuração Centralizada na UI e aponte para esse repositório.
- Escolha um modo de sincronização inicial:
pr— Kodus abre o PR de inicialização com suas configurações e regras efetivas atuais.manual— Kodus gera os arquivos; sua equipe faz o download e abre o PR.
- Após o primeiro merge, todo merge futuro no repositório centralizado propaga automaticamente as alterações para o Kodus.
Estrutura do Repositório
O repositório centralizado usa caminhos de pastas para mapear arquivos a escopos. A estrutura cobre tanto as configurações de revisão (kodus-config.yml) quanto as Kody Rules (.kody-rules/).
O nome do repositório é arbitrário — escolha o que melhor se adapta à sua organização.
kodus-config é usado abaixo como convenção.- Um
kodus-config.ymlna raiz do repositório centralizado aplica-se globalmente. - Uma pasta de nível superior cujo nome corresponde a um repositório Kodus (ex.:
backend-api/) escopa os arquivos para aquele repositório. - Um caminho aninhado dentro de uma pasta de repositório (ex.:
backend-api/src/auth/) escopa os arquivos para aquele diretório, seguindo o mesmo modelo de herança da interface web. - Regras em
.kody-rules/review/tornam-se regras de revisão; regras em.kody-rules/memories/tornam-se memórias.
Arquivos de Configuração
Cadakodus-config.yml usa o mesmo schema que o kodus-config.yml por repositório documentado em Configurações Gerais. Os campos são aplicados no nível da pasta onde o arquivo está e seguem as regras de herança usuais (veja Herança e Sobrescrita de Configuração).
Exemplo mínimo:
Arquivos de Kody Rules
Cada regra é um único arquivo YAML em.kody-rules/review/ (regras padrão) ou .kody-rules/memories/ (memórias). O nome do arquivo é arbitrário — Kodus identifica as regras pelo campo title e pelo caminho canônico do arquivo armazenado com a regra.
Exemplo de regra de revisão (.kody-rules/review/require-tests-for-endpoints.yml):
inheritance.inheritable, exclude e include se comportam.
Fluxo pela Interface Web
Em Configurações → Code Review → Geral:- Abra Configuração Centralizada.
- Habilite a Configuração Centralizada.
- Selecione o repositório de origem.
- Escolha o Método de Sincronização Inicial:
- Automático (Criar PR agora)
- Manual (Sincronizar depois)
- Salve e confirme o status.
Comportamento da Interface Web Quando Habilitada
Quando a Configuração Centralizada está habilitada, a fonte de verdade para a configuração é o repositório centralizado. A interface web reflete isso:- Configurações de code review de repositório, diretório e global tornam-se somente leitura na interface web. Edite-as abrindo um PR no repositório centralizado.
- Kody Rules e Mensagens de PR permanecem editáveis na interface web. Salvar uma edição não modifica a regra diretamente — Kodus abre um pull request no repositório centralizado com a alteração proposta. Uma vez que o PR é mesclado, a alteração entra em vigor.
Estados de Sincronização
Cada regra proveniente da Configuração Centralizada acompanha seu ciclo de vida por meio de um status:| Status | Significado |
|---|---|
SYNCED | A regra no Kodus corresponde ao arquivo no repositório centralizado. |
PENDING_ADD | Uma nova regra foi criada via UI/CLI e um PR foi aberto; o arquivo ainda não existe na branch padrão. |
PENDING_EDIT | Uma edição foi proposta via UI/CLI e um PR está aberto; o arquivo existente ainda não foi atualizado. |
PENDING_DELETE | Uma exclusão foi proposta via UI/CLI e um PR está aberto; o arquivo ainda existe na branch padrão. |
PENDING_* voltam para SYNCED quando o PR correspondente é mesclado.
Modos de Sincronização
- PR (padrão)
- Manual
Kodus abre o pull request de inicialização automaticamente com suas
configurações e regras efetivas atuais.
Download do Bundle de Configuração
Você pode baixar um ZIP contendo os arquivoskodus-config.yml gerados e a árvore .kody-rules/ que refletem suas configurações e regras atuais.
Use quando:
- Auditar a configuração gerada.
- Compartilhar artefatos de configuração com outra equipe.
- Manter um backup local antes de um rollout.
- Inicializar o repositório centralizado no modo
manual.
Desabilitar a Configuração Centralizada
Desabilitar a Configuração Centralizada limpa o repositório de origem selecionado e retorna todos os repositórios ao comportamento padrão não centralizado (configurações editadas na interface web,kodus-config.yml opcional por repositório).
As regras e configurações que foram sincronizadas permanecem no Kodus — elas não são excluídas ao desabilitar.
CLI
Use estes comandos para gerenciar a Configuração Centralizada a partir de fluxos de trabalho no terminal e scripts de CI.Requisitos
- Autenticação com team key.
- Pelo menos um repositório selecionado no Kodus.
Verificar Status
Inicializar a Configuração Centralizada
--sync-optiontem padrãopr.- Se o repositório for omitido em um terminal interativo, o CLI solicita a seleção.
- Em ambientes não interativos, o repositório deve ser fornecido.
Executar Sincronização
Desabilitar a Configuração Centralizada
Baixar o ZIP de Configuração
--outé obrigatório.- A saída é um bundle ZIP contendo os arquivos de configuração gerados e a árvore
.kody-rules/.
Saída em JSON
Todos os comandos centralizados suportam saída estruturada com--json.