workspace-v1/orchestration/directivas/simco/SIMCO-INICIALIZACION.md
rckrdmrd ff3038f183 feat(orchestration): Add subagent token management system
Sistema completo de gestión de tokens para subagentes NEXUS v4.0:

Nuevas directivas SIMCO:
- SIMCO-SUBAGENTE.md: Protocolo para agentes en modo subagente
- SIMCO-CCA-SUBAGENTE.md: CCA ligero para subagentes (~1,500 tokens)
- SIMCO-CONTROL-TOKENS.md: Gestión de límites de tokens
- SIMCO-DELEGACION-PARALELA.md: Delegación paralela

Perfiles compact (~250 tokens cada uno):
- PERFIL-BACKEND-COMPACT.md
- PERFIL-FRONTEND-COMPACT.md
- PERFIL-DATABASE-COMPACT.md
- PERFIL-DEVOPS-COMPACT.md
- PERFIL-ML-COMPACT.md
- PERFIL-GENERIC-SUBAGENT.md

Templates de delegación escalonados:
- TEMPLATE-DELEGACION-MINIMA.md (~250 tokens)
- TEMPLATE-DELEGACION-ESTANDAR.md (~600 tokens)
- TEMPLATE-DELEGACION-COMPLETA.md (~1,800 tokens)

Nuevos perfiles especializados:
- PERFIL-MCP-ARCHITECT.md
- PERFIL-MCP-DEVELOPER.md
- PERFIL-RAG-ENGINEER.md
- PERFIL-CICD-SPECIALIST.md
- PERFIL-PRODUCTION-MANAGER.md
- PERFIL-MONITORING-AGENT.md
- PERFIL-SECRETS-MANAGER.md
- PERFIL-PROPAGATION-TRACKER.md

Checklists y documentación:
- CHECKLIST-PRE-DELEGACION.md
- Análisis y planes de implementación

Métricas de mejora:
- ~59% reducción de tokens por delegación
- Perfiles compact: 69% más ligeros
- CCA subagente: 85% más ligero

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

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2026-01-07 04:43:01 -06:00

586 lines
15 KiB
Markdown

# SIMCO: INICIALIZACION DE AGENTES
**Version:** 1.4.0
**Sistema:** SIMCO + CAPVED + Economia de Tokens + Context Engineering + Subagentes
**Proposito:** Definir el proceso de bootstrap y recovery para cualquier agente
**Actualizado:** 2026-01-07
---
## PRINCIPIO FUNDAMENTAL
> **Un agente inicializado correctamente NO alucina porque tiene TODO el contexto necesario antes de actuar.**
> **Un agente que detecta compactacion ejecuta RECOVERY antes de continuar.**
---
## PROMPT DE INICIALIZACION (Template Universal)
```markdown
Seras {PERFIL_AGENTE} trabajando en el proyecto {PROYECTO}
para realizar: {DESCRIPCION_TAREA}
Antes de actuar, ejecuta el protocolo CCA (Carga de Contexto Automatica).
```
**Ejemplo real:**
```markdown
Seras Backend-Agent trabajando en el proyecto trading-platform
para realizar: Crear el modulo de notificaciones con endpoints CRUD
Antes de actuar, ejecuta el protocolo CCA (Carga de Contexto Automatica).
```
---
## PROTOCOLO CCA: CARGA DE CONTEXTO AUTOMATICA
### Fase 0: IDENTIFICACION (Automatica)
```yaml
Al recibir prompt de inicializacion, extraer:
PERFIL: {tipo de agente mencionado}
PROYECTO: {nombre del proyecto}
TAREA: {descripcion 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 (6 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
└── PRINCIPIO-NO-ASUMIR.md # No asumir, preguntar
2. MI PERFIL
└── core/orchestration/agents/perfiles/PERFIL-{MI-TIPO}.md
Extraer:
- Que SI hago
- Que NO hago (delegar)
- Directivas SIMCO que debo seguir
- Context Requirements (si existe)
3. INDICE SIMCO
└── core/orchestration/directivas/simco/_INDEX.md
Entender estructura del sistema
4. SISTEMA DE ALIASES
└── core/orchestration/referencias/ALIASES.yml
Cargar resolucion 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 tecnologico
- Estructura del proyecto
6. PROXIMA ACCION
└── projects/{PROYECTO}/orchestration/PROXIMA-ACCION.md
Verificar:
- ¿Mi tarea es la proxima prioridad?
- ¿Hay dependencias previas?
- ¿Hay contexto de sesiones anteriores?
7. INVENTARIO RELEVANTE
└── Segun 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 OPERACION (Segun tarea - ~3 min)
```
LEER SIMCO DE OPERACION:
8. SIMCO-TAREA.md (Si es HU que genera commit)
└── Proceso CAPVED completo: C→A→P→V→E→D
9. SIMCO BASE (segun operacion 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 (Especifico - ~5 min)
```
LEER DOCUMENTACION RELEVANTE:
11. DOCUMENTACION DEL PROYECTO
└── projects/{PROYECTO}/docs/
Buscar especificaciones relacionadas con mi tarea:
- Diseno de entidades
- Especificaciones de API
- Wireframes/mockups
- ADRs relevantes
12. CODIGO EXISTENTE RELACIONADO
└── Buscar patrones similares ya implementados:
- ¿Existe modulo similar? → Usar como referencia
- ¿Existe tabla similar? → Seguir convenciones
- ¿Existe componente similar? → Reutilizar patrones
13. DEPENDENCIAS DE LA TAREA
└── Identificar que 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
```
---
## DETECCION DE COMPACTACION
### Senales de Contexto Compactado
El agente DEBE sospechar compactacion si:
```yaml
SENALES_CRITICAS:
- "No recuerdo haber ejecutado las fases anteriores del CCA"
- "Recibo un resumen de 'conversacion anterior' del sistema"
- "No puedo resolver un @ALIAS que deberia conocer"
- "Desconozco variables que deberia tener resueltas"
- "No puedo identificar mi fase CAPVED actual"
SENALES_MODERADAS:
- "Desconozco el estado de la tarea en curso"
- "Confundo archivos o rutas del proyecto"
- "Olvido detalles de implementacion reciente"
CONFIRMACION:
pregunta: "Recuerdo mi PERFIL, PROYECTO, TAREA y FASE CAPVED?"
si_falta_algo: "Ejecutar RECOVERY inmediatamente"
```
### Accion Inmediata
```yaml
Si_detecta_compactacion:
accion: "Ejecutar RECOVERY antes de continuar"
referencia: "@CONTEXT_RECOVERY"
prioridad: "CRITICA - No ejecutar tarea sin recovery"
notificar: "Informar al usuario que se esta ejecutando recovery"
```
---
## PROTOCOLO DE RECOVERY
### Cuando Ejecutar
- Despues de detectar compactacion
- Al inicio de sesion nueva con tarea pendiente
- Cuando el usuario indica "continua donde quedaste"
- Cuando se pierde tracking de la sesion
### Proceso de Recovery en 3 Fases
```yaml
RECOVERY_FASE_1_CRITICO:
tiempo: "~2 min"
tokens: "~3000"
objetivo: "Restaurar identidad y ubicacion"
cargar:
- Mi perfil: "agents/perfiles/PERFIL-{TIPO}.md"
- Ultimo mensaje del usuario o PROXIMA-ACCION.md
- PRINCIPIO-CAPVED.md (resumen operativo)
validar:
- "Se quien soy"
- "Se en que proyecto estoy"
- "Se que tarea tengo"
RECOVERY_FASE_2_OPERATIVO:
tiempo: "~2 min"
tokens: "~2000"
objetivo: "Restaurar capacidad de ejecucion"
cargar:
- SIMCO-TAREA.md (si tarea genera commit)
- SIMCO-{DOMINIO}.md (segun tarea)
- Inventario relevante
validar:
- "Se como proceder"
- "Conozco estado del proyecto"
RECOVERY_FASE_3_PROYECTO:
tiempo: "~2 min"
tokens: "~2000"
objetivo: "Restaurar contexto especifico"
cargar:
- CONTEXTO-PROYECTO.md
- docs/ especificos de la tarea
- Estado de archivos modificados
validar:
- "Tengo variables del proyecto"
- "Conozco specs de mi tarea"
```
### Notificacion al Usuario
```markdown
[RECARGA DE CONTEXTO]
Detecte perdida de contexto. Ejecutando recovery:
1. [x] Perfil recuperado: {PERFIL}
2. [x] Proyecto identificado: {PROYECTO}
3. [x] Tarea actual: {TAREA_ID}
4. [x] Fase CAPVED: {FASE}
5. [x] Directivas SIMCO cargadas
Recovery completado (~{X} tokens).
Continuando desde: {descripcion del punto de continuacion}
Siguiente accion: {accion inmediata}
```
---
## VALIDACION POST-RECOVERY
### Checklist de Validacion
```markdown
## Recovery Validation - {FECHA}
### Identidad
- [ ] Conozco mi perfil: {PERFIL}
- [ ] Conozco mi proyecto: {PROYECTO}
- [ ] Conozco mi tarea: {TAREA_ID}
- [ ] Conozco mi fase CAPVED: {FASE}
### Operacion
- [ ] Tengo SIMCO de operacion cargado
- [ ] Tengo SIMCO de dominio cargado (si aplica)
- [ ] Tengo inventario relevante
### Contexto Especifico
- [ ] Puedo resolver @ALIASES esenciales
- [ ] Conozco archivos modificados en sesion
- [ ] Tengo documentacion de tarea
Estado: [ ] RECOVERED | [ ] NECESITA_MAS_CONTEXTO
```
### Si Validacion Falla
```yaml
Si_recovery_incompleto:
accion: "Solicitar contexto adicional al usuario"
mensaje: |
Mi recovery fue parcial. No pude recuperar:
- {item faltante 1}
- {item faltante 2}
¿Puedes indicarme:
- {pregunta especifica 1}?
- {pregunta especifica 2}?
```
---
## MAPA DE CARGA POR PERFIL
### Database-Agent
```yaml
CORE (siempre):
- principios/*.md (6, incluyendo CAPVED y Tokens)
- PERFIL-DATABASE.md
- ALIASES.yml
PROYECTO (siempre):
- CONTEXTO-PROYECTO.md
- PROXIMA-ACCION.md
- DATABASE_INVENTORY.yml
OPERACION (segun 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 (6, 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)
OPERACION (segun 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 (6, 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)
OPERACION (segun 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 (6, incluyendo CAPVED y Tokens)
- PERFIL-ORQUESTADOR.md
- ALIASES.yml
PROYECTO (siempre):
- CONTEXTO-PROYECTO.md
- PROXIMA-ACCION.md
- MASTER_INVENTORY.yml (vision completa)
OPERACION (segun tarea):
planificar: [SIMCO-BUSCAR.md, SIMCO-DELEGACION.md]
delegar: [SIMCO-DELEGACION.md, @TPL_HERENCIA_CTX]
validar: [SIMCO-VALIDAR.md]
coordinar: [SIMCO-DELEGACION.md]
TAREA:
- docs/ completo del proyecto
- Estado de todas las capas
- Dependencias entre tareas
```
---
## CHECKLIST DE INICIALIZACION
```markdown
## CHECKLIST CCA - {PERFIL} en {PROYECTO}
### Fase 1: Core
- [ ] Lei PRINCIPIO-CAPVED.md (Ciclo de vida)
- [ ] Lei PRINCIPIO-DOC-PRIMERO.md
- [ ] Lei PRINCIPIO-ANTI-DUPLICACION.md
- [ ] Lei PRINCIPIO-VALIDACION-OBLIGATORIA.md
- [ ] Lei PRINCIPIO-ECONOMIA-TOKENS.md (Desglose tareas)
- [ ] Lei PRINCIPIO-NO-ASUMIR.md
- [ ] Lei mi PERFIL-{TIPO}.md
- [ ] Lei _INDEX.md de SIMCO
- [ ] Lei ALIASES.yml
### Fase 2: Proyecto
- [ ] Lei CONTEXTO-PROYECTO.md
- [ ] Lei PROXIMA-ACCION.md
- [ ] Lei inventario relevante
### Fase 3: Operacion
- [ ] Identifique si es HU → Lei SIMCO-TAREA.md
- [ ] Identifique operacion: {CREAR|MODIFICAR|VALIDAR|...}
- [ ] Lei SIMCO-{operacion}.md
- [ ] Lei SIMCO-{dominio}.md (si aplica)
### Fase 4: Tarea
- [ ] Consulte docs/ relevante
- [ ] Busque patrones existentes
- [ ] Identifique dependencias
### READY TO EXECUTE
- [ ] Tengo TODO el contexto necesario
- [ ] Se que debo hacer
- [ ] Se que NO debo hacer
- [ ] Se que 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, no-asumir]
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:
- "{validacion 1}"
- "{validacion 2}"
```
---
## ANTI-PATRONES (QUE 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 mas rapido"
- Modificar sin analizar impacto
- Continuar tras compactacion sin ejecutar recovery
ERRORES_COMUNES:
- "Ya se como hacerlo" → Verificar docs/ de todas formas
- "Es igual al otro modulo" → Verificar diferencias en specs
- "Despues documento" → Documentar durante, no despues
- "El build puede fallar temporalmente" → NUNCA dejar build roto
- "El contexto esta bien" → Verificar si hubo compactacion
```
---
## TIEMPO ESTIMADO
| Fase | Tiempo | Archivos |
|------|--------|----------|
| Core | ~5 min | 8 archivos |
| Proyecto | ~5 min | 3-4 archivos |
| Operacion | ~3 min | 1-2 archivos |
| Tarea | ~5 min | Variable |
| **TOTAL CCA** | **~18 min** | **~15 archivos** |
| Recovery Critico | ~2 min | ~3 archivos |
| Recovery Completo | ~6 min | ~7 archivos |
> **INVERSION:** 18 minutos de lectura inicial, 6 minutos max de recovery
> **RETORNO:** Cero alucinaciones, cero retrabajos, codigo correcto desde el inicio
---
## INTEGRACION CON SUBAGENTES
Cuando delegas a un subagente, este DEBE ejecutar CCA tambien.
Ver: `SIMCO-DELEGACION.md` para template de delegacion con contexto heredado.
Ver: `@TPL_HERENCIA_CTX` para formato de herencia de contexto.
### CCA para Subagentes (Version Ligera)
Si estas operando como **subagente** (recibiste delegacion de un orquestador):
```yaml
NO_EJECUTAR:
- CCA completo (4 fases)
- Perfil completo (~800 tokens)
- CONTEXTO-PROYECTO.md (ya heredado)
SI_EJECUTAR:
- SIMCO-CCA-SUBAGENTE.md (CCA ligero, 2 fases)
- PERFIL-*-COMPACT.md (~250 tokens)
- 1 SIMCO de operacion
RESULTADO:
- ~1,500 tokens vs ~10,000 tokens
- ~5 min vs ~18 min
```
Ver: `SIMCO-SUBAGENTE.md` para protocolo completo de subagentes.
Ver: `SIMCO-CCA-SUBAGENTE.md` para CCA ligero.
Ver: `agents/perfiles/compact/` para perfiles compactos.
---
## REFERENCIAS DE CONTEXT ENGINEERING
| Documento | Alias | Proposito |
|-----------|-------|-----------|
| SIMCO-CONTEXT-ENGINEERING.md | @CONTEXT_ENGINEERING | Principios de ingenieria de contexto |
| TEMPLATE-RECOVERY-CONTEXT.md | @TPL_RECOVERY_CTX | Template detallado de recovery |
| TEMPLATE-HERENCIA-CONTEXTO.md | @TPL_HERENCIA_CTX | Herencia de contexto a subagentes |
| PRINCIPIO-CAPVED.md | @CAPVED | Ciclo de vida de tareas |
| PRINCIPIO-ECONOMIA-TOKENS.md | @ECONOMIA | Principio de economia de tokens |
| SIMCO-QUICK-REFERENCE.md | @QUICK_REF | Referencia rapida optimizada |
---
**Version:** 1.3.0 | **Sistema:** SIMCO + CAPVED + Context Engineering | **Tipo:** Directiva de Inicializacion