workspace-v1/control-plane/orchestration/directivas/simco/SIMCO-INICIALIZACION.md
Adrian Flores Cortes 967ab360bb Initial commit: Workspace v1 with 3-layer architecture
Structure:
- control-plane/: Registries, SIMCO directives, CI/CD templates
- projects/: Gamilit, ERP-Suite, Trading-Platform, Betting-Analytics
- shared/: Libs catalog, knowledge-base

Key features:
- Centralized port, domain, database, and service registries
- 23 SIMCO directives + 6 fundamental principles
- NEXUS agent profiles with delegation rules
- Validation scripts for workspace integrity
- Dockerfiles for all services
- Path aliases for quick reference

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-23 00:35:19 -06:00

398 lines
10 KiB
Markdown

# SIMCO: INICIALIZACIÓN DE AGENTES
**Versión:** 1.2.0
**Sistema:** SIMCO + CAPVED + Economía de Tokens - Carga de Contexto Automática (CCA)
**Propósito:** Definir el proceso de bootstrap para cualquier agente
---
## PRINCIPIO FUNDAMENTAL
> **Un agente inicializado correctamente NO alucina porque tiene TODO el contexto necesario antes de actuar.**
---
## PROMPT DE INICIALIZACIÓN (Template Universal)
```markdown
Serás {PERFIL_AGENTE} trabajando en el proyecto {PROYECTO}
para realizar: {DESCRIPCION_TAREA}
Antes de actuar, ejecuta el protocolo CCA (Carga de Contexto Automática).
```
**Ejemplo real:**
```markdown
Serás Backend-Agent trabajando en el proyecto trading-platform
para realizar: Crear el módulo de notificaciones con endpoints CRUD
Antes de actuar, ejecuta el protocolo CCA (Carga de Contexto Automática).
```
---
## PROTOCOLO CCA: CARGA DE CONTEXTO AUTOMÁTICA
### Fase 0: IDENTIFICACIÓN (Automática)
```yaml
Al recibir prompt de inicialización, extraer:
PERFIL: {tipo de agente mencionado}
PROYECTO: {nombre del proyecto}
TAREA: {descripción de la tarea}
OPERACION: {inferir: CREAR | MODIFICAR | VALIDAR | INVESTIGAR}
DOMINIO: {inferir: DDL | BACKEND | FRONTEND | MIXTO}
```
### Fase 1: CARGA NIVEL CORE (Obligatorio - ~5 min)
```
LEER EN ORDEN ESTRICTO:
1. PRINCIPIOS FUNDAMENTALES (5 archivos)
└── core/orchestration/directivas/principios/
├── PRINCIPIO-CAPVED.md # Ciclo de vida de tareas
├── PRINCIPIO-DOC-PRIMERO.md
├── PRINCIPIO-ANTI-DUPLICACION.md
├── PRINCIPIO-VALIDACION-OBLIGATORIA.md
└── PRINCIPIO-ECONOMIA-TOKENS.md # 🆕 Desglose de tareas
2. MI PERFIL
└── core/orchestration/agents/perfiles/PERFIL-{MI-TIPO}.md
Extraer:
- Qué SÍ hago
- Qué NO hago (delegar)
- Directivas SIMCO que debo seguir
3. ÍNDICE SIMCO
└── core/orchestration/directivas/simco/_INDEX.md
Entender estructura del sistema
4. SISTEMA DE ALIASES
└── core/orchestration/referencias/ALIASES.yml
Cargar resolución de @ALIAS
```
### Fase 2: CARGA NIVEL PROYECTO (Obligatorio - ~5 min)
```
LEER EN ORDEN:
5. CONTEXTO DEL PROYECTO
└── projects/{PROYECTO}/orchestration/00-guidelines/CONTEXTO-PROYECTO.md
Extraer:
- Variables resueltas (DB_NAME, BACKEND_ROOT, etc.)
- Alias resueltos (@DDL, @BACKEND, etc.)
- Stack tecnológico
- Estructura del proyecto
6. PRÓXIMA ACCIÓN
└── projects/{PROYECTO}/orchestration/PROXIMA-ACCION.md
Verificar:
- ¿Mi tarea es la próxima prioridad?
- ¿Hay dependencias previas?
- ¿Hay contexto de sesiones anteriores?
7. INVENTARIO RELEVANTE
└── Según mi dominio:
- DDL: @INV_DB (DATABASE_INVENTORY.yml)
- Backend: @INV_BE (BACKEND_INVENTORY.yml)
- Frontend: @INV_FE (FRONTEND_INVENTORY.yml)
- Mixto: MASTER_INVENTORY.yml
```
### Fase 3: CARGA NIVEL OPERACIÓN (Según tarea - ~3 min)
```
LEER SIMCO DE OPERACIÓN:
8. SIMCO-TAREA.md (🆕 Si es HU que genera commit)
└── Proceso CAPVED completo: C→A→P→V→E→D
9. SIMCO BASE (según operación inferida)
└── Crear algo nuevo → SIMCO-CREAR.md
Modificar existente → SIMCO-MODIFICAR.md
Validar/revisar → SIMCO-VALIDAR.md
Buscar/investigar → SIMCO-BUSCAR.md
Documentar → SIMCO-DOCUMENTAR.md
10. SIMCO DE DOMINIO (si aplica)
└── Base de datos → SIMCO-DDL.md
Backend NestJS → SIMCO-BACKEND.md
Frontend React → SIMCO-FRONTEND.md
```
### Fase 4: CARGA NIVEL TAREA (Específico - ~5 min)
```
LEER DOCUMENTACIÓN RELEVANTE:
10. DOCUMENTACIÓN DEL PROYECTO
└── projects/{PROYECTO}/docs/
Buscar especificaciones relacionadas con mi tarea:
- Diseño de entidades
- Especificaciones de API
- Wireframes/mockups
- ADRs relevantes
11. CÓDIGO EXISTENTE RELACIONADO
└── Buscar patrones similares ya implementados:
- ¿Existe módulo similar? → Usar como referencia
- ¿Existe tabla similar? → Seguir convenciones
- ¿Existe componente similar? → Reutilizar patrones
12. DEPENDENCIAS DE LA TAREA
└── Identificar qué debe existir ANTES:
- ¿Necesito tabla que no existe? → Crear primero o delegar
- ¿Necesito endpoint que no existe? → Crear primero o delegar
- ¿Necesito tipo que no existe? → Crear primero
```
---
## MAPA DE CARGA POR PERFIL
### Database-Agent
```yaml
CORE (siempre):
- principios/*.md (5, incluyendo CAPVED y Tokens)
- PERFIL-DATABASE.md
- ALIASES.yml
PROYECTO (siempre):
- CONTEXTO-PROYECTO.md
- PROXIMA-ACCION.md
- DATABASE_INVENTORY.yml
OPERACIÓN (según tarea):
crear_tabla: [SIMCO-CREAR.md, SIMCO-DDL.md]
modificar_tabla: [SIMCO-MODIFICAR.md, SIMCO-DDL.md]
crear_funcion: [SIMCO-CREAR.md, SIMCO-DDL.md]
crear_indice: [SIMCO-CREAR.md, SIMCO-DDL.md]
TAREA:
- docs/{especificacion-entidad}.md
- DDL existente del schema
- Convenciones SQL del proyecto
```
### Backend-Agent
```yaml
CORE (siempre):
- principios/*.md (5, incluyendo CAPVED y Tokens)
- PERFIL-BACKEND.md
- ALIASES.yml
PROYECTO (siempre):
- CONTEXTO-PROYECTO.md
- PROXIMA-ACCION.md
- BACKEND_INVENTORY.yml
- DATABASE_INVENTORY.yml (para alinear con DDL)
OPERACIÓN (según tarea):
crear_modulo: [SIMCO-CREAR.md, SIMCO-BACKEND.md]
crear_entity: [SIMCO-CREAR.md, SIMCO-BACKEND.md]
crear_endpoint: [SIMCO-CREAR.md, SIMCO-BACKEND.md]
modificar_service: [SIMCO-MODIFICAR.md, SIMCO-BACKEND.md]
TAREA:
- docs/{especificacion-api}.md
- DDL de tabla relacionada
- Entities similares existentes
- Services similares existentes
```
### Frontend-Agent
```yaml
CORE (siempre):
- principios/*.md (5, incluyendo CAPVED y Tokens)
- PERFIL-FRONTEND.md
- ALIASES.yml
PROYECTO (siempre):
- CONTEXTO-PROYECTO.md
- PROXIMA-ACCION.md
- FRONTEND_INVENTORY.yml
- BACKEND_INVENTORY.yml (para conocer endpoints)
OPERACIÓN (según tarea):
crear_componente: [SIMCO-CREAR.md, SIMCO-FRONTEND.md]
crear_pagina: [SIMCO-CREAR.md, SIMCO-FRONTEND.md]
crear_hook: [SIMCO-CREAR.md, SIMCO-FRONTEND.md]
modificar_componente: [SIMCO-MODIFICAR.md, SIMCO-FRONTEND.md]
TAREA:
- docs/{wireframe-mockup}.md
- DTOs del backend relacionados
- Componentes similares existentes
- Hooks similares existentes
```
### Orquestador (Tech-Leader)
```yaml
CORE (siempre):
- principios/*.md (5, incluyendo CAPVED y Tokens)
- PERFIL-ORQUESTADOR.md
- ALIASES.yml
PROYECTO (siempre):
- CONTEXTO-PROYECTO.md
- PROXIMA-ACCION.md
- MASTER_INVENTORY.yml (visión completa)
OPERACIÓN (según tarea):
planificar: [SIMCO-BUSCAR.md, SIMCO-DELEGACION.md]
delegar: [SIMCO-DELEGACION.md]
validar: [SIMCO-VALIDAR.md]
coordinar: [SIMCO-DELEGACION.md]
TAREA:
- docs/ completo del proyecto
- Estado de todas las capas
- Dependencias entre tareas
```
---
## CHECKLIST DE INICIALIZACIÓN
```markdown
## CHECKLIST CCA - {PERFIL} en {PROYECTO}
### Fase 1: Core ✓
- [ ] Leí PRINCIPIO-CAPVED.md (Ciclo de vida)
- [ ] Leí PRINCIPIO-DOC-PRIMERO.md
- [ ] Leí PRINCIPIO-ANTI-DUPLICACION.md
- [ ] Leí PRINCIPIO-VALIDACION-OBLIGATORIA.md
- [ ] Leí PRINCIPIO-ECONOMIA-TOKENS.md (🆕 Desglose tareas)
- [ ] Leí mi PERFIL-{TIPO}.md
- [ ] Leí _INDEX.md de SIMCO
- [ ] Leí ALIASES.yml
### Fase 2: Proyecto ✓
- [ ] Leí CONTEXTO-PROYECTO.md
- [ ] Leí PROXIMA-ACCION.md
- [ ] Leí inventario relevante
### Fase 3: Operación ✓
- [ ] Identifiqué si es HU → Leí SIMCO-TAREA.md (🆕)
- [ ] Identifiqué operación: {CREAR|MODIFICAR|VALIDAR|...}
- [ ] Leí SIMCO-{operación}.md
- [ ] Leí SIMCO-{dominio}.md (si aplica)
### Fase 4: Tarea ✓
- [ ] Consulté docs/ relevante
- [ ] Busqué patrones existentes
- [ ] Identifiqué dependencias
### READY TO EXECUTE
- [ ] Tengo TODO el contexto necesario
- [ ] Sé qué debo hacer
- [ ] Sé qué NO debo hacer
- [ ] Sé qué delegar si es necesario
```
---
## REPORTE DE CONTEXTO CARGADO
Al completar CCA, generar reporte interno:
```yaml
REPORTE_CONTEXTO_CARGADO:
agente: "{PERFIL}"
proyecto: "{PROYECTO}"
tarea: "{DESCRIPCION}"
contexto_core:
principios: [capved, doc-primero, anti-dup, validacion, tokens] # 5 principios
perfil: "PERFIL-{TIPO}.md"
simco_index: true
aliases: true
contexto_proyecto:
contexto_proyecto: true
proxima_accion: true
inventarios: ["{inventarios_leidos}"]
contexto_operacion:
operacion: "{CREAR|MODIFICAR|...}"
simco_operacion: "SIMCO-{op}.md"
simco_dominio: "SIMCO-{dom}.md"
contexto_tarea:
docs_consultados: ["{lista}"]
patrones_encontrados: ["{lista}"]
dependencias_identificadas: ["{lista}"]
estado: "READY_TO_EXECUTE"
restricciones:
no_hacer: ["{lista de lo que NO debo hacer}"]
delegar_a: ["{agentes para delegar}"]
validaciones_requeridas:
- "{validación 1}"
- "{validación 2}"
```
---
## ANTI-PATRONES (QUÉ NO HACER)
```yaml
❌ NUNCA:
- Empezar a codificar sin completar CCA
- Asumir que algo existe sin verificar inventario
- Crear sin consultar docs/ primero
- Ignorar principios porque "es una tarea simple"
- Saltarse validaciones "para ir más rápido"
- Modificar sin analizar impacto
❌ ERRORES COMUNES:
- "Ya sé cómo hacerlo" → Verificar docs/ de todas formas
- "Es igual al otro módulo" → Verificar diferencias en specs
- "Después documento" → Documentar durante, no después
- "El build puede fallar temporalmente" → NUNCA dejar build roto
```
---
## TIEMPO ESTIMADO DE INICIALIZACIÓN
| Fase | Tiempo | Archivos |
|------|--------|----------|
| Core | ~5 min | 6 archivos |
| Proyecto | ~5 min | 3-4 archivos |
| Operación | ~3 min | 1-2 archivos |
| Tarea | ~5 min | Variable |
| **TOTAL** | **~18 min** | **~15 archivos** |
> **INVERSIÓN:** 18 minutos de lectura
> **RETORNO:** Cero alucinaciones, cero retrabajos, código correcto desde el inicio
---
## INTEGRACIÓN CON SUBAGENTES
Cuando delegas a un subagente, este DEBE ejecutar CCA también.
Ver: `SIMCO-DELEGACION.md` para template de delegación con contexto heredado.
---
## REFERENCIAS
- **Ciclo de vida de tareas:** @CAPVED (PRINCIPIO-CAPVED.md)
- **Economía de tokens:** @TOKENS (PRINCIPIO-ECONOMIA-TOKENS.md)
- **Referencia rápida:** @QUICK_REF (SIMCO-QUICK-REFERENCE.md)
- **Punto de entrada HU:** @TAREA (SIMCO-TAREA.md)
- **Delegación:** @DELEGAR (SIMCO-DELEGACION.md)
---
**Versión:** 1.2.0 | **Sistema:** SIMCO + CAPVED + Tokens | **Tipo:** Directiva de Inicialización