Sign inSign up

gustavosachetto/code-review-api

By gustavosachetto

•Updated 8 months ago

A Code Review API é uma solução avançada para automação de revisão de código.

Image
API management
Machine learning & AI
Developer tools
0

45

gustavosachetto/code-review-api repository overview

Code Review Logo

⁠Code Review API v3.1

A Code Review API v3.1 é uma ferramenta de automação de revisão de código que se integra ao GitLab para fornecer análises detalhadas via IA. Utiliza o modelo Gemini 2.5-flash através do Vertex AI para identificar melhorias de lógica, segurança e performance em Merge Requests.

A aplicação inclui uma interface web completa para gestão de repositórios, controle de usuários e dashboard de faturas e custos.


⁠O que é Code Review API?

É uma API avançada projetada para integrar-se nativamente ao ecossistema do GitLab. Através da orquestração de agentes com LangGraph, ela automatiza o processo de revisão, permitindo que a equipe foque em tarefas complexas enquanto a IA valida padrões de código e detecta vulnerabilidades.


⁠Como usar esta imagem

⁠Iniciar uma instância

Para rodar a API com as configurações obrigatórias, utilize o comando abaixo:

docker run --name code-review-app \
  -e SECRET_KEY="SEU_SECRET_KEY" \
  -e GOOGLE_PROJECT_ID="SEU_PROJECT_ID_GOOGLE" \
  -e GOOGLE_CREDENTIALS_B64="SUA_CREDENCIAL_GOOGLE_BASE64" \
  -e MONGODB_PASS="123456" \
  -e EMAIL_SUPER_ADMIN="[email protected]" \
  -e SENHA_SUPER_ADMIN="SenhaSecreta123" \
  -p 8000:8000 \
  -d code-review-api


⁠Variáveis de Ambiente Obrigatórias

O contêiner requer as seguintes variáveis para operação:

⁠Configurações da API
  • API_PORT: Porta de execução interna (Padrão: 8000).
  • API_HOST: Host de execução (utilize 0.0.0.0 para Docker).
  • API_IN_PRODUCTION: Define se o ambiente é de produção (True ou False).
  • SECRET_KEY: Chave secreta para segurança e criptografia da aplicação.
  • WORKERS: Quantidade de processos workers (ex: 8).
  • CONCURRENCY_LIMIT: Limite de análises simultâneas (ex: 3).
⁠Acesso Administrativo
  • EMAIL_SUPER_ADMIN: E-mail do super administrador para o primeiro acesso.
  • SENHA_SUPER_ADMIN: Senha do super administrador.
⁠Google Vertex AI (Gemini)
  • GOOGLE_PROJECT_ID: ID do projeto no Google Cloud.
  • GOOGLE_PROJECT_LOCATION: Região da API (ex: us-central1).
  • GOOGLE_API_MODEL: Versão do modelo (ex: gemini-2.5-flash).
  • GOOGLE_API_TEMPERATURE: Temperatura de resposta do modelo (ex: 0).
  • GOOGLE_CREDENTIALS_B64: JSON da Service Account convertido em Base64.
⁠Banco de Dados (MongoDB)
  • MONGODB_NAME: Nome do banco de dados (ex: code-review-db).
  • MONGODB_PASS: Senha de conexão do MongoDB.

⁠Integração com GitLab

⁠Gatilho de Pipeline (CI/CD)

Configure seu pipeline para enviar o MR para análise automática:

curl -X POST "http://seu-host:8000/v3/gitlab/pipeline" \
     -H "Content-Type: application/json" \
     -H "X-Gitlab-Token: <token-do-repositorio>" \
     -d "{\"repositorio_uuid\": \"uuid-do-repositorio\", \"merge_request_iid\": $CI_MERGE_REQUEST_IID}"


⁠Configuração de Busca Vetorial (RAG)

Para habilitar a funcionalidade de memória contextual, crie um índice de busca vetorial no MongoDB Atlas com a seguinte estrutura:

{
  "fields": [
    {
      "numDimensions": 768,
      "path": "vector",
      "similarity": "cosine",
      "type": "vector"
    },
    {
      "path": "repositorio_uuid",
      "type": "filter"
    }
  ]
}

Tag summary

Content type

Image

Digest

sha256:300c8d416…

Size

199 MB

Last updated

8 months ago

docker pull gustavosachetto/code-review-api:3.1