---
description: /gd:skill — Seleccionar y Activar una Skill Especializada del Framework
---

# `/gd:skill` — Seleccionar y Activar una Skill Especializada del Framework

## Propósito
Activar una skill especializada del framework para resolver un problema con mayor consistencia y precisión. Las skills empaquetan flujos expertos para dominios específicos (frontend Angular, testing, governance, etc.) y deben cargarse antes de ejecutar el comando de dominio correspondiente.

---

## Skills disponibles

| Skill | Dominio | Cuándo activar |
|---|---|---|
| `gd-frontend` | Angular, formularios reactivos, treasury/purchases | `/gd:frontend` o `/gd:start-frontend` |

> Consultar `SKILL-ROUTING.md` para el listado actualizado de skills y sus condiciones de activación.

---

## Protocolo de ejecución

### Paso 1 — Identificar si existe una skill para la tarea

```bash
# Ver skills disponibles y sus condiciones
cat .claude/commands/gd/SKILL-ROUTING.md

# Ver qué dominio aplica
grep -i "<dominio>" .claude/commands/gd/SKILL-ROUTING.md
```

### Paso 2 — Activar la skill correcta

```bash
# Frontend Angular (formularios, facade, BehaviorSubject)
/gd:frontend

# Frontend Angular (módulos nuevos o Angular 19 con Signals)
/gd:start-frontend

# Para otros dominios: cargar módulo .agents-core/ correspondiente
# .agents-core/multi-tenant.md   → multitenancy
# .agents-core/lambdas-pattern.md → Lambda/API GW
# .agents-core/nestjs-pattern.md  → NestJS
# .agents-core/testing-rules.md   → testing
# .agents-core/saga-pattern.md    → SAGA
```

### Paso 3 — Aplicar la skill al problema

Una vez activada la skill, ejecutar el comando del pipeline correspondiente:
- `/gd:implement` o `/gd:aplicar` para implementación
- `/gd:test-Frontend` o `/gd:test-Backend` para tests
- `/gd:review` para revisión con criterios de la skill

---

## Reglas de routing (Frontend)

| Módulo | Signal requerida | Skill correcta |
|---|---|---|
| `treasury/inflows/new` | Ancla existente | `/gd:frontend` (BehaviorSubject) |
| `purchases/orders/new` | Ancla existente | `/gd:frontend` (BehaviorSubject) |
| Módulo nuevo | Angular 19 / Signals | `/gd:start-frontend` |
| Módulo existente sin ancla | Verificar primero | `/gd:frontend` si hay ancla |

**Nunca mezclar** BehaviorSubject (skill `gd-frontend`) con Signals (`start-frontend`) en el mismo módulo.

---

## Salida esperada

```markdown
## Skill Applied
**Skill**: gd-frontend
**Motivo**: módulo treasury/inflows/new tiene ancla BehaviorSubject existente
**Comando activado**: /gd:frontend

**Alcance**: formulario reactivo, facade, store, validaciones
**Limitaciones**: solo para Angular con BehaviorSubject — no usar en módulos Signals

**Siguiente paso**: /gd:implement con contexto de gd-frontend activo
```

---

## Errores y modo degradado

| Situación | Acción |
|-----------|--------|
| La skill requerida no está en `SKILL-ROUTING.md` | Declarar "skill no disponible"; cargar el módulo `.agents-core/` más cercano al dominio como fallback |
| El módulo angular tiene anclas mixtas (BehaviorSubject + Signals) | Detener; ejecutar `/gd:guardian` para auditar el módulo antes de elegir la skill; no mezclar sin resolución explícita |
| `SKILL-ROUTING.md` no existe en el proyecto | Reportar el archivo faltante; usar el contenido de este comando como referencia de routing mínima |
| La skill es cargada pero no tiene instrucciones ejecutables para el dominio actual | Declarar "skill cargada pero no aplicable a este dominio"; continuar sin ella y documentar la limitación |

---

## Anti-patrones a evitar

- Cargar skills irrelevantes por defecto — solo cuando el dominio aplica.
- Usar la skill `gd-frontend` en módulos que ya usan Signals.
- Activar múltiples skills simultáneamente sin foco claro.

---

## Siguiente paso

Con la skill activa, ejecutar `/gd:implement`, `/gd:review` o el comando de pipeline que corresponda al dominio.
