@saulwade/swl-ses 2.6.0 → 2.6.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 +197 -197
- package/README.md +600 -600
- package/agentes/_intent-spec.md +73 -73
- package/agentes/_propose-step.md +90 -90
- package/agentes/accesibilidad-wcag-swl.md +690 -690
- package/agentes/arquitecto-swl.md +267 -267
- package/agentes/auto-evolucion-swl.md +932 -932
- package/agentes/backend-csharp-swl.md +420 -420
- package/agentes/backend-go-swl.md +390 -390
- package/agentes/backend-java-swl.md +281 -281
- package/agentes/backend-rust-swl.md +364 -364
- package/agentes/backend-workers-swl.md +482 -482
- package/agentes/cloud-infra-swl.md +509 -509
- package/agentes/consolidador-swl.md +541 -541
- package/agentes/depurador-swl.md +352 -352
- package/agentes/devops-ci-swl.md +400 -400
- package/agentes/disenador-ui-swl.md +569 -569
- package/agentes/documentador-swl.md +345 -345
- package/agentes/frontend-angular-swl.md +621 -621
- package/agentes/frontend-css-swl.md +716 -716
- package/agentes/frontend-react-swl.md +692 -692
- package/agentes/frontend-swl.md +496 -496
- package/agentes/frontend-tailwind-swl.md +826 -826
- package/agentes/investigador-swl.md +432 -432
- package/agentes/investigador-ux-swl.md +505 -505
- package/agentes/migrador-swl.md +442 -442
- package/agentes/mobile-android-swl.md +511 -511
- package/agentes/mobile-cross-swl.md +541 -541
- package/agentes/mobile-ios-swl.md +502 -502
- package/agentes/mobile-testing-swl.md +302 -302
- package/agentes/nemesis-auditor-swl.md +285 -285
- package/agentes/observabilidad-swl.md +438 -438
- package/agentes/pagos-swl.md +310 -310
- package/agentes/perfilador-usuario-swl.md +321 -321
- package/agentes/planificador-swl.md +399 -399
- package/agentes/producto-prd-swl.md +589 -589
- package/agentes/red-team-swl.md +218 -218
- package/agentes/release-manager-swl.md +590 -590
- package/agentes/rendimiento-swl.md +713 -713
- package/agentes/revisor-angular-swl.md +278 -278
- package/agentes/revisor-csharp-swl.md +264 -264
- package/agentes/revisor-go-swl.md +259 -259
- package/agentes/revisor-java-swl.md +257 -257
- package/agentes/revisor-kotlin-swl.md +273 -273
- package/agentes/revisor-nextjs-swl.md +281 -281
- package/agentes/revisor-php-swl.md +271 -271
- package/agentes/revisor-react-swl.md +278 -278
- package/agentes/revisor-rust-swl.md +346 -346
- package/agentes/revisor-seguridad-swl.md +399 -399
- package/agentes/revisor-swift-swl.md +268 -268
- package/agentes/revisor-typescript-swl.md +346 -346
- package/agentes/tdd-qa-swl.md +393 -393
- package/comandos/swl/actualizar.md +174 -174
- package/comandos/swl/adoptar-proyecto.md +265 -265
- package/comandos/swl/aprender.md +836 -836
- package/comandos/swl/aprobar-plan.md +146 -146
- package/comandos/swl/auditar-deps.md +134 -134
- package/comandos/swl/autoresearch.md +264 -264
- package/comandos/swl/ayuda.md +224 -224
- package/comandos/swl/brainstorm.md +51 -51
- package/comandos/swl/briefing.md +119 -119
- package/comandos/swl/checkpoint.md +325 -325
- package/comandos/swl/claudemd.md +234 -234
- package/comandos/swl/compactar.md +310 -310
- package/comandos/swl/configurar-ci.md +235 -235
- package/comandos/swl/contexto.md +110 -110
- package/comandos/swl/contribuir.md +233 -233
- package/comandos/swl/crear-skill.md +292 -292
- package/comandos/swl/cron.md +194 -194
- package/comandos/swl/discutir-fase.md +169 -169
- package/comandos/swl/ejecutar-fase.md +233 -233
- package/comandos/swl/evaluar-skill.md +520 -520
- package/comandos/swl/evolucion-continua.md +73 -73
- package/comandos/swl/evolucionar.md +267 -267
- package/comandos/swl/exportar-vault.md +583 -583
- package/comandos/swl/fix.md +118 -118
- package/comandos/swl/gateway.md +158 -158
- package/comandos/swl/inbox.md +116 -116
- package/comandos/swl/instalar.md +220 -220
- package/comandos/swl/instintos.md +86 -86
- package/comandos/swl/mapear-codebase.md +312 -312
- package/comandos/swl/mcp-status.md +175 -175
- package/comandos/swl/modelo.md +100 -100
- package/comandos/swl/nemesis.md +433 -433
- package/comandos/swl/notificaciones.md +299 -299
- package/comandos/swl/nuevo-proyecto.md +251 -251
- package/comandos/swl/planear-fase.md +263 -263
- package/comandos/swl/plugins.md +256 -256
- package/comandos/swl/predecir.md +169 -169
- package/comandos/swl/reflect-skills.md +125 -125
- package/comandos/swl/release.md +450 -450
- package/comandos/swl/revisar-impacto.md +201 -201
- package/comandos/swl/revisar.md +330 -330
- package/comandos/swl/seguridad.md +189 -189
- package/comandos/swl/sesiones.md +200 -200
- package/comandos/swl/skill-search.md +113 -113
- package/comandos/swl/status.md +345 -345
- package/comandos/swl/verificar.md +817 -817
- package/comandos/swl/wiki.md +620 -620
- package/gateway/cron/jobs.example.json +12 -12
- package/habilidades/auto-evolucion-protocolo/SKILL.md +294 -294
- package/habilidades/backend-async-postgres-testing/SKILL.md +2 -1
- package/habilidades/changelog-generator/SKILL.md +174 -174
- package/habilidades/compactacion-contexto/SKILL.md +2 -1
- package/habilidades/contenedores-docker/SKILL.md +4 -2
- package/habilidades/doubt-driven-review/SKILL.md +207 -207
- package/habilidades/drift-detection/SKILL.md +1 -1
- package/habilidades/ejecutar-task-iterativo/SKILL.md +278 -278
- package/habilidades/extractor-de-aprendizajes/SKILL.md +8 -2
- package/habilidades/git-worktrees-paralelo/SKILL.md +19 -1
- package/habilidades/harness-claude-code/SKILL.md +314 -314
- package/habilidades/instalar-sistema/SKILL.md +227 -227
- package/habilidades/planear-fase/SKILL.md +358 -358
- package/habilidades/prevencion-sobreingenieria/recursos/soluciones-nativas.md +166 -166
- package/habilidades/prevencion-sobreingenieria/recursos/variables-residuales-post-refactor.md +85 -85
- package/habilidades/proceso-ingenieria-requerimientos/SKILL.md +147 -147
- package/habilidades/release-semver/SKILL.md +2 -2
- package/habilidades/tdd-workflow/SKILL.md +749 -749
- package/hooks/agente-lifecycle.js +1 -1
- package/hooks/audit-trail.js +1 -1
- package/hooks/auto-consolidacion.js +1 -1
- package/hooks/captura-acciones-post.js +1 -1
- package/hooks/captura-acciones-session.js +1 -1
- package/hooks/captura-feedback-usuario.js +1 -1
- package/hooks/contexto-iteracion.js +1 -1
- package/hooks/contexto-subagente.js +68 -68
- package/hooks/degradacion-instintos.js +1 -1
- package/hooks/grafo-contexto.js +1 -1
- package/hooks/guardrail-modelo.js +1 -1
- package/hooks/inbox-aviso.js +1 -1
- package/hooks/inyeccion-contexto.js +1 -1
- package/hooks/lib/agent-matcher.js +1 -1
- package/hooks/lib/agent-routing.js +1 -1
- package/hooks/lib/captura-acciones.js +1 -1
- package/hooks/lib/etapa-metricas.js +1 -1
- package/hooks/lib/evolution-tracker.js +1 -1
- package/hooks/lib/gateway-notify.js +193 -193
- package/hooks/lib/mcp-health.js +1 -1
- package/hooks/lib/notificacion-formato.js +58 -0
- package/hooks/lib/nudge-tracker.js +1 -1
- package/hooks/lib/otlp-exporter.js +1 -1
- package/hooks/lib/propose-step.js +1 -1
- package/hooks/lib/raiz-proyecto.js +127 -102
- package/hooks/lib/run-log.js +1 -1
- package/hooks/lib/singleton-guard.js +20 -13
- package/hooks/lib/telegram-cliente.js +11 -3
- package/hooks/notificacion-telegram.js +13 -3
- package/hooks/preservar-estado-pre-compact.js +1 -1
- package/hooks/registro-turnos.js +1 -1
- package/hooks/resumen-sesion.js +1 -1
- package/hooks/risk-scoring.js +1 -1
- package/hooks/session-briefing.js +1 -1
- package/hooks/spec-gate.js +1 -1
- package/hooks/sugerir-regenerar-inventario.js +1 -1
- package/hooks/tdd-gate.js +1 -1
- package/hooks/telemetria-agentes.js +1 -1
- package/hooks/telemetria-skill-routing.js +1 -1
- package/hooks/tracking-costos.js +1 -1
- package/hooks/validar-formato-post-subagente.js +1 -1
- package/hooks/validar-intent-spec.js +1 -1
- package/hooks/validar-planning-paths.js +1 -1
- package/llms.txt +29 -29
- package/manifiestos/canonical-hashes.json +5588 -5257
- package/manifiestos/hooks-config.json +469 -469
- package/manifiestos/invariantes-criticos.json +30 -30
- package/manifiestos/modulos.json +1429 -1428
- package/manifiestos/skills-lock.json +1275 -1275
- package/package.json +94 -94
- package/plugin.json +369 -369
- package/scripts/auditar-clases-conocidas.js +134 -134
- package/scripts/bootstrap-instintos.js +85 -14
- package/scripts/canario-hooks.js +166 -166
- package/scripts/cli/autonomia.js +23 -23
- package/scripts/cli/benchmark-memoria.js +37 -37
- package/scripts/cli/ciclo-autonomo.js +73 -73
- package/scripts/cli/ciclo-fase-b.js +102 -102
- package/scripts/cli/guardrail-metrics.js +39 -39
- package/scripts/cli/memoria-search.js +69 -69
- package/scripts/cli/nudge-accionar.js +39 -39
- package/scripts/cli/run-eval.js +38 -38
- package/scripts/doctor.js +26 -3
- package/scripts/evidencia-valor.js +101 -101
- package/scripts/field-report.js +16 -16
- package/scripts/instalador.js +13 -0
- package/scripts/lib/activar-hooks-proyecto.js +116 -116
- package/scripts/lib/ciclo-autonomo/candidatos.js +174 -174
- package/scripts/lib/ciclo-autonomo/config.js +165 -165
- package/scripts/lib/ciclo-autonomo/drenador-feedback.js +174 -174
- package/scripts/lib/ciclo-autonomo/fallback.js +77 -77
- package/scripts/lib/ciclo-autonomo/guard-convivencia.js +139 -139
- package/scripts/lib/ciclo-autonomo/higiene-nudges.js +112 -112
- package/scripts/lib/ciclo-autonomo/index.js +301 -301
- package/scripts/lib/ciclo-autonomo/lock.js +124 -124
- package/scripts/lib/ciclo-autonomo/presupuesto.js +122 -122
- package/scripts/lib/ciclo-autonomo/puente-degradacion.js +240 -240
- package/scripts/lib/ciclo-autonomo/runner-fase-b.js +248 -248
- package/scripts/lib/ciclo-autonomo/writer-instintos.js +190 -190
- package/scripts/lib/ciclo-autonomo/yaml-instintos.js +535 -535
- package/scripts/lib/evidencia-valor.js +228 -228
- package/scripts/lib/expandir-targets.js +71 -71
- package/scripts/lib/limpiar-basura-global.js +161 -0
- package/scripts/lib/toml-merge.js +204 -204
- package/scripts/mcp-server/auth.js +105 -105
- package/scripts/mcp-server/cache.js +106 -106
- package/scripts/tui/pantallas/install-wizard.js +403 -403
- package/instintos/.backups/perfil-usuario.yaml.2026-07-10-165128.bak +0 -53
- package/instintos/.backups/proyecto.yaml.2026-07-10-165128.bak +0 -372
|
@@ -1,174 +1,174 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: swl:actualizar
|
|
3
|
-
description: Actualiza el sistema SWL a la última versión disponible. Detecta automáticamente el perfil instalado y re-instala con --force preservando la configuración del usuario. No requiere desinstalar primero.
|
|
4
|
-
allowed_tools: ["Read", "Bash", "Glob"]
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# /swl:actualizar — Actualizar sistema SWL
|
|
8
|
-
|
|
9
|
-
Eres el actualizador del sistema SWL dentro de Claude Code. Tu misión es actualizar los componentes instalados a la última versión disponible sin perder la configuración del usuario ni requerir desinstalación previa.
|
|
10
|
-
|
|
11
|
-
## Cuándo usar este comando
|
|
12
|
-
|
|
13
|
-
- Cuando se publicó una nueva versión del sistema SWL y quieres obtener las mejoras
|
|
14
|
-
- Después de que `/swl:status salud` reporta que la versión instalada está desactualizada
|
|
15
|
-
- Cuando otro miembro del equipo indica que hay actualización disponible
|
|
16
|
-
- Para re-instalar el mismo perfil después de modificaciones manuales que dejaron el sistema inconsistente
|
|
17
|
-
|
|
18
|
-
No usar si SWL no está instalado — en ese caso usar `/swl:instalar`.
|
|
19
|
-
|
|
20
|
-
## Paso 0 — Verificar que SWL está instalado
|
|
21
|
-
|
|
22
|
-
```bash
|
|
23
|
-
cat .claude/.swl-install-state.json 2>/dev/null
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
Si NO existe archivo de estado:
|
|
27
|
-
- Informa: "No se encontró una instalación de SWL en este proyecto."
|
|
28
|
-
- Sugiere: "Usa `/swl:instalar` para instalar SWL por primera vez."
|
|
29
|
-
- DETENTE.
|
|
30
|
-
|
|
31
|
-
Si existe, extrae:
|
|
32
|
-
- `perfil`: el perfil actualmente instalado
|
|
33
|
-
- `versionSistema`: la versión instalada
|
|
34
|
-
- `global`: si fue instalación global
|
|
35
|
-
- `archivosInstalados`: cantidad de archivos
|
|
36
|
-
|
|
37
|
-
Informa al usuario:
|
|
38
|
-
```
|
|
39
|
-
SWL instalado:
|
|
40
|
-
Versión: <versionSistema>
|
|
41
|
-
Perfil: <perfil>
|
|
42
|
-
Archivos: <N>
|
|
43
|
-
Tipo: <local|global>
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
## Paso 1 — Verificar versión disponible
|
|
47
|
-
|
|
48
|
-
```bash
|
|
49
|
-
npm view @saulwade/swl-ses version 2>/dev/null \
|
|
50
|
-
|| npm view @saul-wade/swl-ses version --registry=https://npm.pkg.github.com 2>/dev/null
|
|
51
|
-
```
|
|
52
|
-
|
|
53
|
-
Si hay una versión más nueva, informa:
|
|
54
|
-
- "Versión instalada: **X**. Versión disponible: **Y**."
|
|
55
|
-
|
|
56
|
-
Si ya está en la última versión:
|
|
57
|
-
- "Ya tienes la última versión (**X**). ¿Deseas re-instalar de todos modos?"
|
|
58
|
-
- Si el usuario dice no, DETENTE.
|
|
59
|
-
|
|
60
|
-
## Paso 1.5 — Descubrimiento de features nuevas
|
|
61
|
-
|
|
62
|
-
Cuando hay una versión nueva disponible, mostrar qué cambió entre la versión
|
|
63
|
-
instalada y la disponible para que el usuario tome una decisión informada.
|
|
64
|
-
|
|
65
|
-
```bash
|
|
66
|
-
# Obtener changelog entre versiones (si está disponible localmente o via npm)
|
|
67
|
-
CURRENT="<version_instalada>"
|
|
68
|
-
AVAILABLE="<version_disponible>"
|
|
69
|
-
|
|
70
|
-
# Opción 1: Si el repo SWL está disponible como referencia
|
|
71
|
-
if [ -f "CHANGELOG.md" ]; then
|
|
72
|
-
# Extraer entradas del changelog entre las dos versiones
|
|
73
|
-
sed -n "/## \[$AVAILABLE\]/,/## \[$CURRENT\]/p" CHANGELOG.md | head -50
|
|
74
|
-
fi
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
Presentar al usuario un resumen categorizado:
|
|
78
|
-
|
|
79
|
-
```
|
|
80
|
-
=== Novedades entre v<CURRENT> y v<AVAILABLE> ===
|
|
81
|
-
|
|
82
|
-
📦 Componentes nuevos:
|
|
83
|
-
- [agentes/skills/hooks/comandos nuevos]
|
|
84
|
-
|
|
85
|
-
🔧 Mejoras:
|
|
86
|
-
- [mejoras a componentes existentes]
|
|
87
|
-
|
|
88
|
-
🐛 Correcciones:
|
|
89
|
-
- [bugs corregidos]
|
|
90
|
-
|
|
91
|
-
⚠ Cambios que requieren atención:
|
|
92
|
-
- [breaking changes o migraciones necesarias]
|
|
93
|
-
- [reglas nuevas obligatorias]
|
|
94
|
-
- [hooks nuevos que podrían afectar el flujo]
|
|
95
|
-
|
|
96
|
-
💡 Guía de migración:
|
|
97
|
-
- [Si hay cambios breaking, pasos concretos para adaptar el proyecto]
|
|
98
|
-
- [Si hay hooks nuevos, cómo configurarlos]
|
|
99
|
-
```
|
|
100
|
-
|
|
101
|
-
Si no se puede obtener el changelog, informar:
|
|
102
|
-
```
|
|
103
|
-
No se pudo obtener el detalle de cambios entre versiones.
|
|
104
|
-
Consulta el CHANGELOG.md del repositorio SWL para ver las novedades.
|
|
105
|
-
```
|
|
106
|
-
|
|
107
|
-
## Paso 2 — Confirmar actualización
|
|
108
|
-
|
|
109
|
-
```
|
|
110
|
-
=== Actualización SWL ===
|
|
111
|
-
|
|
112
|
-
Versión actual: <version instalada>
|
|
113
|
-
Versión disponible: <version nueva>
|
|
114
|
-
Perfil: <perfil>
|
|
115
|
-
Tipo: <local|global>
|
|
116
|
-
|
|
117
|
-
La actualización:
|
|
118
|
-
- Sobrescribe agentes, skills, comandos, reglas y hooks
|
|
119
|
-
- Actualiza hooks en settings.json
|
|
120
|
-
- Preserva _userland/ (extensiones del usuario)
|
|
121
|
-
- Preserva .planning/ (estado del proyecto)
|
|
122
|
-
|
|
123
|
-
¿Proceder?
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
Espera confirmación del usuario.
|
|
127
|
-
|
|
128
|
-
## Paso 3 — Ejecutar actualización
|
|
129
|
-
|
|
130
|
-
```bash
|
|
131
|
-
npx -y @saulwade/swl-ses@latest install --target claude --profile <PERFIL> [--global] --force
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
Usa el mismo perfil y ubicación de la instalación original.
|
|
135
|
-
|
|
136
|
-
## Paso 4 — Ejecutar doctor
|
|
137
|
-
|
|
138
|
-
```bash
|
|
139
|
-
npx -y @saulwade/swl-ses@latest doctor
|
|
140
|
-
```
|
|
141
|
-
|
|
142
|
-
## Paso 5 — Reportar resultado
|
|
143
|
-
|
|
144
|
-
```
|
|
145
|
-
=== Actualización SWL completada ===
|
|
146
|
-
|
|
147
|
-
Versión anterior: <X>
|
|
148
|
-
Versión nueva: <Y>
|
|
149
|
-
Perfil: <perfil>
|
|
150
|
-
Archivos: <N> actualizados
|
|
151
|
-
|
|
152
|
-
Doctor: <resultado>
|
|
153
|
-
```
|
|
154
|
-
|
|
155
|
-
## Cambio de perfil durante actualización
|
|
156
|
-
|
|
157
|
-
Si el usuario dice algo como "actualiza y cambia a perfil completo", ejecuta:
|
|
158
|
-
|
|
159
|
-
```bash
|
|
160
|
-
npx -y @saulwade/swl-ses@latest install --target claude --profile <NUEVO_PERFIL> [--global] --force
|
|
161
|
-
```
|
|
162
|
-
|
|
163
|
-
Informa que el cambio de perfil puede agregar componentes nuevos pero no elimina los del perfil anterior. Si quiere una instalación limpia con otro perfil, sugiere:
|
|
164
|
-
1. `npx swl-ses uninstall --target claude`
|
|
165
|
-
2. `/swl:instalar` con el nuevo perfil
|
|
166
|
-
|
|
167
|
-
## Reglas de comportamiento
|
|
168
|
-
|
|
169
|
-
- SIEMPRE verifica que SWL está instalado antes de intentar actualizar.
|
|
170
|
-
- SIEMPRE muestra versión actual vs disponible.
|
|
171
|
-
- SIEMPRE confirma antes de ejecutar.
|
|
172
|
-
- NUNCA cambia el perfil sin que el usuario lo pida explícitamente.
|
|
173
|
-
- Preserva `_userland/` y `.planning/` siempre.
|
|
174
|
-
- Si la actualización falla, el sistema queda en el estado anterior (los archivos existentes no se borran antes de copiar los nuevos).
|
|
1
|
+
---
|
|
2
|
+
name: swl:actualizar
|
|
3
|
+
description: Actualiza el sistema SWL a la última versión disponible. Detecta automáticamente el perfil instalado y re-instala con --force preservando la configuración del usuario. No requiere desinstalar primero.
|
|
4
|
+
allowed_tools: ["Read", "Bash", "Glob"]
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# /swl:actualizar — Actualizar sistema SWL
|
|
8
|
+
|
|
9
|
+
Eres el actualizador del sistema SWL dentro de Claude Code. Tu misión es actualizar los componentes instalados a la última versión disponible sin perder la configuración del usuario ni requerir desinstalación previa.
|
|
10
|
+
|
|
11
|
+
## Cuándo usar este comando
|
|
12
|
+
|
|
13
|
+
- Cuando se publicó una nueva versión del sistema SWL y quieres obtener las mejoras
|
|
14
|
+
- Después de que `/swl:status salud` reporta que la versión instalada está desactualizada
|
|
15
|
+
- Cuando otro miembro del equipo indica que hay actualización disponible
|
|
16
|
+
- Para re-instalar el mismo perfil después de modificaciones manuales que dejaron el sistema inconsistente
|
|
17
|
+
|
|
18
|
+
No usar si SWL no está instalado — en ese caso usar `/swl:instalar`.
|
|
19
|
+
|
|
20
|
+
## Paso 0 — Verificar que SWL está instalado
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
cat .claude/.swl-install-state.json 2>/dev/null
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
Si NO existe archivo de estado:
|
|
27
|
+
- Informa: "No se encontró una instalación de SWL en este proyecto."
|
|
28
|
+
- Sugiere: "Usa `/swl:instalar` para instalar SWL por primera vez."
|
|
29
|
+
- DETENTE.
|
|
30
|
+
|
|
31
|
+
Si existe, extrae:
|
|
32
|
+
- `perfil`: el perfil actualmente instalado
|
|
33
|
+
- `versionSistema`: la versión instalada
|
|
34
|
+
- `global`: si fue instalación global
|
|
35
|
+
- `archivosInstalados`: cantidad de archivos
|
|
36
|
+
|
|
37
|
+
Informa al usuario:
|
|
38
|
+
```
|
|
39
|
+
SWL instalado:
|
|
40
|
+
Versión: <versionSistema>
|
|
41
|
+
Perfil: <perfil>
|
|
42
|
+
Archivos: <N>
|
|
43
|
+
Tipo: <local|global>
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Paso 1 — Verificar versión disponible
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
npm view @saulwade/swl-ses version 2>/dev/null \
|
|
50
|
+
|| npm view @saul-wade/swl-ses version --registry=https://npm.pkg.github.com 2>/dev/null
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
Si hay una versión más nueva, informa:
|
|
54
|
+
- "Versión instalada: **X**. Versión disponible: **Y**."
|
|
55
|
+
|
|
56
|
+
Si ya está en la última versión:
|
|
57
|
+
- "Ya tienes la última versión (**X**). ¿Deseas re-instalar de todos modos?"
|
|
58
|
+
- Si el usuario dice no, DETENTE.
|
|
59
|
+
|
|
60
|
+
## Paso 1.5 — Descubrimiento de features nuevas
|
|
61
|
+
|
|
62
|
+
Cuando hay una versión nueva disponible, mostrar qué cambió entre la versión
|
|
63
|
+
instalada y la disponible para que el usuario tome una decisión informada.
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
# Obtener changelog entre versiones (si está disponible localmente o via npm)
|
|
67
|
+
CURRENT="<version_instalada>"
|
|
68
|
+
AVAILABLE="<version_disponible>"
|
|
69
|
+
|
|
70
|
+
# Opción 1: Si el repo SWL está disponible como referencia
|
|
71
|
+
if [ -f "CHANGELOG.md" ]; then
|
|
72
|
+
# Extraer entradas del changelog entre las dos versiones
|
|
73
|
+
sed -n "/## \[$AVAILABLE\]/,/## \[$CURRENT\]/p" CHANGELOG.md | head -50
|
|
74
|
+
fi
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
Presentar al usuario un resumen categorizado:
|
|
78
|
+
|
|
79
|
+
```
|
|
80
|
+
=== Novedades entre v<CURRENT> y v<AVAILABLE> ===
|
|
81
|
+
|
|
82
|
+
📦 Componentes nuevos:
|
|
83
|
+
- [agentes/skills/hooks/comandos nuevos]
|
|
84
|
+
|
|
85
|
+
🔧 Mejoras:
|
|
86
|
+
- [mejoras a componentes existentes]
|
|
87
|
+
|
|
88
|
+
🐛 Correcciones:
|
|
89
|
+
- [bugs corregidos]
|
|
90
|
+
|
|
91
|
+
⚠ Cambios que requieren atención:
|
|
92
|
+
- [breaking changes o migraciones necesarias]
|
|
93
|
+
- [reglas nuevas obligatorias]
|
|
94
|
+
- [hooks nuevos que podrían afectar el flujo]
|
|
95
|
+
|
|
96
|
+
💡 Guía de migración:
|
|
97
|
+
- [Si hay cambios breaking, pasos concretos para adaptar el proyecto]
|
|
98
|
+
- [Si hay hooks nuevos, cómo configurarlos]
|
|
99
|
+
```
|
|
100
|
+
|
|
101
|
+
Si no se puede obtener el changelog, informar:
|
|
102
|
+
```
|
|
103
|
+
No se pudo obtener el detalle de cambios entre versiones.
|
|
104
|
+
Consulta el CHANGELOG.md del repositorio SWL para ver las novedades.
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
## Paso 2 — Confirmar actualización
|
|
108
|
+
|
|
109
|
+
```
|
|
110
|
+
=== Actualización SWL ===
|
|
111
|
+
|
|
112
|
+
Versión actual: <version instalada>
|
|
113
|
+
Versión disponible: <version nueva>
|
|
114
|
+
Perfil: <perfil>
|
|
115
|
+
Tipo: <local|global>
|
|
116
|
+
|
|
117
|
+
La actualización:
|
|
118
|
+
- Sobrescribe agentes, skills, comandos, reglas y hooks
|
|
119
|
+
- Actualiza hooks en settings.json
|
|
120
|
+
- Preserva _userland/ (extensiones del usuario)
|
|
121
|
+
- Preserva .planning/ (estado del proyecto)
|
|
122
|
+
|
|
123
|
+
¿Proceder?
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
Espera confirmación del usuario.
|
|
127
|
+
|
|
128
|
+
## Paso 3 — Ejecutar actualización
|
|
129
|
+
|
|
130
|
+
```bash
|
|
131
|
+
npx -y @saulwade/swl-ses@latest install --target claude --profile <PERFIL> [--global] --force
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
Usa el mismo perfil y ubicación de la instalación original.
|
|
135
|
+
|
|
136
|
+
## Paso 4 — Ejecutar doctor
|
|
137
|
+
|
|
138
|
+
```bash
|
|
139
|
+
npx -y @saulwade/swl-ses@latest doctor
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
## Paso 5 — Reportar resultado
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
=== Actualización SWL completada ===
|
|
146
|
+
|
|
147
|
+
Versión anterior: <X>
|
|
148
|
+
Versión nueva: <Y>
|
|
149
|
+
Perfil: <perfil>
|
|
150
|
+
Archivos: <N> actualizados
|
|
151
|
+
|
|
152
|
+
Doctor: <resultado>
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
## Cambio de perfil durante actualización
|
|
156
|
+
|
|
157
|
+
Si el usuario dice algo como "actualiza y cambia a perfil completo", ejecuta:
|
|
158
|
+
|
|
159
|
+
```bash
|
|
160
|
+
npx -y @saulwade/swl-ses@latest install --target claude --profile <NUEVO_PERFIL> [--global] --force
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
Informa que el cambio de perfil puede agregar componentes nuevos pero no elimina los del perfil anterior. Si quiere una instalación limpia con otro perfil, sugiere:
|
|
164
|
+
1. `npx swl-ses uninstall --target claude`
|
|
165
|
+
2. `/swl:instalar` con el nuevo perfil
|
|
166
|
+
|
|
167
|
+
## Reglas de comportamiento
|
|
168
|
+
|
|
169
|
+
- SIEMPRE verifica que SWL está instalado antes de intentar actualizar.
|
|
170
|
+
- SIEMPRE muestra versión actual vs disponible.
|
|
171
|
+
- SIEMPRE confirma antes de ejecutar.
|
|
172
|
+
- NUNCA cambia el perfil sin que el usuario lo pida explícitamente.
|
|
173
|
+
- Preserva `_userland/` y `.planning/` siempre.
|
|
174
|
+
- Si la actualización falla, el sistema queda en el estado anterior (los archivos existentes no se borran antes de copiar los nuevos).
|