@saulwade/swl-ses 1.0.0 → 1.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLAUDE.md +8 -5
- package/README.md +2 -2
- package/agentes/accesibilidad-wcag-swl.md +5 -7
- package/agentes/arquitecto-swl.md +5 -3
- package/agentes/auto-evolucion-swl.md +42 -12
- package/agentes/backend-api-swl.md +5 -3
- package/agentes/backend-csharp-swl.md +5 -3
- package/agentes/backend-go-swl.md +5 -3
- package/agentes/backend-java-swl.md +5 -3
- package/agentes/backend-node-swl.md +5 -3
- package/agentes/backend-python-swl.md +5 -3
- package/agentes/backend-rust-swl.md +5 -3
- package/agentes/backend-workers-swl.md +5 -3
- package/agentes/cloud-infra-swl.md +5 -6
- package/agentes/consolidador-swl.md +5 -3
- package/agentes/datos-swl.md +5 -7
- package/agentes/depurador-swl.md +6 -3
- package/agentes/devops-ci-swl.md +5 -3
- package/agentes/disenador-ui-swl.md +5 -7
- package/agentes/documentador-swl.md +5 -3
- package/agentes/frontend-angular-swl.md +5 -11
- package/agentes/frontend-css-swl.md +5 -9
- package/agentes/frontend-react-swl.md +5 -9
- package/agentes/frontend-swl.md +5 -9
- package/agentes/frontend-tailwind-swl.md +5 -9
- package/agentes/implementador-swl.md +6 -3
- package/agentes/investigador-swl.md +5 -3
- package/agentes/investigador-ux-swl.md +5 -9
- package/agentes/llm-apps-swl.md +5 -3
- package/agentes/migrador-swl.md +6 -3
- package/agentes/mobile-android-swl.md +5 -3
- package/agentes/mobile-cross-swl.md +5 -3
- package/agentes/mobile-ios-swl.md +5 -3
- package/agentes/mobile-testing-swl.md +5 -3
- package/agentes/notificador-swl.md +5 -3
- package/agentes/observabilidad-swl.md +5 -3
- package/agentes/orquestador-swl.md +29 -8
- package/agentes/pagos-swl.md +5 -3
- package/agentes/perfilador-usuario-swl.md +4 -2
- package/agentes/planificador-swl.md +5 -3
- package/agentes/producto-prd-swl.md +5 -3
- package/agentes/red-team-swl.md +4 -2
- package/agentes/release-manager-swl.md +6 -8
- package/agentes/rendimiento-swl.md +5 -6
- package/agentes/resolutor-build-swl.md +5 -3
- package/agentes/revisor-angular-swl.md +5 -3
- package/agentes/revisor-codigo-swl.md +5 -3
- package/agentes/revisor-csharp-swl.md +5 -3
- package/agentes/revisor-go-swl.md +5 -3
- package/agentes/revisor-java-swl.md +5 -3
- package/agentes/revisor-kotlin-swl.md +5 -3
- package/agentes/revisor-nextjs-swl.md +5 -3
- package/agentes/revisor-php-swl.md +5 -3
- package/agentes/revisor-react-swl.md +5 -3
- package/agentes/revisor-rust-swl.md +5 -3
- package/agentes/revisor-seguridad-swl.md +5 -3
- package/agentes/revisor-swift-swl.md +5 -3
- package/agentes/revisor-typescript-swl.md +5 -3
- package/agentes/sre-swl.md +5 -3
- package/agentes/tdd-qa-swl.md +5 -3
- package/agentes/ux-disenador-swl.md +5 -9
- package/bin/swl-ses.js +27 -6
- package/comandos/swl/evaluar-skill.md +18 -0
- package/comandos/swl/evolucion-estado.md +49 -0
- package/comandos/swl/release.md +41 -0
- package/comandos/swl/salud.md +23 -0
- package/hooks/auto-evolucion.js +35 -1
- package/hooks/clasificador-mensajes.js +50 -3
- package/hooks/lib/agent-routing.js +107 -0
- package/hooks/lib/delegation-tracker.js +162 -44
- package/hooks/lib/evolution-tracker.js +12 -3
- package/hooks/lib/memory-search.js +59 -1
- package/hooks/lib/nudge-tracker.js +10 -1
- package/hooks/lib/provenance-tracker.js +11 -3
- package/hooks/lib/text-similarity.js +241 -0
- package/hooks/metricas-evolucion.js +168 -1
- package/hooks/monitor-contexto.js +54 -6
- package/hooks/preservar-estado-pre-compact.js +11 -1
- package/hooks/risk-scoring.js +10 -1
- package/hooks/tracking-costos.js +10 -1
- package/hooks/validar-formato-post-subagente.js +140 -0
- package/hooks/validar-memoria-hook.js +218 -0
- package/manifiestos/agent-output-schemas.json +57 -0
- package/manifiestos/hooks-config.json +18 -0
- package/manifiestos/modulos.json +5 -1
- package/manifiestos/skills-lock.json +1065 -0
- package/package.json +4 -6
- package/plugin.json +1 -1
- package/reglas/arquitectura.md +20 -0
- package/reglas/fragmentos-compartidos.md +152 -0
- package/reglas/gobernanza.md +10 -1
- package/reglas/seguridad-agentes.md +12 -0
- package/reglas/skills-estandar.md +19 -0
- package/reglas/usar-context7.md +226 -0
- package/schemas/agent-frontmatter.schema.json +18 -0
- package/scripts/auditar-agentes-gaps.js +9 -1
- package/scripts/auditar-cobertura-frameworks.js +9 -1
- package/scripts/auditar-skills-gaps.js +9 -1
- package/scripts/bootstrap-instintos.js +11 -1
- package/scripts/generar-inventario.js +112 -9
- package/scripts/generar-matriz-lenguajes.js +271 -0
- package/scripts/generar-skills-lock.js +190 -0
- package/scripts/lib/estado.js +12 -2
- package/scripts/lib/gitignore-manifest.js +32 -2
- package/scripts/lib/semantic-search.js +10 -0
- package/scripts/migrar-csv-a-array.js +168 -0
- package/scripts/migrar-fase-dominio.js +201 -0
- package/scripts/validar-userland-vacio.js +110 -0
package/CLAUDE.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# CLAUDE.md — @saulwade/swl-ses v1.
|
|
1
|
+
# CLAUDE.md — @saulwade/swl-ses v1.1.1
|
|
2
2
|
|
|
3
3
|
## Reglas de máxima prioridad (aplican SIEMPRE, sin excepción)
|
|
4
4
|
|
|
@@ -23,7 +23,7 @@ El Read tool sigue siendo correcto para `.pdf` (≤20 páginas), `.md`, `.txt` y
|
|
|
23
23
|
## Qué es este repositorio
|
|
24
24
|
|
|
25
25
|
Sistema de ingeniería de software auto-evolutivo multi-runtime polyglot (SDLC completo).
|
|
26
|
-
11 lenguajes, 5 runtimes, 59 agentes, 151 skills, 42 comandos,
|
|
26
|
+
11 lenguajes, 5 runtimes, 59 agentes, 151 skills, 42 comandos, 62 reglas, 37 hooks.
|
|
27
27
|
**Idioma**: 100% español (México) para componentes SWL y skills Anthropic en inglés.
|
|
28
28
|
|
|
29
29
|
## Estructura del repositorio
|
|
@@ -87,7 +87,7 @@ scripts/ bin/ _userland/ .claude/ .planning/
|
|
|
87
87
|
| `/swl:contribuir` | Contribuir evoluciones de _userland/ al core vía PR (filtro dominio + PluginEval ≥80) |
|
|
88
88
|
| `/swl:ayuda` | Ayuda interactiva: catálogo, detalle de comando, búsqueda por keyword |
|
|
89
89
|
|
|
90
|
-
## Reglas obligatorias (
|
|
90
|
+
## Reglas obligatorias (22 base + 40 por lenguaje)
|
|
91
91
|
|
|
92
92
|
| Regla | Carga cuando |
|
|
93
93
|
|-------|-------------|
|
|
@@ -107,8 +107,10 @@ scripts/ bin/ _userland/ .claude/ .planning/
|
|
|
107
107
|
| `gobernanza.md` | Proyectos con múltiples contribuidores |
|
|
108
108
|
| `hooks.md` | hooks/, *.hook.js |
|
|
109
109
|
| `markitdown.md` | Lectura de archivos Office/Jupyter |
|
|
110
|
+
| `fragmentos-compartidos.md` | Crear o auditar bloques `agentes/_*.md` o `reglas/_fragmentos/_*.md` reutilizados por ≥3 agentes (tercer tier entre regla y skill, sin overhead runtime) |
|
|
110
111
|
| `patrones.md` | Patrones de diseño y arquitectura |
|
|
111
112
|
| `testing.md` | test*/, *.test.*, *.spec.* |
|
|
113
|
+
| `usar-context7.md` | OBLIGATORIA al generar código que importe librerías/frameworks externos. Aplica a `backend-*-swl`, `frontend-*-swl`, `mobile-*-swl`, `implementador-swl`, `llm-apps-swl`, `pagos-swl`, `datos-swl`. Verifica versión actual y deprecaciones via Context7 MCP antes de agregar deps o generar imports. |
|
|
112
114
|
|
|
113
115
|
Reglas por lenguaje (5 por lenguaje × 8 lenguajes): Java, Go, Rust, C#, Kotlin, Swift, PHP, Next.js — en `reglas/` con subdirectorios.
|
|
114
116
|
|
|
@@ -174,11 +176,12 @@ al que se guía línea por línea. Implicaciones para agentes SWL:
|
|
|
174
176
|
- **Documentación obligatoria**: toda funcionalidad nueva DEBE documentarse en MANUAL_USO.md, COMANDOS.md, CLAUDE.md y README.md ANTES del commit.
|
|
175
177
|
- **Limpieza de registros resueltos**: no dejar items completados en listas de pendientes.
|
|
176
178
|
- **Directorios excluidos de verificación de console.log**: `scripts/`, `bin/`, `hooks/`, `gateway/`.
|
|
177
|
-
- **Variables de entorno opt-in para integraciones enterprise**: hooks con exportación externa (OTLP, webhooks) usan el patrón `if (!process.env.VAR) return` — zero-config por defecto, activos solo cuando la variable está configurada. Nunca requerir configuración para funcionamiento básico. Variables opt-in conocidas: `SWL_GUARDRAIL_MODELO=1` (activa `hooks/guardrail-modelo.js` para observación de degradación de modelo), `SWL_AUDIT_SKILLS=1` (activa `scripts/audit-skills.sh` para auditoría de skills vía snyk-agent-scan), `SWL_AUDIT_FRAMEWORKS=1` (activa `scripts/auditar-cobertura-frameworks.js` en `/swl:salud` paso 5c para reportar cobertura de NIST CSF/AI RMF/MITRE ATLAS/ATT&CK/D3FEND), `SWL_AUDIT_AGENTES=1` (activa `scripts/auditar-agentes-gaps.js` en `/swl:salud` paso 5d para reportar gaps SAP-Agents en los 59 agentes), `SWL_MC_URL` (URL base de Mission Control, ej. `http://localhost:3000` — activa integración opt-in con el dashboard externo, ver `/swl:dashboard`), `SWL_MC_TOKEN` (API key de Mission Control cuando `SWL_MC_URL` está definida), `SWL_AIISMS_GATE=1` (activa gate en `scripts/verificar-release.js` que corre detector Python de AI-isms contra CHANGELOG.md y RELEASE_NOTES.md, bloquea el release si p0_count > 0), `SWL_AIISMS_HOOK=0` (desactiva `hooks/aiisms-detector.js` que se dispara en PostToolUse sobre Write/Edit/MultiEdit de archivos .md y emite nudge si hay AI-ism P0; activo por defecto cuando Python 3.10+ está disponible), `SWL_REPAIR_LOOP_THRESHOLD` (default `3`; umbral de nudges drift-detectado no accionados del mismo par `(metrica, agente)` en ventana de 14 días tras el cual `scripts/lib/drift-detector.js` marca el nudge como `banned: true` para prevenir saturación de `nudges.jsonl`; patrón adaptado de evolver GEP), `SWL_SUGERIR_REGEN_INVENTARIO=0` (silencia `hooks/sugerir-regenerar-inventario.js` que en PostToolUse Write/Edit/MultiEdit sugiere regenerar `INVENTARIO.md` cuando el agente toca `agentes/`, `habilidades/`, `comandos/swl/`, `hooks/` o `reglas/`; activo por defecto con cooldown de 30 min por carpeta).
|
|
179
|
+
- **Variables de entorno opt-in para integraciones enterprise**: hooks con exportación externa (OTLP, webhooks) usan el patrón `if (!process.env.VAR) return` — zero-config por defecto, activos solo cuando la variable está configurada. Nunca requerir configuración para funcionamiento básico. Variables opt-in conocidas: `SWL_GUARDRAIL_MODELO=1` (activa `hooks/guardrail-modelo.js` para observación de degradación de modelo), `SWL_AUDIT_SKILLS=1` (activa `scripts/audit-skills.sh` para auditoría de skills vía snyk-agent-scan), `SWL_AUDIT_FRAMEWORKS=1` (activa `scripts/auditar-cobertura-frameworks.js` en `/swl:salud` paso 5c para reportar cobertura de NIST CSF/AI RMF/MITRE ATLAS/ATT&CK/D3FEND), `SWL_AUDIT_AGENTES=1` (activa `scripts/auditar-agentes-gaps.js` en `/swl:salud` paso 5d para reportar gaps SAP-Agents en los 59 agentes), `SWL_MC_URL` (URL base de Mission Control, ej. `http://localhost:3000` — activa integración opt-in con el dashboard externo, ver `/swl:dashboard`), `SWL_MC_TOKEN` (API key de Mission Control cuando `SWL_MC_URL` está definida), `SWL_AIISMS_GATE=1` (activa gate en `scripts/verificar-release.js` que corre detector Python de AI-isms contra CHANGELOG.md y RELEASE_NOTES.md, bloquea el release si p0_count > 0), `SWL_AIISMS_HOOK=0` (desactiva `hooks/aiisms-detector.js` que se dispara en PostToolUse sobre Write/Edit/MultiEdit de archivos .md y emite nudge si hay AI-ism P0; activo por defecto cuando Python 3.10+ está disponible), `SWL_REPAIR_LOOP_THRESHOLD` (default `3`; umbral de nudges drift-detectado no accionados del mismo par `(metrica, agente)` en ventana de 14 días tras el cual `scripts/lib/drift-detector.js` marca el nudge como `banned: true` para prevenir saturación de `nudges.jsonl`; patrón adaptado de evolver GEP), `SWL_SUGERIR_REGEN_INVENTARIO=0` (silencia `hooks/sugerir-regenerar-inventario.js` que en PostToolUse Write/Edit/MultiEdit sugiere regenerar `INVENTARIO.md` cuando el agente toca `agentes/`, `habilidades/`, `comandos/swl/`, `hooks/` o `reglas/`; activo por defecto con cooldown de 30 min por carpeta), `SWL_FUZZY_CLASIFICADOR=1` (activa fuzzy matching en `hooks/clasificador-mensajes.js` como segunda pasada cuando regex no detecta señales — útil para typos y variantes morfológicas, ej: `docmentacion` → señal DOCUMENTACIÓN; usa `hooks/lib/text-similarity.js` con Levenshtein adaptativo + stem ES; nunca degrada el comportamiento default; costo ~5-15ms por prompt), `SWL_CTX_WARNING` (default `40`; porcentaje de uso de contexto a partir del cual `hooks/monitor-contexto.js` emite WARNING; calibrado con evidencia del issue Anthropic #34685 que documenta degradación detectable ~20-40%; subir a 50-60 si los avisos resultan ruidosos), `SWL_CTX_CRITICAL` (default `55`; porcentaje de uso a partir del cual emite CRITICAL y dispara compresión Fase 1; sweet spot 40-50% según el issue #34685, dejamos margen al 55), `SWL_CTX_PROACTIVA` (default `35`; porcentaje a partir del cual sugiere compactación proactiva en puntos naturales — git commit, tests OK, fin de subagente).
|
|
178
180
|
- **Criterio de dominio para incorporar skills de proyectos usuario**: una habilidad generada en un proyecto swl-ses solo se incorpora al core si su dominio es **ingeniería de software general** (SDLC, backend, frontend, QA, DevOps, seguridad). Skills de dominios externos (ML Ops, Data Science, finanzas, bio-informática, etc.) se descartan aunque estén bien escritas. Pregunta de filtro: *¿le sirve esto a un ingeniero de software en cualquier proyecto de software?*
|
|
179
181
|
- **Filtro primario al analizar repos en `temp/`**: antes de evaluar arquitectura o patrones, verificar **compatibilidad de dominio** con ingeniería de software general. Si el dominio es incompatible (ML productivo, ciencia de datos, dominio vertical específico), veredicto NINGUNA aplicabilidad sin análisis adicional.
|
|
180
182
|
- **JSONL para eventos de alta frecuencia**: usar `fs.appendFileSync(ruta, JSON.stringify(evento) + '\n')` en hooks de telemetría/auditoría — no `atomicWriteJSON` que reescribe el archivo completo. Reservar `atomicWriteJSON` para archivos de estado mutable.
|
|
181
|
-
- **`skillsInvocables` en
|
|
183
|
+
- **`skillsInvocables` requiere `Skill` en `tools:`**: si un agente declara `skillsInvocables: [...]` Y su cuerpo usa `Skill("nombre")` para invocarlas dinámicamente, debe incluir `Skill` en su array `tools:`. Si solo lista skills como metadata/recomendación (sin invocación dinámica en el cuerpo), `Skill` en tools es opcional. La verificación: `grep -c 'Skill(' agentes/X.md` — si el conteo es >0, el agente NECESITA `Skill` en tools. Auditado en v1.1.1: 4 agentes (investigador, perfilador-usuario, planificador, red-team) tenían el bug y fueron corregidos.
|
|
184
|
+
- **`skillsInvocables`, `skillsRestringidos` y `tools` como array YAML inline**: estos tres campos en frontmatter de agentes DEBEN ser array YAML inline (ej: `tools: [Read, Write, Edit]`, `skillsInvocables: [skill-a, skill-b]`). NUNCA usar formato CSV string (causa parser ambiguity y bugs históricos documentados). NUNCA mezclar array inline con lista YAML multilínea (`- item`). Cada valor debe ser un nombre de skill existente en `habilidades/` — nunca nombres de agentes ni skills inexistentes. Verificar con `ls habilidades/ | grep nombre` antes de agregar. Migración masiva ejecutada en v1.1.0 vía `scripts/migrar-csv-a-array.js` (idempotente).
|
|
182
185
|
- **Precedencia de capas del sistema**: Reglas base (`reglas/`) → Reglas por lenguaje (`reglas/{lang}/`) → Skills (`habilidades/`) → Instintos (`instintos/`). Cada capa puede especializar pero NUNCA contradecir las capas superiores. Si hay conflicto, la capa más general (regla base) prevalece. Los instintos solo aplican dentro de su scope (proyecto/dominio/global) y nunca sobreescriben reglas ni skills.
|
|
183
186
|
- **Privilegio mínimo de agentes**: un agente delegado NUNCA excede los permisos declarados en su propio frontmatter (`permisosRed`, `permisosEscritura`, `permisosComandos`, `tools`). La cadena de delegación no escala privilegios: si el agente padre tiene `nivelRiesgo: ALTO` y delega a un agente `BAJO`, el hijo opera con sus restricciones propias. Ver `reglas/seguridad-agentes.md`.
|
|
184
187
|
- **Dependencias externas educativas se marcan como opt-in NO-dependencia**: cuando se documenta un recurso externo de tipo educativo/formativo (guías, MCPs de documentación, plantillas comunitarias como `cc.bruniaux.com`, indexadores externos como GitNexus) en MANUAL_USO.md sección Dependencias externas, marcar explícitamente **"NO es dependencia técnica de swl-ses"** y advertir si sus componentes (slash commands, agentes, hooks) no están coordinados con los del sistema SWL. El sistema debe seguir funcionando sin ese recurso — si un recurso se vuelve necesario para un flujo, deja de ser educativo y requiere ADR. Aplica también a MCPs opcionales, librerías opt-in y herramientas de terceros referenciadas en docs.
|
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# swl-ses v1.
|
|
1
|
+
# swl-ses v1.1.1
|
|
2
2
|
|
|
3
3
|
> El paquete anterior `@saulwadeleon/swl-software-engineering-system` está deprecado. Migrar a `@saulwade/swl-ses` (npmjs.org canónico) o `@saul-wade/swl-ses` (mirror en GitHub Packages) — el CLI `swl-ses` no cambia.
|
|
4
4
|
|
|
@@ -177,7 +177,7 @@ claude
|
|
|
177
177
|
| `mobile` | Android + iOS + React Native/Flutter + UX |
|
|
178
178
|
| `devops` | CI/CD + cloud + observabilidad + releases + seguridad |
|
|
179
179
|
| `polyglot` | Todos los lenguajes: 11 lenguajes + revisores + build resolvers |
|
|
180
|
-
| `completo` | Todo: 59 agentes + 151 habilidades + 42 comandos +
|
|
180
|
+
| `completo` | Todo: 59 agentes + 151 habilidades + 42 comandos + 62 reglas + 37 hooks |
|
|
181
181
|
|
|
182
182
|
### Targets soportados
|
|
183
183
|
|
|
@@ -12,23 +12,21 @@ description: >
|
|
|
12
12
|
se detectan problemas de accesibilidad reportados por usuarios. También invocar
|
|
13
13
|
como segundo revisor de UI-SPEC.md producida por disenador-ui-swl o
|
|
14
14
|
ux-disenador-swl para verificar que las especificaciones son accesibles.
|
|
15
|
-
tools: Read, Grep, Glob, Bash, Write
|
|
15
|
+
tools: [Read, Grep, Glob, Bash, Write]
|
|
16
16
|
model: claude-sonnet-4-6
|
|
17
17
|
modeloAlterno: claude-haiku-4-5-20251001
|
|
18
18
|
ventanaContexto: 200k
|
|
19
19
|
color: indigo
|
|
20
20
|
version: 1.0.0
|
|
21
21
|
nivelRiesgo: BAJO
|
|
22
|
-
skillsInvocables: accesibilidad-a11y, ux-diseno, design-tokens, diseno-responsivo
|
|
23
|
-
skillsRestringidos:
|
|
24
|
-
- fastapi-python
|
|
25
|
-
- django-expert
|
|
26
|
-
- postgresql-table-design
|
|
27
|
-
- python-patterns
|
|
22
|
+
skillsInvocables: [accesibilidad-a11y, ux-diseno, design-tokens, diseno-responsivo]
|
|
23
|
+
skillsRestringidos: [fastapi-python, django-expert, postgresql-table-design, python-patterns]
|
|
28
24
|
permisosRed: false
|
|
29
25
|
permisosEscritura: true
|
|
30
26
|
permisosComandos: true
|
|
31
27
|
evolvable: true # nivelRiesgo=BAJO
|
|
28
|
+
fase: verify
|
|
29
|
+
dominio: ux
|
|
32
30
|
exclusiones:
|
|
33
31
|
- "No invocar para implementar los cambios de accesibilidad identificados — este agente audita y produce reportes; la implementación corresponde al agente de frontend del stack."
|
|
34
32
|
- "No invocar para diseñar la interfaz visual — el diseño corresponde a disenador-ui-swl o ux-disenador-swl; este agente solo revisa que el resultado cumpla WCAG."
|
|
@@ -7,15 +7,15 @@ description: >
|
|
|
7
7
|
problemas de escalabilidad o acoplamiento, o antes de integrar tecnologías
|
|
8
8
|
nuevas. No es el planificador de tareas — su producto son decisiones de diseño
|
|
9
9
|
y contratos de módulos, no specs de implementación.
|
|
10
|
-
tools: Read, Grep, Glob, WebSearch
|
|
10
|
+
tools: [Read, Grep, Glob, WebSearch]
|
|
11
11
|
model: claude-opus-4-7
|
|
12
12
|
modeloAlterno: claude-sonnet-4-6
|
|
13
13
|
ventanaContexto: 200k
|
|
14
14
|
color: blue
|
|
15
15
|
version: 1.0.0
|
|
16
16
|
nivelRiesgo: MEDIO
|
|
17
|
-
skillsInvocables: api-rest-diseno, microservicios, event-driven, cloud-aws, postgresql-experto, extraccion-documentos, diagrama-arquitectura
|
|
18
|
-
skillsRestringidos:
|
|
17
|
+
skillsInvocables: [api-rest-diseno, microservicios, event-driven, cloud-aws, postgresql-experto, extraccion-documentos, diagrama-arquitectura]
|
|
18
|
+
skillsRestringidos: []
|
|
19
19
|
permisosRed: true
|
|
20
20
|
permisosEscritura: false
|
|
21
21
|
permisosComandos: false
|
|
@@ -24,6 +24,8 @@ toolBudget:
|
|
|
24
24
|
standard: 30
|
|
25
25
|
complex: 60
|
|
26
26
|
evolvable: false # nivelRiesgo=MEDIO (conservador)
|
|
27
|
+
fase: plan
|
|
28
|
+
dominio: general
|
|
27
29
|
exclusiones:
|
|
28
30
|
- "No invocar como planificador de tareas — el arquitecto produce decisiones de diseño y ADRs, no specs de implementación; usar planificador-swl para eso."
|
|
29
31
|
- "No invocar para implementar código de producción — el arquitecto no escribe código directo; usar implementador-swl o el agente de stack correspondiente."
|
|
@@ -9,7 +9,7 @@ description: >
|
|
|
9
9
|
nuevo para un rol no cubierto. NO invocar para trabajo de desarrollo de
|
|
10
10
|
aplicaciones — este agente solo modifica el sistema SWL en sí mismo, no el
|
|
11
11
|
proyecto destino del usuario.
|
|
12
|
-
tools: Read, Write, Edit, Grep, Glob, Bash
|
|
12
|
+
tools: [Read, Write, Edit, Grep, Glob, Bash]
|
|
13
13
|
model: claude-opus-4-7
|
|
14
14
|
modeloAlterno: claude-haiku-4-5-20251001
|
|
15
15
|
ventanaContexto: 200k
|
|
@@ -17,20 +17,19 @@ permissionMode: acceptEdits
|
|
|
17
17
|
color: gold
|
|
18
18
|
version: 1.6.0
|
|
19
19
|
nivelRiesgo: ALTO
|
|
20
|
-
skillsInvocables: auto-evolucion-protocolo, aprendizaje-continuo, validacion-ci-sistema, extractor-de-aprendizajes, autoresearch, evaluacion-agentes, seguridad-skills-ia
|
|
21
|
-
skillsRestringidos:
|
|
22
|
-
- fastapi-python
|
|
23
|
-
- angular-component
|
|
24
|
-
- django-expert
|
|
25
|
-
- postgresql-table-design
|
|
20
|
+
skillsInvocables: [auto-evolucion-protocolo, aprendizaje-continuo, validacion-ci-sistema, extractor-de-aprendizajes, autoresearch, evaluacion-agentes, seguridad-skills-ia]
|
|
21
|
+
skillsRestringidos: [fastapi-python, angular-component, django-expert, postgresql-table-design]
|
|
26
22
|
permisosRed: false
|
|
27
23
|
permisosEscritura: true
|
|
28
24
|
permisosComandos: true
|
|
25
|
+
maxTurnos: 20 # gates G1-G8 con reintentos; ciclos análisis→propuesta→validación
|
|
29
26
|
evolvable: false # bloqueado por lista (función sistémica)
|
|
27
|
+
fase: learn
|
|
28
|
+
dominio: meta
|
|
30
29
|
exclusiones:
|
|
31
30
|
- "No invocar para trabajo de desarrollo de aplicaciones de usuario — este agente solo modifica el sistema SWL en sí mismo, no el proyecto destino."
|
|
32
31
|
- "No invocar para corregir un bug puntual en código de aplicación — ese trabajo corresponde a depurador-swl o implementador-swl."
|
|
33
|
-
- "No invocar sin aprobación explícita del usuario cuando la evolución propuesta modifica agentes kernel (orquestador, revisor-seguridad, red-team, auto-evolucion) — esos cambios requieren ADR previo."
|
|
32
|
+
- "No invocar sin aprobación explícita del usuario cuando la evolución propuesta modifica agentes kernel (orquestador-swl, revisor-seguridad-swl, red-team-swl, auto-evolucion-swl) — esos cambios requieren ADR previo."
|
|
34
33
|
---
|
|
35
34
|
Eres el agente de auto-evolución del sistema SWL. Tu trabajo es hacer que los
|
|
36
35
|
agentes y skills sean mejores con el tiempo, basándote en evidencia de lo que
|
|
@@ -41,10 +40,7 @@ de ingeniería.
|
|
|
41
40
|
|
|
42
41
|
- Para trabajo de desarrollo de aplicaciones de usuario: este agente solo modifica el sistema SWL en sí mismo, no el proyecto destino.
|
|
43
42
|
- Para corregir un bug puntual en código de aplicación — ese trabajo corresponde a `depurador-swl` o `implementador-swl`.
|
|
44
|
-
- Sin aprobación explícita del usuario cuando la evolución propuesta modifica agentes kernel (`orquestador-swl`, `revisor-seguridad-swl`, `red-team-swl`): esos cambios requieren ADR previo.
|
|
45
|
-
agentes y skills sean mejores con el tiempo, basándote en evidencia de lo que
|
|
46
|
-
funciona y lo que no. Eres un meta-ingeniero: tu producto es el propio sistema
|
|
47
|
-
de ingeniería.
|
|
43
|
+
- Sin aprobación explícita del usuario cuando la evolución propuesta modifica agentes kernel (`orquestador-swl`, `revisor-seguridad-swl`, `red-team-swl`, `auto-evolucion-swl`): esos cambios requieren ADR previo.
|
|
48
44
|
|
|
49
45
|
Operas con cautela extrema: los agentes y skills que modificas afectan a TODOS
|
|
50
46
|
los proyectos que usen el sistema SWL. Un error aquí tiene alcance sistémico.
|
|
@@ -598,6 +594,7 @@ falla, requiere aprobación humana.
|
|
|
598
594
|
| **G5: Health score del sistema** | `/swl:evolucion-estado` reporta `health_score >= 80` | Sin métricas sanas, el ciclo no es confiable |
|
|
599
595
|
| **G6: Alertas persistentes** | `alertas_activas.length === 0` | Si hay alertas, resolver primero |
|
|
600
596
|
| **G7: Cambio minor** | La modificación no cambia MAJOR version, no elimina skillsInvocables, no reduce `tools:`, no toca frontmatter de seguridad, no elimina campos propios SWL (`exclusiones`, `herramientasPermitidas`, `invariantes`), no agrega campos en inglés cuando existe el equivalente en español (verificar con `scripts/lib/skill-normalizer.js`) | Los cambios mayores siempre son humanos |
|
|
597
|
+
| **G8: Evidencia de calidad** (skills/agentes nuevos en `_userland/` solamente) | Si la operación crea o promueve un skill desde `_userland/plugins/` a `habilidades/`, ejecutar `/swl:evaluar-skill <target>` y exigir badge ≥ **Plata** (score ≥ 70). Skills con badge Bronce o sin badge NO se promueven al core. Cumple ADR 0013 sección 3C. | Cierra el ciclo de auto-evolución: solo skills con evidencia medible de calidad pasan a core, evita drift por skills auto-generados sin validación |
|
|
601
598
|
|
|
602
599
|
### Flujo autónomo (si los 7 gates pasan)
|
|
603
600
|
|
|
@@ -635,6 +632,39 @@ El modo autónomo se activa **solo** cuando:
|
|
|
635
632
|
```
|
|
636
633
|
(Default: `false`. El usuario debe activarlo.)
|
|
637
634
|
|
|
635
|
+
### Gate G8 — Promoción de skills desde `_userland/` (detalle)
|
|
636
|
+
|
|
637
|
+
Cuando este agente crea un skill nuevo, lo deposita en `_userland/plugins/`
|
|
638
|
+
como período de prueba (regla `gobernanza.md` línea 30). La promoción al core
|
|
639
|
+
(`habilidades/`) requiere demostrar calidad medible vía `/swl:evaluar-skill`.
|
|
640
|
+
|
|
641
|
+
**Flujo obligatorio de promoción**:
|
|
642
|
+
|
|
643
|
+
```
|
|
644
|
+
1. Skill vive en _userland/plugins/<dominio>/<nombre>/SKILL.md
|
|
645
|
+
2. Ejecutar: /swl:evaluar-skill <nombre> (sin --agente)
|
|
646
|
+
3. Leer reporte: ¿badge asignado?
|
|
647
|
+
- Platino (≥90) → promover sin más
|
|
648
|
+
- Oro (≥80) → promover sin más
|
|
649
|
+
- Plata (≥70) → promover, dejar nota en CHANGELOG: "promovido con badge Plata, mejorar en próxima evolución"
|
|
650
|
+
- Bronce (≥60) → NO promover. Devolver a _userland/ con feedback de qué dimensiones bajan el score.
|
|
651
|
+
- Sin badge (<60)→ NO promover. Documentar en .planning/evolucion/promociones-rechazadas.jsonl
|
|
652
|
+
4. Si badge ≥ Plata: mover archivo a habilidades/<nombre>/SKILL.md, registrar
|
|
653
|
+
en manifiestos/modulos.json, actualizar INVENTARIO.md.
|
|
654
|
+
5. Registrar evento en evoluciones.jsonl con tipo: "promocion-skill" y score.
|
|
655
|
+
```
|
|
656
|
+
|
|
657
|
+
**Bloqueo automático**: este flujo ES un gate. Si el badge es Bronce o
|
|
658
|
+
inferior, el agente NO ejecuta la promoción aunque G1-G7 hayan pasado. El
|
|
659
|
+
gate G8 es independiente y se evalúa después de G7.
|
|
660
|
+
|
|
661
|
+
**Auditoría**: el contador `promociones_rechazadas_consecutivas` por skill
|
|
662
|
+
indica que el auto-generador necesita revisión. Si un skill se rechaza ≥3
|
|
663
|
+
veces, escalar al usuario con análisis de las dimensiones que bajan el score.
|
|
664
|
+
|
|
665
|
+
**Origen**: ADR 0013 sección 3C (mayo 2026) — cierra el ciclo de
|
|
666
|
+
auto-evolución: solo skills con evidencia medible pasan al core.
|
|
667
|
+
|
|
638
668
|
### Qué NUNCA es autónomo
|
|
639
669
|
|
|
640
670
|
Independientemente de los gates:
|
|
@@ -12,7 +12,7 @@ description: >
|
|
|
12
12
|
usar WebSearch para consultar estándares RFC, especificaciones GraphQL y mejores
|
|
13
13
|
prácticas actualizadas de la industria. nivelRiesgo bajo porque solo diseña y
|
|
14
14
|
valida — no modifica código de producción directamente.
|
|
15
|
-
tools: Read, Write, Edit, Bash, Grep, Glob, Skill, WebSearch
|
|
15
|
+
tools: [Read, Write, Edit, Bash, Grep, Glob, Skill, WebSearch]
|
|
16
16
|
model: claude-sonnet-4-6
|
|
17
17
|
modeloAlterno: claude-haiku-4-5-20251001
|
|
18
18
|
ventanaContexto: 200k
|
|
@@ -20,8 +20,8 @@ permissionMode: plan
|
|
|
20
20
|
color: blue
|
|
21
21
|
version: 1.0.0
|
|
22
22
|
nivelRiesgo: BAJO
|
|
23
|
-
skillsInvocables: api-rest-diseno, auth-patrones, manejo-errores, claude-api
|
|
24
|
-
skillsRestringidos: auto-evolucion-protocolo
|
|
23
|
+
skillsInvocables: [api-rest-diseno, auth-patrones, manejo-errores, claude-api]
|
|
24
|
+
skillsRestringidos: [auto-evolucion-protocolo]
|
|
25
25
|
permisosRed: true
|
|
26
26
|
permisosEscritura: false
|
|
27
27
|
permisosComandos: false
|
|
@@ -30,6 +30,8 @@ toolBudget:
|
|
|
30
30
|
standard: 30
|
|
31
31
|
complex: 60
|
|
32
32
|
evolvable: true # nivelRiesgo=BAJO
|
|
33
|
+
fase: implement
|
|
34
|
+
dominio: backend
|
|
33
35
|
exclusiones:
|
|
34
36
|
- "No invocar para implementación concreta de código — este agente diseña y especifica; la implementación corresponde a implementador-swl, backend-python-swl o backend-node-swl."
|
|
35
37
|
- "No invocar para diseño de bases de datos o schemas ORM — ese trabajo corresponde a datos-swl o backend-*-swl."
|
|
@@ -4,7 +4,7 @@ description: >
|
|
|
4
4
|
Especialista en desarrollo backend C# con ASP.NET Core, EF Core y .NET 8+.
|
|
5
5
|
Invocar cuando se necesite implementar APIs con Minimal APIs o Controllers,
|
|
6
6
|
entidades EF Core, servicios con DI, o Background Services. NO invocar para frontend ni mobile.
|
|
7
|
-
tools: Read, Write, Edit, Bash, Grep, Glob, Skill
|
|
7
|
+
tools: [Read, Write, Edit, Bash, Grep, Glob, Skill]
|
|
8
8
|
model: claude-sonnet-4-6
|
|
9
9
|
modeloAlterno: claude-opus-4-7
|
|
10
10
|
ventanaContexto: 200k
|
|
@@ -12,8 +12,8 @@ permissionMode: acceptEdits
|
|
|
12
12
|
color: purple
|
|
13
13
|
version: 1.0.0
|
|
14
14
|
nivelRiesgo: MEDIO
|
|
15
|
-
skillsInvocables: csharp-experto, csharp-testing, csharp-patrones, build-errors-csharp, api-rest-diseno, manejo-errores
|
|
16
|
-
skillsRestringidos: angular-moderno, react-experto, mobile-flutter
|
|
15
|
+
skillsInvocables: [csharp-experto, csharp-testing, csharp-patrones, build-errors-csharp, api-rest-diseno, manejo-errores]
|
|
16
|
+
skillsRestringidos: [angular-moderno, react-experto, mobile-flutter]
|
|
17
17
|
permisosRed: false
|
|
18
18
|
permisosEscritura: true
|
|
19
19
|
permisosComandos: true
|
|
@@ -28,6 +28,8 @@ invariantes:
|
|
|
28
28
|
operador: eq
|
|
29
29
|
valor: MEDIO
|
|
30
30
|
razon: Este agente no debe escalar riesgo sin ADR explicito.
|
|
31
|
+
fase: implement
|
|
32
|
+
dominio: backend
|
|
31
33
|
exclusiones:
|
|
32
34
|
- "No invocar para frontend ni mobile — eso corresponde a frontend-*-swl o mobile-*-swl."
|
|
33
35
|
- "No invocar para Python, Node.js, Java, Go o Rust — usar el agente de stack especializado correspondiente."
|
|
@@ -4,7 +4,7 @@ description: >
|
|
|
4
4
|
Especialista en desarrollo backend Go con net/http, chi/gin, GORM/sqlx y módulos.
|
|
5
5
|
Invocar cuando se necesite implementar APIs REST en Go, handlers HTTP, middlewares,
|
|
6
6
|
o servicios con concurrencia. NO invocar para frontend ni mobile.
|
|
7
|
-
tools: Read, Write, Edit, Bash, Grep, Glob, Skill
|
|
7
|
+
tools: [Read, Write, Edit, Bash, Grep, Glob, Skill]
|
|
8
8
|
model: claude-sonnet-4-6
|
|
9
9
|
modeloAlterno: claude-opus-4-7
|
|
10
10
|
ventanaContexto: 200k
|
|
@@ -12,8 +12,8 @@ permissionMode: acceptEdits
|
|
|
12
12
|
color: blue
|
|
13
13
|
version: 1.0.0
|
|
14
14
|
nivelRiesgo: MEDIO
|
|
15
|
-
skillsInvocables: go-experto, go-testing, go-patrones, build-errors-go, api-rest-diseno, manejo-errores
|
|
16
|
-
skillsRestringidos: angular-moderno, react-experto, mobile-flutter
|
|
15
|
+
skillsInvocables: [go-experto, go-testing, go-patrones, build-errors-go, api-rest-diseno, manejo-errores]
|
|
16
|
+
skillsRestringidos: [angular-moderno, react-experto, mobile-flutter]
|
|
17
17
|
permisosRed: false
|
|
18
18
|
permisosEscritura: true
|
|
19
19
|
permisosComandos: true
|
|
@@ -28,6 +28,8 @@ invariantes:
|
|
|
28
28
|
operador: eq
|
|
29
29
|
valor: MEDIO
|
|
30
30
|
razon: Este agente no debe escalar riesgo sin ADR explicito.
|
|
31
|
+
fase: implement
|
|
32
|
+
dominio: backend
|
|
31
33
|
exclusiones:
|
|
32
34
|
- "No invocar para frontend ni mobile — eso corresponde a frontend-*-swl o mobile-*-swl."
|
|
33
35
|
- "No invocar para Python, Node.js, Java, Rust o C# — usar el agente de stack especializado correspondiente."
|
|
@@ -4,7 +4,7 @@ description: >
|
|
|
4
4
|
Especialista en desarrollo backend Java con Spring Boot, JPA/Hibernate y Maven/Gradle.
|
|
5
5
|
Invocar cuando se necesite implementar APIs REST con Spring, entidades JPA, servicios
|
|
6
6
|
transaccionales, o configuración de Spring Boot. NO invocar para frontend ni mobile.
|
|
7
|
-
tools: Read, Write, Edit, Bash, Grep, Glob, Skill
|
|
7
|
+
tools: [Read, Write, Edit, Bash, Grep, Glob, Skill]
|
|
8
8
|
model: claude-sonnet-4-6
|
|
9
9
|
modeloAlterno: claude-opus-4-7
|
|
10
10
|
ventanaContexto: 200k
|
|
@@ -12,8 +12,8 @@ permissionMode: acceptEdits
|
|
|
12
12
|
color: cyan
|
|
13
13
|
version: 1.0.0
|
|
14
14
|
nivelRiesgo: MEDIO
|
|
15
|
-
skillsInvocables: java-experto, java-testing, java-patrones, build-errors-java, api-rest-diseno, manejo-errores
|
|
16
|
-
skillsRestringidos: angular-moderno, react-experto, mobile-flutter
|
|
15
|
+
skillsInvocables: [java-experto, java-testing, java-patrones, build-errors-java, api-rest-diseno, manejo-errores]
|
|
16
|
+
skillsRestringidos: [angular-moderno, react-experto, mobile-flutter]
|
|
17
17
|
permisosRed: false
|
|
18
18
|
permisosEscritura: true
|
|
19
19
|
permisosComandos: true
|
|
@@ -28,6 +28,8 @@ invariantes:
|
|
|
28
28
|
operador: eq
|
|
29
29
|
valor: MEDIO
|
|
30
30
|
razon: Este agente no debe escalar riesgo sin ADR explicito.
|
|
31
|
+
fase: implement
|
|
32
|
+
dominio: backend
|
|
31
33
|
exclusiones:
|
|
32
34
|
- "No invocar para frontend ni mobile — eso corresponde a frontend-*-swl o mobile-*-swl."
|
|
33
35
|
- "No invocar para Python, Node.js, Go, Rust o C# — usar el agente de stack especializado correspondiente."
|
|
@@ -10,7 +10,7 @@ description: >
|
|
|
10
10
|
para lógica de frontend ni para servicios Python — esos corresponden a
|
|
11
11
|
frontend-swl e implementador-swl respectivamente. Siempre carga el skill
|
|
12
12
|
typescript-avanzado antes de escribir la primera línea.
|
|
13
|
-
tools: Read, Write, Edit, Bash, Grep, Glob, Skill
|
|
13
|
+
tools: [Read, Write, Edit, Bash, Grep, Glob, Skill]
|
|
14
14
|
model: claude-sonnet-4-6
|
|
15
15
|
modeloAlterno: claude-haiku-4-5-20251001
|
|
16
16
|
ventanaContexto: 200k
|
|
@@ -18,8 +18,8 @@ permissionMode: acceptEdits
|
|
|
18
18
|
color: green
|
|
19
19
|
version: 1.0.0
|
|
20
20
|
nivelRiesgo: MEDIO
|
|
21
|
-
skillsInvocables: typescript-avanzado, api-rest-diseno, manejo-errores, auth-patrones, testing-python, claude-api, mcp-builder, nestjs-experto, graphql-experto
|
|
22
|
-
skillsRestringidos: django-experto, fastapi-experto, angular-moderno
|
|
21
|
+
skillsInvocables: [typescript-avanzado, api-rest-diseno, manejo-errores, auth-patrones, testing-python, claude-api, mcp-builder, nestjs-experto, graphql-experto]
|
|
22
|
+
skillsRestringidos: [django-experto, fastapi-experto, angular-moderno]
|
|
23
23
|
permisosRed: false
|
|
24
24
|
permisosEscritura: true
|
|
25
25
|
permisosComandos: true
|
|
@@ -34,6 +34,8 @@ invariantes:
|
|
|
34
34
|
operador: eq
|
|
35
35
|
valor: MEDIO
|
|
36
36
|
razon: Este agente no debe escalar riesgo sin ADR explicito.
|
|
37
|
+
fase: implement
|
|
38
|
+
dominio: backend
|
|
37
39
|
exclusiones:
|
|
38
40
|
- "No invocar para lógica de frontend ni componentes de UI — ese trabajo corresponde a frontend-swl, frontend-react-swl o frontend-angular-swl."
|
|
39
41
|
- "No invocar para servicios Python — usar backend-python-swl que tiene mayor profundidad en FastAPI, Django y async Python."
|
|
@@ -10,7 +10,7 @@ description: >
|
|
|
10
10
|
caching y connection pooling. Invocar también para auditar performance de código
|
|
11
11
|
Python existente o diseñar la estrategia de testing avanzada con factories y
|
|
12
12
|
mocks. NO invocar para frontend, infraestructura o Node.js.
|
|
13
|
-
tools: Read, Write, Edit, Bash, Grep, Glob, Skill
|
|
13
|
+
tools: [Read, Write, Edit, Bash, Grep, Glob, Skill]
|
|
14
14
|
model: claude-sonnet-4-6
|
|
15
15
|
modeloAlterno: claude-haiku-4-5-20251001
|
|
16
16
|
ventanaContexto: 200k
|
|
@@ -18,8 +18,8 @@ permissionMode: acceptEdits
|
|
|
18
18
|
color: yellow
|
|
19
19
|
version: 1.1.0
|
|
20
20
|
nivelRiesgo: MEDIO
|
|
21
|
-
skillsInvocables: fastapi-experto, django-experto, patrones-python, async-python, testing-python, postgresql-experto, sql-optimizacion, manejo-errores
|
|
22
|
-
skillsRestringidos: angular-moderno, typescript-avanzado, react-native-best-practices
|
|
21
|
+
skillsInvocables: [fastapi-experto, django-experto, patrones-python, async-python, testing-python, postgresql-experto, sql-optimizacion, manejo-errores]
|
|
22
|
+
skillsRestringidos: [angular-moderno, typescript-avanzado, react-native-best-practices]
|
|
23
23
|
permisosRed: false
|
|
24
24
|
permisosEscritura: true
|
|
25
25
|
permisosComandos: true
|
|
@@ -39,6 +39,8 @@ invariantes:
|
|
|
39
39
|
operador: eq
|
|
40
40
|
valor: MEDIO
|
|
41
41
|
razon: Este agente no debe escalar riesgo sin ADR explicito.
|
|
42
|
+
fase: implement
|
|
43
|
+
dominio: backend
|
|
42
44
|
exclusiones:
|
|
43
45
|
- "No invocar para frontend, Angular, React o CSS — esos trabajos corresponden a frontend-*-swl."
|
|
44
46
|
- "No invocar para infraestructura, CI/CD o Kubernetes — usar devops-ci-swl o cloud-infra-swl."
|
|
@@ -4,7 +4,7 @@ description: >
|
|
|
4
4
|
Especialista en desarrollo backend Rust con Axum/Actix-web, SQLx, Tokio y serde.
|
|
5
5
|
Invocar cuando se necesite implementar APIs HTTP en Rust, servicios con async,
|
|
6
6
|
o lógica de sistemas. NO invocar para frontend ni mobile.
|
|
7
|
-
tools: Read, Write, Edit, Bash, Grep, Glob, Skill
|
|
7
|
+
tools: [Read, Write, Edit, Bash, Grep, Glob, Skill]
|
|
8
8
|
model: claude-sonnet-4-6
|
|
9
9
|
modeloAlterno: claude-opus-4-7
|
|
10
10
|
ventanaContexto: 200k
|
|
@@ -12,8 +12,8 @@ permissionMode: acceptEdits
|
|
|
12
12
|
color: orange
|
|
13
13
|
version: 1.0.0
|
|
14
14
|
nivelRiesgo: MEDIO
|
|
15
|
-
skillsInvocables: rust-experto, rust-testing, rust-patrones, build-errors-rust, api-rest-diseno, manejo-errores
|
|
16
|
-
skillsRestringidos: angular-moderno, react-experto, mobile-flutter
|
|
15
|
+
skillsInvocables: [rust-experto, rust-testing, rust-patrones, build-errors-rust, api-rest-diseno, manejo-errores]
|
|
16
|
+
skillsRestringidos: [angular-moderno, react-experto, mobile-flutter]
|
|
17
17
|
permisosRed: false
|
|
18
18
|
permisosEscritura: true
|
|
19
19
|
permisosComandos: true
|
|
@@ -28,6 +28,8 @@ invariantes:
|
|
|
28
28
|
operador: eq
|
|
29
29
|
valor: MEDIO
|
|
30
30
|
razon: Este agente no debe escalar riesgo sin ADR explicito.
|
|
31
|
+
fase: implement
|
|
32
|
+
dominio: backend
|
|
31
33
|
exclusiones:
|
|
32
34
|
- "No invocar para frontend ni mobile — eso corresponde a frontend-*-swl o mobile-*-swl."
|
|
33
35
|
- "No invocar para Python, Node.js, Java, Go o C# — usar el agente de stack especializado correspondiente."
|
|
@@ -11,7 +11,7 @@ description: >
|
|
|
11
11
|
ni para componentes frontend — esos corresponden a backend-api-swl y
|
|
12
12
|
frontend-swl. Invocar junto con backend-python-swl o backend-node-swl para
|
|
13
13
|
la implementación concreta según el stack del proyecto.
|
|
14
|
-
tools: Read, Write, Edit, Bash, Grep, Glob, Skill
|
|
14
|
+
tools: [Read, Write, Edit, Bash, Grep, Glob, Skill]
|
|
15
15
|
model: claude-sonnet-4-6
|
|
16
16
|
modeloAlterno: claude-haiku-4-5-20251001
|
|
17
17
|
ventanaContexto: 200k
|
|
@@ -19,8 +19,8 @@ permissionMode: acceptEdits
|
|
|
19
19
|
color: orange
|
|
20
20
|
version: 1.0.0
|
|
21
21
|
nivelRiesgo: MEDIO
|
|
22
|
-
skillsInvocables: async-python, event-driven, monitoring-alertas, manejo-errores
|
|
23
|
-
skillsRestringidos: angular-moderno, frontend-design, typescript-avanzado
|
|
22
|
+
skillsInvocables: [async-python, event-driven, monitoring-alertas, manejo-errores]
|
|
23
|
+
skillsRestringidos: [angular-moderno, frontend-design, typescript-avanzado]
|
|
24
24
|
permisosRed: false
|
|
25
25
|
permisosEscritura: true
|
|
26
26
|
permisosComandos: true
|
|
@@ -35,6 +35,8 @@ invariantes:
|
|
|
35
35
|
operador: eq
|
|
36
36
|
valor: MEDIO
|
|
37
37
|
razon: Este agente no debe escalar riesgo sin ADR explicito.
|
|
38
|
+
fase: implement
|
|
39
|
+
dominio: backend
|
|
38
40
|
exclusiones:
|
|
39
41
|
- "No invocar para APIs síncronas ni endpoints REST — ese trabajo corresponde a backend-api-swl o backend-*-swl."
|
|
40
42
|
- "No invocar para componentes frontend — ese trabajo corresponde a frontend-swl o frontend-*-swl."
|
|
@@ -10,7 +10,7 @@ description: >
|
|
|
10
10
|
cuando se necesita diseñar una estrategia de DR, o al evaluar servicios
|
|
11
11
|
managed versus self-hosted. No invocar para debugging de código de aplicación
|
|
12
12
|
(usar depurador-swl), ni para configurar pipelines CI/CD (usar devops-ci-swl).
|
|
13
|
-
tools: Read, Write, Edit, Bash, Grep, Glob, WebSearch
|
|
13
|
+
tools: [Read, Write, Edit, Bash, Grep, Glob, WebSearch]
|
|
14
14
|
model: claude-sonnet-4-6
|
|
15
15
|
modeloAlterno: claude-haiku-4-5-20251001
|
|
16
16
|
ventanaContexto: 200k
|
|
@@ -18,15 +18,14 @@ permissionMode: acceptEdits
|
|
|
18
18
|
color: orange
|
|
19
19
|
version: 1.0.0
|
|
20
20
|
nivelRiesgo: ALTO
|
|
21
|
-
skillsInvocables: cloud-aws, contenedores-docker, kubernetes-orquestacion, ci-cd-pipelines, iam-secretos, azure-cloud, gcp-cloud, terraform-experto
|
|
22
|
-
skillsRestringidos:
|
|
23
|
-
- angular-component
|
|
24
|
-
- angular-forms
|
|
25
|
-
- angular-signals
|
|
21
|
+
skillsInvocables: [cloud-aws, contenedores-docker, kubernetes-orquestacion, ci-cd-pipelines, iam-secretos, azure-cloud, gcp-cloud, terraform-experto]
|
|
22
|
+
skillsRestringidos: [angular-component, angular-forms, angular-signals]
|
|
26
23
|
permisosRed: true
|
|
27
24
|
permisosEscritura: true
|
|
28
25
|
permisosComandos: true
|
|
29
26
|
evolvable: false # nivelRiesgo=ALTO
|
|
27
|
+
fase: release
|
|
28
|
+
dominio: infra
|
|
30
29
|
exclusiones:
|
|
31
30
|
- "No invocar para debugging de código de aplicación — usar depurador-swl."
|
|
32
31
|
- "No invocar para configurar pipelines CI/CD — usar devops-ci-swl."
|
|
@@ -6,7 +6,7 @@ description: >
|
|
|
6
6
|
patrones validados y convenciones emergentes. Invocar como ÚLTIMO paso del flujo
|
|
7
7
|
de trabajo, después de que el revisor-codigo-swl o tdd-qa-swl aprueben el trabajo.
|
|
8
8
|
NO invocar a mitad de sesión ni antes de verificar calidad.
|
|
9
|
-
tools: Read, Write, Edit, Grep, Glob
|
|
9
|
+
tools: [Read, Write, Edit, Grep, Glob]
|
|
10
10
|
model: claude-sonnet-4-6
|
|
11
11
|
modeloAlterno: claude-haiku-4-5-20251001
|
|
12
12
|
ventanaContexto: 200k
|
|
@@ -14,8 +14,8 @@ permissionMode: acceptEdits
|
|
|
14
14
|
color: silver
|
|
15
15
|
version: 1.0.0
|
|
16
16
|
nivelRiesgo: MEDIO
|
|
17
|
-
skillsInvocables: extractor-de-aprendizajes, auto-evolucion-protocolo, checklist-calidad, memoria-busqueda, privacy-memoria, wiki-conocimiento
|
|
18
|
-
skillsRestringidos:
|
|
17
|
+
skillsInvocables: [extractor-de-aprendizajes, auto-evolucion-protocolo, checklist-calidad, memoria-busqueda, privacy-memoria, wiki-conocimiento]
|
|
18
|
+
skillsRestringidos: []
|
|
19
19
|
permisosRed: false
|
|
20
20
|
permisosEscritura: true
|
|
21
21
|
permisosComandos: false
|
|
@@ -24,6 +24,8 @@ toolBudget:
|
|
|
24
24
|
standard: 30
|
|
25
25
|
complex: 60
|
|
26
26
|
evolvable: false # nivelRiesgo=MEDIO (conservador)
|
|
27
|
+
fase: learn
|
|
28
|
+
dominio: meta
|
|
27
29
|
exclusiones:
|
|
28
30
|
- "No invocar a mitad de sesión ni antes de que revisor-codigo-swl o tdd-qa-swl aprueben el trabajo — la consolidación requiere calidad verificada."
|
|
29
31
|
- "No invocar para generar documentación técnica de features (runbooks, guías de integración) — ese trabajo corresponde a documentador-swl."
|
package/agentes/datos-swl.md
CHANGED
|
@@ -10,7 +10,7 @@ description: >
|
|
|
10
10
|
existentes, o cuando se diseña una capa de datos para reporting/BI. No
|
|
11
11
|
invocar para CRUD estándar de aplicación (usar implementador-swl), ni para
|
|
12
12
|
configurar infraestructura cloud (usar cloud-infra-swl).
|
|
13
|
-
tools: Read, Write, Edit, Bash, Grep, Glob, Skill
|
|
13
|
+
tools: [Read, Write, Edit, Bash, Grep, Glob, Skill]
|
|
14
14
|
model: claude-sonnet-4-6
|
|
15
15
|
modeloAlterno: claude-haiku-4-5-20251001
|
|
16
16
|
ventanaContexto: 200k
|
|
@@ -18,16 +18,14 @@ permissionMode: acceptEdits
|
|
|
18
18
|
color: teal
|
|
19
19
|
version: 1.0.0
|
|
20
20
|
nivelRiesgo: ALTO
|
|
21
|
-
skillsInvocables: datos-etl, postgresql-experto, sql-optimizacion, patrones-python, redis-experto, mongodb-experto, tracking-measurement, paid-media-tracking
|
|
22
|
-
skillsRestringidos:
|
|
23
|
-
- angular-component
|
|
24
|
-
- angular-forms
|
|
25
|
-
- angular-signals
|
|
26
|
-
- auth-implementation-patterns
|
|
21
|
+
skillsInvocables: [datos-etl, postgresql-experto, sql-optimizacion, patrones-python, redis-experto, mongodb-experto, tracking-measurement, paid-media-tracking]
|
|
22
|
+
skillsRestringidos: [angular-component, angular-forms, angular-signals, auth-implementation-patterns]
|
|
27
23
|
permisosRed: false
|
|
28
24
|
permisosEscritura: true
|
|
29
25
|
permisosComandos: true
|
|
30
26
|
evolvable: false # nivelRiesgo=ALTO
|
|
27
|
+
fase: implement
|
|
28
|
+
dominio: data
|
|
31
29
|
exclusiones:
|
|
32
30
|
- "No invocar para CRUD estándar de aplicación — usar implementador-swl o backend-python-swl para eso."
|
|
33
31
|
- "No invocar para configurar infraestructura cloud — ese trabajo corresponde a cloud-infra-swl."
|
package/agentes/depurador-swl.md
CHANGED
|
@@ -6,7 +6,7 @@ description: >
|
|
|
6
6
|
reportado con síntomas concretos, un error en producción con stack trace, o
|
|
7
7
|
cuando el desarrollador encuentra un comportamiento inesperado que no puede
|
|
8
8
|
explicar. No invocar para preguntas generales de arquitectura — usar planificador-swl.
|
|
9
|
-
tools: Read, Write, Edit, Bash, Grep, Glob
|
|
9
|
+
tools: [Read, Write, Edit, Bash, Grep, Glob]
|
|
10
10
|
model: claude-sonnet-4-6
|
|
11
11
|
permissionMode: acceptEdits
|
|
12
12
|
modeloAlterno: claude-haiku-4-5-20251001
|
|
@@ -14,8 +14,8 @@ ventanaContexto: 200k
|
|
|
14
14
|
color: red
|
|
15
15
|
version: 1.0.0
|
|
16
16
|
nivelRiesgo: MEDIO
|
|
17
|
-
skillsInvocables: patrones-python, fastapi-experto, async-python, manejo-errores, testing-python
|
|
18
|
-
skillsRestringidos:
|
|
17
|
+
skillsInvocables: [patrones-python, fastapi-experto, async-python, manejo-errores, testing-python]
|
|
18
|
+
skillsRestringidos: []
|
|
19
19
|
permisosRed: false
|
|
20
20
|
permisosEscritura: true
|
|
21
21
|
permisosComandos: true
|
|
@@ -23,6 +23,7 @@ toolBudget:
|
|
|
23
23
|
simple: 15
|
|
24
24
|
standard: 30
|
|
25
25
|
complex: 60
|
|
26
|
+
maxTurnos: 12 # método científico iterativo: reproducir → hipótesis → prueba → confirmar
|
|
26
27
|
evolvable: true
|
|
27
28
|
evolvable_scope: [description, examples, instructions]
|
|
28
29
|
invariantes:
|
|
@@ -30,6 +31,8 @@ invariantes:
|
|
|
30
31
|
operador: eq
|
|
31
32
|
valor: MEDIO
|
|
32
33
|
razon: Este agente no debe escalar riesgo sin ADR explicito.
|
|
34
|
+
fase: implement
|
|
35
|
+
dominio: general
|
|
33
36
|
exclusiones:
|
|
34
37
|
- "No invocar para implementar features nuevas — este agente diagnostica y corrige bugs, no construye funcionalidad nueva."
|
|
35
38
|
- "No invocar para errores de build o compilación — ese trabajo corresponde a resolutor-build-swl."
|
package/agentes/devops-ci-swl.md
CHANGED
|
@@ -7,19 +7,21 @@ description: >
|
|
|
7
7
|
nuevo, optimizar uno existente que es lento o inestable, preparar una release,
|
|
8
8
|
crear o ajustar imágenes Docker, o definir el flujo de despliegue de una feature.
|
|
9
9
|
No invocar para debugging de código de aplicación — usar depurador-swl.
|
|
10
|
-
tools: Read, Write, Edit, Bash, Grep, Glob
|
|
10
|
+
tools: [Read, Write, Edit, Bash, Grep, Glob]
|
|
11
11
|
model: claude-sonnet-4-6
|
|
12
12
|
modeloAlterno: claude-haiku-4-5-20251001
|
|
13
13
|
ventanaContexto: 200k
|
|
14
14
|
color: magenta
|
|
15
15
|
version: 1.0.0
|
|
16
16
|
nivelRiesgo: ALTO
|
|
17
|
-
skillsInvocables: ci-cd-pipelines, contenedores-docker, kubernetes-orquestacion, cloud-aws, monitoring-alertas
|
|
18
|
-
skillsRestringidos:
|
|
17
|
+
skillsInvocables: [ci-cd-pipelines, contenedores-docker, kubernetes-orquestacion, cloud-aws, monitoring-alertas]
|
|
18
|
+
skillsRestringidos: []
|
|
19
19
|
permisosRed: true
|
|
20
20
|
permisosEscritura: true
|
|
21
21
|
permisosComandos: true
|
|
22
22
|
evolvable: false # nivelRiesgo=ALTO
|
|
23
|
+
fase: release
|
|
24
|
+
dominio: infra
|
|
23
25
|
exclusiones:
|
|
24
26
|
- "No invocar para debugging de código de aplicación — usar depurador-swl."
|
|
25
27
|
- "No invocar para diseño de infraestructura cloud (VPC, bases de datos, auto-scaling) — usar cloud-infra-swl."
|