gestiona_infraestructura
- Ruta de Configuración:
IA_Configuracion/skills/gestiona_infraestructura/
Skill: Gestiona Infraestructura (gestiona_infraestructura)
Este skill controla el ciclo de vida completo de los 8 microservicios de infraestructura local que dan soporte a los agentes autónomos de desarrollo. Los servicios viven en la carpeta dedicada C:\Users\jjtei\Desktop\IA_Infraestructura y se comunican a través de puertos locales en la serie 3000.
Mapa de Servicios
| Servicio | Puerto | Prefijo Gateway | Descripción |
|---|---|---|---|
| infra-gateway | 3000 | / | Gateway central y punto de acceso unificado |
| infra-github | 3100 | /api/git | Automatización de GitHub (commits, PRs, issues) |
| infra-firebase | 3200 | /api/fb | Automatización de Firebase (Firestore, Auth, Hosting) |
| infra-project-creator | 3300 | /api/proj | Creación de proyectos desde plantillas |
| infra-domain-manager | 3400 | /api/dns | Gestión DNS y subdominios Cloudflare |
| api-design-assets | 3500 | /api/design | Assets de diseño, paletas y layouts UI |
| api-conocimiento-rag | 3600 | /api/rag | Indexación y búsqueda semántica RAG |
| api-utilidades-scraping | 3700 | /api/scrape | Web scraping y conversión a Markdown |
Cuándo activar
Activa este skill cuando el usuario diga cualquiera de estas frases (o similares):
Arrancar
- “arranca infra”, “activa infraestructura”, “levanta los servicios”
- “arranca solo github”, “activa el domain manager”, “levanta firebase”
- “necesito la infraestructura”, “pon en marcha los agentes”
Verificar estado
- “estado de infra”, “health check”, “¿están los servicios activos?”
- “comprueba la infraestructura”
Detener
- “para infra”, “detén los servicios”, “apaga la infraestructura”
- “libera los puertos”, “cierra los agentes”
Instrucciones
Opción A: Arrancar TODA la infraestructura
Paso 1: Verificar si ya está corriendo
try { $r = Invoke-RestMethod -Uri "http://localhost:3000/api/health" -TimeoutSec 3; "RUNNING" } catch { "STOPPED" }Paso 2A: Si está STOPPED, arrancar todos los servicios
npm run start --prefix "C:\Users\jjtei\Desktop\IA_Infraestructura"Espera unos segundos y verifica con el health check.
Paso 2B: Si ya está RUNNING, informar al usuario que los servicios ya están activos.
Paso 3: Verificar el estado con el Gateway
$health = Invoke-RestMethod -Uri "http://localhost:3000/api/health"$health.data.services | Format-Table -AutoSizeConfirmar al usuario con un resumen del estado:
✅ Infraestructura activa. Gateway en
http://localhost:3000. Estado general:healthy.
Opción B: Arrancar UN servicio individual
Si el usuario solo necesita un servicio específico:
# Ejemplo: arrancar solo infra-githubStart-Process -FilePath "node" -ArgumentList "server.js" -WorkingDirectory "C:\Users\jjtei\Desktop\IA_Infraestructura\infra-github" -WindowStyle HiddenStart-Sleep -Seconds 2Verificar que el puerto responde:
try { Invoke-RestMethod -Uri "http://localhost:3100/ping" -TimeoutSec 3; "OK" } catch { "ERROR" }Los directorios y puertos de cada servicio son:
| Servicio | Directorio | Puerto |
|---|---|---|
| infra-github | IA_Infraestructura\infra-github | 3100 |
| infra-firebase | IA_Infraestructura\infra-firebase | 3200 |
| infra-project-creator | IA_Infraestructura\infra-project-creator | 3300 |
| infra-domain-manager | IA_Infraestructura\infra-domain-manager | 3400 |
| api-design-assets | IA_Infraestructura\api-design-assets | 3500 |
| api-conocimiento-rag | IA_Infraestructura\api-conocimiento-rag | 3600 |
| api-utilidades-scraping | IA_Infraestructura\api-utilidades-scraping | 3700 |
| infra-gateway | IA_Infraestructura\infra-gateway | 3000 |
Opción C: Detener TODA la infraestructura
npm run stop --prefix "C:\Users\jjtei\Desktop\IA_Infraestructura"Confirmar al usuario:
🛑 Infraestructura detenida. Todos los puertos (3000-3700) han sido liberados.
Opción D: Verificar estado (Health Check)
try { $health = Invoke-RestMethod -Uri "http://localhost:3000/api/health" -TimeoutSec 3 $health.data | ConvertTo-Json -Depth 3} catch { "El Gateway no está corriendo. Usa 'arranca infra' para levantar los servicios."}Integración con Otras Skills
Este skill es el punto de entrada para habilitar el resto de agentes locales:
- Antes de usar
gestiona_github→ asegúrate de queinfra-github(puerto 3100) está activo. - Antes de usar
gestiona_dominios→ asegúrate de queinfra-domain-manager(puerto 3400) está activo. - Antes de usar
crea_proyecto→ asegúrate de queinfra-project-creator(puerto 3300) está activo. - Antes de usar
gestiona_fierbase→ asegúrate de queinfra-firebase(puerto 3200) está activo. - Antes de usar
gestiona_conocimiento→ asegúrate de queapi-conocimiento-rag(puerto 3600) está activo. - Antes de usar
gestiona_diseno→ asegúrate de queapi-design-assets(puerto 3500) está activo. - Antes de usar
gestiona_scraping→ asegúrate de queapi-utilidades-scraping(puerto 3700) está activo.
Si el usuario invoca cualquiera de esos skills y su servicio no responde, arranca automáticamente el servicio de fondo correspondiente antes de continuar.