Este guia é destinado ao desenvolvimento local. Para implantação em produção,
consulte o guia Implantar Kodus.
Pré-requisitos
- Node.js (versão LTS)
- Docker
- Yarn ou NPM
- Chaves de API de LLM
Executando o projeto
- Configuração Automatizada (Recomendada)
- Configuração Manual
Para uma configuração rápida e automatizada, use nosso script de setup:Este script irá automaticamente:Com integrações externas (webhooks, etc.):Após tudo estar em execução, abra http://localhost:3000 no seu navegador.
- ✅ Verificar todas as dependências necessárias (Node.js, Yarn, Docker, OpenSSL)
- ✅ Instalar as dependências do projeto
- ✅ Criar e configurar o arquivo
.env - ✅ Gerar automaticamente todas as chaves de segurança necessárias
- ✅ Configurar as redes Docker
- ✅ Fornecer os próximos passos de forma clara
Escolha seu modo de LLM (obrigatório)
Selecione um modo e preencha seu .env antes de iniciar os serviços.- Fixed Mode (Recommended for Self-Hosted)
- Automatic Mode (High Quality)
This is the simplest mode and recommended for self-hosted installations. You only need to configure a single LLM model.
This mode is ideal for self-hosted because:
- Requires only a single API key
- Works with any OpenAI-compatible API provider
- Easier to configure and maintain
Model Configuration Guides
Check our model-specific guides for detailed setup instructions with popular providers like Novita, OpenAI, Anthropic, and more.
Próximos passos
Configuração básica:Fluxo de desenvolvimento
Desenvolvimento Local Básico
- Iniciar serviços:
yarn docker:start - Executar migrações:
yarn migrate:dev - Carregar dados iniciais:
yarn seed - Abrir o app: Acesse
http://localhost:3000 - Verificação de saúde:
yarn dev:health-check
Desenvolvimento com Integrações Externas
Se precisar testar integrações com serviços externos (como webhooks Git):- Iniciar serviços:
yarn docker:start && yarn migrate:dev && yarn seed - Criar tunnel:
yarn tunnel(cria endpoint público) - Atualizar URLs de webhook: O comando tunnel atualiza seu
.envautomaticamente - Configurar provedor Git: Use a URL do tunnel nas configurações de webhook do seu provedor Git
- Testar integração: Dispare webhooks e monitore os logs
Benefícios do Tunnel:
- Testar integrações reais de webhook localmente
- Depurar comunicações com serviços externos
- Compartilhar seu ambiente de desenvolvimento com membros da equipe
- Testar aplicativos móveis ou outros clientes externos
Solução de Problemas
Verificação Rápida de Saúde
- ✅ Serviços: Kodus API, Worker, Webhooks, Web, PostgreSQL, MongoDB, RabbitMQ
- 🔌 Disponibilidade de portas: Web (3000), API (3001), PostgreSQL (5432), MongoDB (27017), RabbitMQ (5672/15672)
- 🗄️ Configuração do banco de dados: Migrações e dados iniciais
- 🌐 Endpoints da API: Endpoints de saúde e conectividade básica
Verificação Manual
- Verificar Web UI: Acesse
http://localhost:3000no seu navegador - Verificar saúde da API: Acesse
http://localhost:3001/health - Verificar RabbitMQ: Acesse
http://localhost:15672(credenciais padrão:guest/guest) - Verificar conexões com banco de dados: Verifique os logs para conexões bem-sucedidas
- Testar endpoints de webhook: Os webhooks do seu provedor Git devem apontar para
http://localhost:3332/[provider]/webhook(ou para o domínio da sua API se um proxy reverso rotear/.../webhookpara o serviço de webhooks)
Problemas com o Script de Setup
Se o script de configuração automatizada (yarn setup) falhar:
Dependências ausentes:
Problemas Comuns
Conflitos de porta:- Certifique-se de que as portas 3000 (Web), 3001 (API), 5432 (PostgreSQL), 27017 (MongoDB) e 5672/15672 (RabbitMQ) estão disponíveis
- Pare outros serviços que usam essas portas antes de iniciar o Kodus
- Verifique se o arquivo
.envexiste na raiz do projeto - Confira se não há espaços no final das atribuições de variáveis
- Certifique-se de que todas as chaves de segurança necessárias foram geradas corretamente
- Execute
yarn dev:health-checkpara obter diagnósticos detalhados - Verifique se os contêineres estão totalmente iniciados (aguarde 1-2 minutos após
yarn docker:start) - Confirme que as migrações e dados iniciais foram carregados
- Verifique os logs da API com
yarn docker:logspara erros de inicialização
- A API leva algum tempo para inicializar completamente após a inicialização do contêiner
- Verifique se as migrações e dados iniciais foram carregados
- Confirme que o arquivo
.envpossui todas as variáveis necessárias - Execute a verificação de saúde para ver quais componentes específicos estão falhando
- Use
yarn tunnelpara criar um endpoint público para webhooks externos - Atualize as URLs de webhook do seu provedor Git para usar a URL do tunnel
- Certifique-se de que o tunnel está em execução ao testar integrações de webhook
- Verifique os logs do tunnel para problemas de conexão