Skip to content

Instalación

Monorepo primero

Commander se entrega como monorepo open source. Hoy el camino soportado es clonar + pnpm. Los paquetes npm públicos (@commander/core, @commander/sdk) aún no son la vía principal — no uses pnpm add @commander/* como checklist de éxito.

Requisitos previos

  • Node.js 18+ (LTS recomendado)
  • pnpm 8+ (npm install -g pnpm)
  • Una API key de proveedor LLM (ver Proveedores)

Desarrollo local

bash
git clone https://github.com/PStarH/Commander.git
cd Commander
pnpm install

Consola web (dev)

bash
# API :4000 + Web :5173 + abrir navegador
pnpm gui

CLI desde el código fuente

bash
export OPENAI_API_KEY=sk-...
npx tsx packages/core/src/cliEntry.ts run "audit this repo" --stream

Tras compilar el core (pnpm --filter @commander/core build), el binario commander queda disponible desde el paquete.

Docker

bash
export COMMANDER_API_KEY="your-secret-key"
export OPENAI_API_KEY="sk-..."
docker compose up -d
# API:      http://localhost:4000
# Web GUI:  http://localhost:3000

El stack Docker incluye build multi-etapa multi-arquitectura, proxy Nginx, health checks, volúmenes persistentes y tini.

Producción (VM / VPS)

bash
cp .env.example .env.production
# Edita claves y ajustes
./scripts/deploy-vm.sh your-vm-ip --env-file .env.production

# O manualmente:
docker compose -f docker-compose.yml -f docker-compose.prod.yml up -d --build

Overlay de producción

FunciónAjuste
Límites CPU/RAM2 CPU / 4GB API, 0.5 CPU / 256MB web
Logsdriver json-file, 10MB máx, 3 rotaciones
Restartalways
Health checksintervalo 30s, timeout 10s, 5 reintentos
Rate limitingconfigurable por tenant
Multi-tenantopcional TENANT_PROVIDER=simple

CI/CD

El pipeline (.github/workflows/ci.yml) corre en cada push/PR:

JobComprueba
qualityTypeScript, 6700+ tests, CLI, build core
dockerdocker compose build
web-guibuild Vite de producción

Verificar instalación

bash
curl http://localhost:4000/health
cd packages/core
npx tsx --test tests/*.test.ts
npx tsc --noEmit

Siguiente

MIT — Hecho para orquestación multi-agente.