Saltar al contenido principal

Documentation Index

Fetch the complete documentation index at: https://docs.kodus.io/llms.txt

Use this file to discover all available pages before exploring further.

Cómo funciona Groq

Groq Cloud proporciona inferencia rápida de LLM con APIs compatibles con OpenAI. Construido para la velocidad y la simplicidad, Groq ofrece inferencia ultrarrápida para modelos populares como Llama, Deepseek y más. La plataforma está diseñada para ser simple de integrar y fácil de escalar, lo que la hace perfecta para aplicaciones de producción.

Modelos Recomendados

Recomendamos buenos modelos de codificación con ventanas de contexto altas e inferencia rápida.
Para la información más actualizada, visita la página de modelos de Groq.
ModeloVentana de contextoVelocidad
Llama 3.3 70B Versatile recomendado~128k tokensUltra Rápido
Deepseek R1 Distill Llama 70B~128k tokensUltra Rápido
Llama 3.1 70B Versatile~128k tokensUltra Rápido

Crear Clave API

Se requiere una cuenta de Groq Cloud para crear una clave API.
Ve directamente a la página de Claves API de Groq para crear una nueva clave API. O sigue estos pasos:
  1. Ve a la Consola de Groq
  2. Inicia sesión o crea tu cuenta
  3. Navega a “Claves API” en la navegación superior
  4. Haz clic en el botón “Crear Clave API”
  5. Dale un nombre como ‘Kodus’ o cualquier nombre descriptivo
  6. Copia la clave API y guárdala en un lugar seguro
Solo los propietarios del equipo o los usuarios con el rol de desarrollador pueden crear o administrar claves API en Groq.

Cómo usar

System Requirements

  • Docker (latest stable) with the Compose plugin
  • Domain name or fixed IP if you want to receive Git webhooks from cloud providers (GitHub.com, GitLab.com, etc.)
Default host port mappings — adjust in .env if any conflict.
  • 3000 — Kodus Web App
  • 3001 — API
  • 3332 — Webhooks
  • 5432 — PostgreSQL
  • 27017 — MongoDB
  • 5672, 15672, 15692 — RabbitMQ (AMQP, management UI, metrics)
  • 3101 — MCP Manager (only if API_MCP_SERVER_ENABLED=true)
What ./scripts/install.sh brings up, based on your .env.Core (always on):
  • api — main backend
  • worker — code-review jobs
  • webhooks — Git provider webhook receiver
  • kodus-web — Next.js frontend
  • db_kodus_postgres, db_kodus_mongodb, rabbitmq — local infrastructure. Skip with USE_LOCAL_DB=false / USE_LOCAL_RABBITMQ=false to point at managed instances.
Optional:
  • kodus-mcp-manager — Model Context Protocol broker. Enable with API_MCP_SERVER_ENABLED=true. See MCP Manager.
  • worker-analytics — Cockpit ingestion (DORA metrics, PR classifier). Self-hosted Enterprise only, not wired by default. See Analytics Worker.
Code review uses an AST graph + cross-file context that runs in a sandbox — local (default, runs inside the worker) or e2b (paid remote sandbox). See Sandbox & AST Graph for the modes, caching behavior, and when to pick each.
Internet access is required if you plan to connect to cloud-based Git services (GitHub, GitLab, Bitbucket) or cloud LLM providers (OpenAI, Anthropic, etc.). For self-hosted Git tools and on-prem LLMs within your network, external internet access is optional.

Domain Name Setup (Optional)

If you're planning to integrate Kodus with cloud-based Git providers (GitHub, GitLab, or Bitbucket), you'll need public-facing URLs for both the Kodus Web App and its API. This allows your server to receive webhooks for proper Code Review functionality and ensures correct application behavior. We recommend setting up two subdomains:
  • One for the Web Application, e.g., kodus-web.yourdomain.com.
  • One for the API, e.g., kodus-api.yourdomain.com.
Webhooks are handled by a separate service (port 3332). You can either:
  • Use a dedicated webhooks subdomain, e.g., kodus-webhooks.yourdomain.com, or
  • Keep using the API domain and route /github/webhook, /gitlab/webhook, etc. to the webhooks service in your reverse proxy.
Both subdomains should have DNS A records pointing to your server's IP address. Later in this guide, we will configure a reverse proxy (Nginx) to route requests to these subdomains to the correct internal services. This setup is essential for full functionality, including webhooks and authentication.
Note: If you're only connecting to self-hosted Git tools on your network and do not require public access or webhooks, you might be able to use a simpler setup, but this guide focuses on public-facing deployments.

Setup

1

Clone the installer repository

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

Copy the example environment file

cp .env.example .env
3

Generate secure keys for the required environment variables

./generate-keys.sh
4

Edit the environment file

Edit .env with your values using your preferred text editor.
nano .env
See Environment Variables Configuration for detailed instructions.
5

Run the installer

./scripts/install.sh
6

Success 🎉

When complete, Kodus Services should be running on your machine. You can verify your installation using the following script:
./scripts/doctor.sh
7

Access the web interface

Once you access the web interface for the first time, you'll need to:
  1. Create your admin account - This will be the first user with full system access
  2. Configure your Git provider - Connect GitHub, GitLab, or Bitbucket following the on-screen instructions
  3. Select repositories for analysis - Choose which code repositories Kody will review
For detailed steps on the initial configuration process, refer to our Getting Started Guide.

Configurar Groq en el Archivo de Entorno

Edita tu archivo .env y configura los ajustes principales. Para la Integración de LLM, usa Groq en Modo Fijo:
# Configuración principal del sistema (actualiza con tus dominios)
WEB_HOSTNAME_API="kodus-api.yourdomain.com"    
WEB_PORT_API=443                               
NEXTAUTH_URL="https://kodus-web.yourdomain.com"

# Claves de seguridad (genera con los comandos openssl anteriores)
WEB_NEXTAUTH_SECRET="your-generated-secret"
API_CRYPTO_KEY="your-generated-hex-key"
API_JWT_SECRET="your-generated-secret"
API_JWT_REFRESH_SECRET="your-generated-secret"

# Configuración de la base de datos
API_PG_DB_PASSWORD="your-secure-db-password"
API_MG_DB_PASSWORD="your-secure-db-password"

# Configuración de Groq (Modo Fijo) 
API_LLM_PROVIDER_MODEL="llama-3.3-70b-versatile"             # Elige tu modelo preferido
API_OPENAI_FORCE_BASE_URL="https://api.groq.com/openai/v1"   # URL de la API de Groq
API_OPEN_AI_API_KEY="your-groq-api-key"                      # Tu clave API de Groq

# Webhooks del proveedor de Git (elige tu proveedor)
API_GITHUB_CODE_MANAGEMENT_WEBHOOK="https://kodus-api.yourdomain.com/github/webhook"
# o API_GITLAB_CODE_MANAGEMENT_WEBHOOK="https://kodus-api.yourdomain.com/gitlab/webhook"
# o GLOBAL_BITBUCKET_CODE_MANAGEMENT_WEBHOOK="https://kodus-api.yourdomain.com/bitbucket/webhook"
Las URLs de webhook deben alcanzar el servicio de Webhooks (puerto 3332). Usa un dominio dedicado para webhooks o enruta /.../webhook al puerto 3332 en tu proxy inverso.
El Modo Fijo es ideal para Groq porque proporciona APIs compatibles con OpenAI con inferencia ultrarrápida. Esto te da el mejor rendimiento con una configuración simple.

Run the Installation Script

Looking for more control? Check out our docker-compose file for manual deployment options.
Set the proper permissions for the installation script:
chmod +x scripts/install.sh
Run the script:
./scripts/install.sh

What the Installer Does

Our installer automates several important steps:
  • Verifies Docker installation
  • Creates networks for Kodus services
  • Clones repositories and configures environment files
  • Runs docker-compose to start all services
  • Executes database migrations
  • Seeds initial data
🎉 Success! When complete, the Kodus Web App and backend services (API, worker, webhooks, MCP manager) should be running on your machine. You can verify your installation by visiting http://localhost:3000 - you should see the Kodus Web Application interface.
Code Review features will not work yet unless you complete the reverse proxy setup. Without this configuration, external Git providers cannot send webhooks to your instance.

Configurar Proxy Inverso (Para Producción)

Para webhooks y acceso externo, configura Nginx:
# Aplicación web (puerto 3000)
server {
    listen 80;
    server_name kodus-web.yourdomain.com;
    location / {
        proxy_pass http://localhost:3000;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

# API (puerto 3001)  
server {
    listen 80;
    server_name kodus-api.yourdomain.com;
    location ~ ^/(github|gitlab|bitbucket|azure-repos)/webhook {
        proxy_pass http://localhost:3332;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }

    location / {
        proxy_pass http://localhost:3001;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto $scheme;
    }
}

Verificar la Integración con Groq

Además de la verificación básica de instalación, confirma que Groq está funcionando:
# Verificar específicamente la conexión con la API de Groq
docker-compose logs api worker | grep -i groq
Para información detallada sobre configuración de SSL, monitoreo y configuraciones avanzadas, consulta nuestra guía de despliegue completa.

Solución de problemas

  • Verifica que tu clave API sea correcta y esté activa en la Consola de Groq
  • Comprueba si tienes créditos o cuota suficiente en tu cuenta de Groq
  • Asegúrate de que no haya espacios extra en tu archivo .env
  • Verifica que el nombre del modelo esté correctamente escrito en tu configuración
  • Comprueba que el modelo esté disponible en la lista actual de modelos de Groq
  • Prueba con un modelo diferente de nuestra lista de recomendados
  • Verifica que tu servidor tenga acceso a internet para alcanzar api.groq.com
  • Comprueba si hay restricciones de firewall
  • Revisa los registros de la API/worker para mensajes de error detallados