josemoreupeso.es
11-module-update.md β€” TLOTP
# πŸ”„ MΓ³dulo: Actualizar Skills

## MisiΓ³n

Actualizar skills instaladas a sus ΓΊltimas versiones usando `npx skills update`.

---

## Paso 0 β€” VerificaciΓ³n pre-menΓΊ (automΓ‘tica)

Este paso se ejecuta silenciosamente **antes de mostrar el menΓΊ principal**, al arrancar Celebrimbor.

```bash
npx skills check
```

**Si hay updates disponibles**, mostrar aviso en el menΓΊ:
```
⚠️  Hay skills con actualizaciones disponibles β†’ OpciΓ³n 3
    β€’ playwright-pom (v1.2.0 β†’ v1.3.0)
    β€’ typescript-utils (v2.1.0 β†’ v2.2.0)
```

**Si todo estΓ‘ actualizado**: no mostrar nada (silencioso).

---

## Paso 1 β€” Verificar updates disponibles

Al seleccionar la opciΓ³n "Actualizar skills", ejecutar de nuevo:

```bash
npx skills check
```

**Si hay updates:**
```
══════════════════════════════════════════════════════════════
πŸ”„ Actualizaciones disponibles (2)
══════════════════════════════════════════════════════════════

  1. playwright-pom   v1.2.0 β†’ v1.3.0
  2. typescript-utils v2.1.0 β†’ v2.2.0

══════════════════════════════════════════════════════════════
```

**Si no hay updates:**
```
βœ… Todas las skills estΓ‘n actualizadas. No hay nada que actualizar.
```
β†’ Ofrecer volver al menΓΊ.

---

## Paso 2 β€” Advertencia y confirmaciΓ³n

Mostrar resumen de lo que se actualizarΓ‘:

```
⚠️  npx skills update actualiza TODAS las skills instaladas.
    No es posible actualizar de forma selectiva con el CLI.

Skills que se procesarΓ‘n:
  ↑ playwright-pom   (v1.2.0 β†’ v1.3.0)
  ↑ typescript-utils (v2.1.0 β†’ v2.2.0)
  Β· other-skill      (sin cambios)
```

Mostrar con `AskUserQuestion`:

```json
{
  "questions": [{
    "header": "Confirmar actualizaciΓ³n",
    "question": "ΒΏConfirmas la actualizaciΓ³n de todas las skills?",
    "multiSelect": false,
    "options": [
      {
        "label": "βœ… SΓ­, actualizar todas",
        "description": "npx skills update se ejecutarΓ‘ ahora"
      },
      {
        "label": "🚫 Cancelar",
        "description": "Volver sin actualizar"
      }
    ]
  }]
}
```

---

## Paso 3 β€” Ejecutar actualizaciΓ³n

```bash
npx skills update
```

Mostrar output en tiempo real mientras se ejecuta.

---

## Paso 4 β€” Mostrar resultado

```
══════════════════════════════════════════════════════════════
βœ… ActualizaciΓ³n completada
══════════════════════════════════════════════════════════════

  βœ“ playwright-pom   β†’ v1.3.0
  βœ“ typescript-utils β†’ v2.2.0
  Β· other-skill        sin cambios

πŸ’‘ Recarga Claude Code para aplicar los cambios.

══════════════════════════════════════════════════════════════
```

---

## Paso 5 β€” Acciones posteriores

Mostrar con `AskUserQuestion`:

```json
{
  "questions": [{
    "header": "ActualizaciΓ³n completada",
    "question": "ΒΏQuΓ© deseas hacer ahora?",
    "multiSelect": false,
    "options": [
      {
        "label": "πŸ” Buscar e instalar mΓ‘s skills",
        "description": ""
      },
      {
        "label": "πŸ”™ Volver al menΓΊ principal",
        "description": ""
      }
    ]
  }]
}
```

---

## Manejo de errores

### Error de red
```
⚠️ No se pudo conectar para descargar updates.
   Verifica tu conexiΓ³n e intΓ©ntalo de nuevo.
```

### Sin permisos
```
❌ Sin permisos para actualizar skills.
   SoluciΓ³n: chown -R $USER ~/.claude/skills/
```

### ActualizaciΓ³n parcial
```
⚠️ Actualización parcial: X actualizadas, Y fallaron.

Fallaron:
  βœ— typescript-utils (archivo corrupto)

SoluciΓ³n sugerida: eliminar y reinstalar la skill fallida.
```
β†’ Ofrecer ir a eliminar + reinstalar.

---

**MΓ³dulo**: `11-module-update.md`
**Invocado desde**: `02-menu-principal.md` (OpciΓ³n 3)
**Pre-menΓΊ**: Paso 0 ejecutado automΓ‘ticamente al arrancar Celebrimbor
**Usa**: `npx skills check`, `npx skills update`