Pular para o conteúdo principal

Requisitos do Sistema

  • CPU: 2+ núcleos - RAM: 8GB+ - Armazenamento: 60GB+ de espaço livre
  • Docker (última versão estável)
  • Node.js (última versão LTS)
  • Yarn ou NPM (última versão estável)
  • Nome de domínio ou IP fixo (para implantações externas)
  • 3000: Kodus Web App
  • 3001: API
  • 3332: Webhooks
  • 5672, 15672, 15692: RabbitMQ (AMQP, gerenciamento, métricas)
  • 3101: MCP Manager (API, métricas)
  • 5432: PostgreSQL - 27017: MongoDB
Acesso à internet é necessário se você planeja conectar a serviços Git na nuvem (GitHub, GitLab, Bitbucket) ou provedores de LLM na nuvem (OpenAI, Anthropic, etc.). Para ferramentas Git auto-hospedadas e LLMs on-premise dentro da sua rede, o acesso externo à internet é opcional.

Configuração de Domínio (Opcional)

Se você planeja integrar o Kodus com provedores Git na nuvem (GitHub, GitLab ou Bitbucket), precisará de URLs públicas tanto para o Kodus Web App quanto para sua API. Isso permite que seu servidor receba webhooks para o correto funcionamento da Revisão de Código e garante o comportamento correto da aplicação. Recomendamos configurar dois subdomínios:
  • Um para o Aplicativo Web, ex.: kodus-web.seudominio.com.
  • Um para a API, ex.: kodus-api.seudominio.com.
Os webhooks são gerenciados por um serviço separado (porta 3332). Você pode:
  • Usar um subdomínio dedicado para webhooks, ex.: kodus-webhooks.seudominio.com, ou
  • Continuar usando o domínio da API e rotear /github/webhook, /gitlab/webhook, etc. para o serviço de webhooks no seu proxy reverso.
Ambos os subdomínios devem ter registros DNS A apontando para o endereço IP do seu servidor. Mais adiante neste guia, configuraremos um proxy reverso (Nginx) para rotear as requisições desses subdomínios para os serviços internos corretos. Esta configuração é essencial para a funcionalidade completa, incluindo webhooks e autenticação.
Nota: Se você estiver conectando apenas a ferramentas Git auto-hospedadas na sua rede e não precisar de acesso público ou webhooks, poderá usar uma configuração mais simples, mas este guia foca em implantações com acesso público.

Configuração

1

Clonar o repositório do instalador

git clone https://github.com/kodustech/kodus-installer.git
cd kodus-installer
2

Copiar o arquivo de ambiente de exemplo

cp .env.example .env
3

Gerar chaves seguras para as variáveis de ambiente necessárias

./generate-keys.sh
4

Editar o arquivo de ambiente

Edite o .env com seus valores usando seu editor de texto preferido.
nano .env
Consulte Configuração de Variáveis de Ambiente para instruções detalhadas.
5

Executar o instalador

./scripts/install.sh
6

Sucesso 🎉

Quando concluído, os serviços do Kodus devem estar rodando na sua máquina. Você pode verificar a instalação usando o seguinte script:
./scripts/doctor.sh
7

Acessar a interface web

Ao acessar a interface web pela primeira vez, você precisará:
  1. Criar sua conta de administrador - Este será o primeiro usuário com acesso completo ao sistema
  2. Configurar seu provedor Git - Conecte o GitHub, GitLab ou Bitbucket seguindo as instruções na tela
  3. Selecionar repositórios para análise - Escolha quais repositórios de código o Kody irá revisar
Para etapas detalhadas sobre o processo de configuração inicial, consulte nosso Guia de Início Rápido.

Configuração das Variáveis de Ambiente

Use esta seção para preencher seu .env. Comece pelas URLs públicas, depois configure os bancos de dados e o RabbitMQ, e por fim adicione as configurações específicas dos provedores.

Configuração de Namespace

Estas configurações definem as URLs públicas e o binding de host utilizados pela aplicação web e pela API. Se não estiver usando o MCP Manager, você pode ignorar as entradas MCP aqui e o bloco completo abaixo.
WEB_HOSTNAME_API="kodus-api.yourdomain.com"    # Hostname público da API (ex.: kodus-api.yourdomain.com)
NEXTAUTH_URL="https://kodus-web.yourdomain.com" # URL base pública completa para a Aplicação Web (ex.: https://kodus-web.yourdomain.com)
API_HOST=0.0.0.0                              # Host da API (0.0.0.0 para desenvolvimento local)

# Necessário apenas se quiser usar os recursos MCP.
API_KODUS_SERVICE_MCP_MANAGER=http://kodus-mcp-manager:3101 # URL do MCP Manager
API_KODUS_MCP_SERVER_URL=http://kodus-api.yourdomain.com/mcp # URL do servidor MCP do Kodus

Configuração do Provedor de LLM

API_LLM_PROVIDER_MODEL="gpt-5"     # Modelo que você deseja usar
API_OPENAI_FORCE_BASE_URL="https://your-api.com/v1"  # URL do seu provedor de API
API_OPEN_AI_API_KEY="your-api-key"          # Chave de API do seu provedor
Consulte nossos guias específicos por modelo para instruções detalhadas de configuração com provedores populares como Novita, OpenAI, Anthropic e outros.

Configuração do Banco de Dados

Use contêineres locais para Postgres e MongoDB por padrão. Atualize as credenciais de acordo com seus requisitos de segurança.
# Use contêineres locais para Postgres e MongoDB
USE_LOCAL_DB=true

# Configurações do PostgreSQL
API_DATABASE_ENV="development"                # development, production, test
API_PG_DB_HOST=db_kodus_postgres              # Host do PostgreSQL
API_PG_DB_PORT=5432                          # Porta do PostgreSQL
API_PG_DB_USERNAME=kodusdev                  # Usuário do banco de dados
API_PG_DB_PASSWORD=                          # Senha do banco de dados
API_PG_DB_DATABASE=kodus_db                  # Nome do banco de dados

# Configurações do MongoDB
API_MG_DB_HOST=db_kodus_mongodb              # Host do MongoDB
API_MG_DB_PORT=27017                         # Porta do MongoDB
API_MG_DB_USERNAME=kodusdev                  # Usuário do banco de dados
API_MG_DB_PASSWORD=                          # Senha do banco de dados
API_MG_DB_DATABASE=kodus                     # Nome do banco de dados
API_MG_DB_PRODUCTION_CONFIG=''               # Configurações adicionais de produção

Configuração do RabbitMQ

O RabbitMQ é obrigatório na versão 2.0. Mantenha a URI sincronizada com os valores abaixo.
# Configuração do RabbitMQ
USE_LOCAL_RABBITMQ=true
RABBITMQ_HOSTNAME=rabbitmq                   # Hostname do RabbitMQ na rede Docker
RABBITMQ_DEFAULT_USER=kodus                  # Usuário do RabbitMQ (altere em produção)
RABBITMQ_DEFAULT_PASS=kodus                  # Senha do RabbitMQ (altere em produção)

# Mantenha a URI sincronizada com o usuário, senha e vhost acima
API_RABBITMQ_URI=amqp://kodus:kodus@rabbitmq:5672/kodus-ai # URI de conexão do RabbitMQ
API_RABBITMQ_ENABLED=true                    # RabbitMQ é obrigatório

Configuração do Provedor Git

Escolha e configure seu provedor Git preferido. Você pode configurar um ou mais provedores; para autenticação básica por token, você só precisa da URL do webhook.
Os webhooks são tratados por um serviço separado (porta 3332). Suas URLs de webhook devem alcançar esse serviço. Você pode usar um domínio dedicado para webhooks, ou manter o domínio da API e rotear os caminhos /.../webhook para o serviço de webhooks no seu proxy reverso. Usando OAuth do GitHub ou GitLab? Veja OAuth App do GitHub ou OAuth App do GitLab. Para configuração do GitHub App, veja GitHub App.
# Necessário para autenticação baseada em token
API_GITHUB_CODE_MANAGEMENT_WEBHOOK="https://kodus-api.yourdomain.com/github/webhook"          # URL do webhook (use domínio de webhooks, ou domínio da API se roteado para o serviço de webhooks)

Configuração do MCP Manager

Necessário apenas se quiser usar o MCP Manager.
O MCP Manager é o serviço que conecta o Kody a ferramentas externas e as expõe na tela de Plugins. Consulte nossa documentação do MCP Manager para mais informações.
API_MCP_SERVER_ENABLED=false # Altere para true se quiser usar o MCP Manager
---
API_KODUS_SERVICE_MCP_MANAGER=http://kodus-mcp-manager:3101
API_KODUS_MCP_SERVER_URL=http://localhost:3001/mcp

# Configuração do MCP Manager
API_MCP_MANAGER_LOG_LEVEL=info
API_MCP_MANAGER_PORT=3101
API_MCP_MANAGER_NODE_ENV=development
API_MCP_MANAGER_DATABASE_ENV=development
API_MCP_MANAGER_CORS_ORIGINS=*
API_MCP_MANAGER_JWT_SECRET=
API_MCP_MANAGER_COMPOSIO_BASE_URL=https://backend.composio.dev/api/v3
API_MCP_MANAGER_COMPOSIO_API_KEY=
API_MCP_MANAGER_MCP_PROVIDERS=kodusmcp,composio,custom
API_MCP_MANAGER_REDIRECT_URI=http://localhost:3000/setup/mcp/oauth
API_MCP_MANAGER_PG_DB_SCHEMA=mcp-manager
API_MCP_MANAGER_ENCRYPTION_SECRET=

Configuração de Revisão de Código com AST

Necessário apenas se quiser habilitar a revisão de código com AST.
O serviço AST analisa, recorta e manipula arquivos de código antes de chegarem ao pipeline de revisão. Isso melhora a qualidade da revisão e reduz o consumo de tokens. Ele está incluído no instalador e é executado como um contêiner separado.
API_ENABLE_CODE_REVIEW_AST=false  # Defina como true para habilitar a revisão de código com AST
API_SERVICE_AST_URL=              # URL interna do serviço AST
O serviço AST também possui seu próprio bloco de configuração. Esses valores são pré-configurados pelo instalador, mas podem ser ajustados para corresponder ao seu ambiente:
# KODUS_SERVICE_AST
NODE_ENV=development
API_NODE_ENV=development
API_LOG_PRETTY=true
API_LOG_LEVEL=info

CONTAINER_NAME=kodus-service-ast
API_PORT=3002

# PostgreSQL — mantenha sincronizado com as configurações do banco de dados principal
API_DATABASE_ENV="development"
API_PG_DB_HOST=postgres
API_PG_DB_PORT=5432
API_PG_DB_USERNAME=                # Mesmo que API_PG_DB_USERNAME
API_PG_DB_PASSWORD=                # Mesmo que API_PG_DB_PASSWORD
API_PG_DB_DATABASE=kodus_db
API_PG_DB_SCHEMA=kodus_workflow

# RabbitMQ — mantenha sincronizado com as configurações do RabbitMQ principal
RABBIT_URL=                        # ex.: amqp://user:pass@rabbitmq:5672/vhost
RABBIT_RETRY_QUEUE=ast.jobs.retry.q
RABBIT_RETRY_TTL_MS=60000
RABBIT_PREFETCH=1
RABBIT_PUBLISH_TIMEOUT_MS=5000
RABBIT_SAC=false

# LangChain (opcional — para rastreamento)
LANGCHAIN_TRACING_V2=false
LANGCHAIN_API_KEY=
LANGCHAIN_PROJECT=kodus-service-ast

# Armazenamento compartilhado
SHARED_STORAGE_PATH=/shared

# S3 (opcional)
S3_ENABLED=false
S3_BUCKET_NAME=
AWS_REGION=

# Opções de build do grafo
ENABLE_INCREMENTAL_GRAPH=false
ENABLE_GRAPH_BENCHMARK=false
ENABLE_LIGHTWEIGHT_GRAPH=false

Configuração de Serviços Externos (Opcional)

Estes serviços são opcionais, mas melhoram significativamente a qualidade da revisão de código do Kodus. Cada um requer a criação de uma conta e geração de uma chave de API.
O E2B fornece um sandbox seguro que o Kodus usa para executar e validar código durante as revisões.
  1. Crie uma conta em e2b.dev
  2. Gere uma chave de API no seu painel
  3. Adicione ao seu .env:
API_E2B_KEY=your-e2b-api-key
MorphLLM é um modelo especializado para edição de código rápida e precisa. O Kodus o utiliza para aplicar sugestões de revisão com mais precisão.
  1. Crie uma conta em morphllm.com
  2. Gere uma chave de API no seu painel
  3. Adicione ao seu .env:
API_MORPHLLM_API_KEY=your-morphllm-api-key

Precisa de ajuda?

Agende uma chamada com nosso fundador para obter ajuda com sua implantação.

Obtenha ajuda com nossa comunidade

Entre na nossa comunidade para obter ajuda com sua implantação.