ESPAÇO PUBLICITÁRIO DISPONÍVEL · FALE CONOSCO

Como configurar o Bito AI Code Review Agent no GitHub Actions para automatizar revisões de PR e auditorias de segurança

365Finds Editorial
11.430 artigos Wiki catalogados

Use o 365 Wiki com sua IA

Copie o prompt abaixo, cole na IA que você já usa e faça sua pergunta.

Baixar o Skill completo

Experimente primeiro com o prompt. Se você usa o 365 Wiki com frequência, instale o Skill completo do 365Wiki para não precisar colá-lo novamente. Se não usa uma IA específica, as versões web do Gemini ou Microsoft Copilot também servem.

Líderes de engenharia e equipes de produtividade de desenvolvimento enfrentam um gargalo recorrente em ciclos ágeis: engenheiros seniores gastam de 20% a 30% do seu tempo útil revisando Pull Requests (PRs). Uma fatia expressiva dessas horas é consumida caçando falhas triviais de sintaxe, código boilerplate repetitivo, inconsistências de formatação e ausência de testes unitários básicos. Essa triagem manual estende o ciclo de vida dos PRs, gera fadiga de revisão e desvia talentos experientes das decisões de arquitetura e das regras críticas de negócio.

O AI Code Review Agent da Bito (gitbito/codereviewagent) foi desenvolvido exatamente para atuar como essa primeira linha de defesa automatizada. Diferente de linters convencionais baseados em simples casamento de padrões, o Bito constrói uma compreensão semântica profunda do repositório utilizando Árvores de Sintaxe Abstrata (AST), tabelas de símbolos e embeddings. Integrado ao GitHub Actions, ele analisa automaticamente cada alteração enviada, executa analisadores estáticos, identifica vulnerabilidades de segurança e gera sugestões em linha estruturadas que os desenvolvedores podem aplicar com um único clique.

A seguir, apresentamos o guia prático completo para configurar o Bito AI Code Review Agent no GitHub Actions, gerenciar credenciais, ajustar parâmetros de análise estática e segurança, aplicar diretrizes organizacionais e controlar o ruído das revisões.


Visão geral da arquitetura: Como o Bito opera no CI/CD

O agente da Bito é executado diretamente na esteira de CI/CD, seja em executores gerenciados pelo GitHub (ubuntu-latest) ou em executores auto-hospedados (Self-Hosted Runners).

+-----------------------------------------------------------------------------------+
| Evento no repositório GitHub (PR aberto / atualizado / comando via comentário)    |
+-----------------------------------------------------------------------------------+
                                          |
                                          v
+-----------------------------------------------------------------------------------+
| Executor do GitHub Actions (Runner)                                               |
|                                                                                   |
|  1. Extrai o diff e o contexto do repositório (AST e indexação de símbolos)       |
|  2. Executa analisadores estáticos (fb_infer, astral_ruff, mypy, OWASP)           |
|  3. Carrega regras customizadas (CLAUDE.md, GEMINI.md, AGENTS.md, .bito.yaml)     |
|  4. Consulta o motor Bito AI via BITO_ACCESS_KEY (código não usado para treino)   |
+-----------------------------------------------------------------------------------+
                                          |
                                          v
+-----------------------------------------------------------------------------------+
| Interface do Pull Request no GitHub                                               |
|  - Resumo executivo do PR e índice de risco                                       |
|  - Comentários em linha com sugestão de código aplicável em 1 clique              |
|  - Processamento de comandos interativos (/review, /review security, /resolve)    |
+-----------------------------------------------------------------------------------+

Destaques da arquitetura:


Pré-requisitos e configuração de credenciais

Antes de criar o arquivo de workflow, registre os segredos necessários no repositório do GitHub.

1. Obtenção de chaves

2. Configurar Secrets no GitHub

No repositório do projeto, navegue até Settings > Secrets and variables > Actions > Secrets:

3. Verificar permissões do GitHub Actions

Em Settings > Actions > General:


Configuração prática do fluxo de trabalho no GitHub Actions

Crie o arquivo de definição de workflow no caminho .github/workflows/bito_code_review.yml.

Arquivo YAML para ambiente de produção

name: Bito AI Code Review Agent

on:
  pull_request:
    types: [opened, synchronize, reopened]
  issue_comment:
    types: [created]

concurrency:
  group: bito-cra-${{ github.workflow }}-${{ github.event.pull_request.number || github.event.issue.number }}
  cancel-in-progress: true

jobs:
  bito_review:
    # Executa em alterações de PR ou quando o comando /review é publicado em comentários
    if: >
      github.event_name == 'pull_request' ||
      (github.event_name == 'issue_comment' && github.event.issue.pull_request && startsWith(github.event.comment.body, '/review'))
    runs-on: ubuntu-latest
    permissions:
      contents: read
      pull-requests: write
      issues: write

    steps:
      - name: Checkout do Repositório
        uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - name: Executar Bito AI Code Review Agent
        uses: gitbito/codereviewagent@main
        env:
          BITO_ACCESS_KEY: ${{ secrets.BITO_ACCESS_KEY }}
          GIT_ACCESS_TOKEN: ${{ secrets.GIT_ACCESS_TOKEN }}
          # Ferramentas de análise estática integradas
          STATIC_ANALYSIS_TOOL: "fb_infer,astral_ruff,mypy"
          # Filtragem de branches e redução de ruído
          EXCLUDE_BRANCHES: "main,master,production"
          EXCLUDE_FILES: "*.min.js,*.lock,package-lock.json,yarn.lock,vendor/**,dist/**,docs/**"
          EXCLUDE_DRAFT_PR: "true"
          # Nível de sugestão: essential (apenas falhas críticas) ou comprehensive (completo)
          SUGGESTION_MODE: "essential"

Adaptação para Self-Hosted Runners

Para empresas que utilizam redes internas ou GitHub Enterprise Server:

  1. Faça um espelhamento ou fork do repositório gitbito/codereviewagent dentro da organização corporativa (por exemplo, myorg/gitbito-bitocodereview).
  2. Altere o runs-on para o identificador interno: runs-on: [self-hosted, linux, x64].
  3. Ajuste o passo da Action: uses: myorg/gitbito-bitocodereview@main.
  4. Defina a variável de repositório GIT_DOMAIN com seu domínio interno (por exemplo, github.internal.mycompany.com).

Integração de auditorias de segurança e análise estática

A Bito agrega scanners estáticos conceituados a um raciocínio contextual de IA para identificar vulnerabilidades precocemente.

1. Motores de análise estática

A configuração STATIC_ANALYSIS_TOOL: "fb_infer,astral_ruff,mypy" instrui o agente a rodar verificações antes da avaliação generativa:

2. Escopo das auditorias de vulnerabilidades

Em cada revisão, o agente varre as alterações em busca de riscos comuns do OWASP Top 10:

3. Comandos interativos em comentários de PR

Desenvolvedores podem comandar o agente diretamente na interface de comentários do GitHub:

Comando no PRAção executadaCenário ideal
/reviewExecuta revisão incremental considerando apenas os novos commits.Ciclo iterativo habitual de ajustes.
/review fullRealiza revisão completa de todos os arquivos modificados no PR.Validação final de grandes refatorações.
/review securityDispara auditoria focada exclusivamente em OWASP, credenciais e autenticação.PRs de pagamento, login ou infraestrutura.
/review performanceAvalia complexidade algorítmica, consultas de banco N+1 e consumo de memória.Serviços backend de alta volumetria e rotinas em lote.
/pause / /resumePausa ou retoma gatilhos automáticos na branch.Prototipação com commits frequentes em rascunho.
/resolveMarca automaticamente como resolvidos comentários antigos já tratados.Limpeza da linha do tempo antes do merge.

Aplicação de padrões e regras personalizadas da equipe

Diretrizes arquiteturais específicas da empresa podem ser fornecidas ao Bito por meio de arquivos Markdown posicionados na raiz do repositório.

Arquivos de regras suportados

O Bito reconhece automaticamente os seguintes arquivos de configuração na raiz:

Exemplo de arquivo AGENTS.md

# Padrões de Revisão de Código da Engenharia

## Arquitetura e Persistência
- Proibida concatenação direta de strings em SQL; utilize sempre SQLAlchemy ORM ou queries parametrizadas.
- Em endpoints FastAPI (async def), não invoque funções bloqueantes síncronas de I/O.
- Regras de negócio devem residir exclusivamente em `services/` e nunca diretamente nos controladores de rota.

## Tratamento de Erros e Observabilidade
- Não capture a classe genérica `Exception`; use exceções customizadas explícitas.
- Todas as chamadas HTTP externas devem definir timeout entre 2 e 5 segundos.
- Logs devem ser emitidos em JSON estruturado com identificador de correlação (Trace ID).

## Segurança e Dados Pessoais
- Dados sensíveis de usuários (CPF, telefone, cartão) jamais devem constar em logs sem máscara ou payloads de erro.

Durante a análise, o Bito compara as mudanças no PR com essas regras e aponta eventuais divergências com sugestões de correção.


Melhores práticas para redução de ruído e adoção

A resistência das equipes a bots de revisão normalmente advém do excesso de comentários secundários. Para garantir uma adoção fluida:

  1. Inicie com o modo essential: Defina SUGGESTION_MODE: "essential" durante as primeiras semanas para focar apenas em bugs lógicos e brechas de segurança, evitando atritos sobre preferências de estilo.
  2. Exclua branches principais: Configure EXCLUDE_BRANCHES: "main,master" para evitar execuções desnecessárias em commits diretos nas branches de produção.
  3. Filtre arquivos gerados e lockfiles: Inclua package-lock.json, bibliotecas vendor e bundles minificados em EXCLUDE_FILES.
  4. Ignore Pull Requests em rascunho: Com EXCLUDE_DRAFT_PR: "true", o agente só analisa o código quando o autor marca o PR como pronto para revisão.
  5. Estimule a colaboração via comentários: Os engenheiros podem responder aos comentários do Bito marcando @bitoagent ou @askbito para esclarecer premissas ou solicitar alternativas compatíveis.

Avaliação comercial e recomendação de adoção

O Bito AI Code Review Agent opera sob o modelo de cobrança por assento (Per-Seat), sem cobrança baseada em volume de tokens consumidos:

Conclusão e recomendação

Para organizações com 15 ou mais engenheiros que sofrem com gargalos de revisão de PRs, a implementação do Bito AI Code Review Agent no GitHub Actions traz retorno imediato. Ao assumir o trabalho repetitivo de triagem e controle de segurança básico, ele poupa os desenvolvedores seniores e diminui o tempo médio de merge dos PRs entre 30% e 50%.


Referências