josemoreupeso.es
09-module-docs.md โ€” TLOTP
# ๐Ÿ“œ Mรณdulo G9 โ€” Los Pergaminos del Mago

## Misiรณn

Documentaciรณn oficial on-demand sobre SDD, Plan Mode, Kiro y EARS.
Todo vรญa WebFetch โ€” nunca hardcodeado. Solo cuando el usuario lo pide.

---

## Paso 0 โ€” Documentaciรณn oficial (on-the-fly)

**IMPORTANTE**: Comprobar primero si la documentaciรณn ya estรก en contexto.

**Si ya estรก en contexto**: usar directamente sin re-fetchear.

**Si no estรก en contexto**, hacer WebFetch segรบn lo que el usuario pida:

> **WebFetch 1** (si pide Plan Mode): `https://code.claude.com/docs/en/plan-mode`
> **Extraer**: quรฉ es Plan Mode, cรณmo usarlo con ficheros de spec/SDD,
> cรณmo activarlo, flujo recomendado, ejemplos de uso con requirements/tasks.

> **WebFetch 2** (si pide Kiro): `https://docs.kiro.dev`
> **Extraer**: estructura del directorio spec/, steering files, formato tasks.md de Kiro,
> diferencias con el formato TLOTP, cรณmo integrar Kiro con Claude Code.

**Fallback si WebFetch falla**:

```
โš ๏ธ  No se pudo cargar la documentaciรณn oficial.
   Los Pergaminos del Mago requieren conexiรณn a las fuentes.

   Puedes consultarlas directamente:
     ๐Ÿ”ฎ Plan Mode: https://code.claude.com/docs/en/plan-mode
     โš—๏ธ  Kiro:     https://docs.kiro.dev
```

---

## Menรบ del mรณdulo

```json
{
  "questions": [{
    "header": "Los Pergaminos del Mago",
    "question": "๐Ÿ“œ ยฟQuรฉ pergamino consultas, viajero?",
    "multiSelect": false,
    "options": [
      {
        "label": "๐Ÿ”ฎ Claude Code Plan Mode โ€” SDD + Plan Mode",
        "description": "Cรณmo usar requirements/tasks con el modo plan de Claude Code"
      },
      {
        "label": "โš—๏ธ  Amazon Kiro โ€” spec/ format y steering files",
        "description": "Estรกndar emergente de spec-driven development"
      },
      {
        "label": "๐Ÿ“– Quรฉ es EARS y cuรกndo usarlo",
        "description": "Easy Approach to Requirements Syntax โ€” los 5 patrones"
      },
      {
        "label": "๐Ÿ”™ Volver al menรบ de Gandalf",
        "description": ""
      }
    ]
  }]
}
```

---

## Opciรณn A โ€” Claude Code Plan Mode

Hacer WebFetch 1 (si no estรก en contexto) y mostrar:

```
โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
๐Ÿ”ฎ PLAN MODE โ€” Claude Code
โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

[Insertar aquรญ el contenido extraรญdo del WebFetch sobre Plan Mode]

โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
๐Ÿ’ก Cรณmo combinar Plan Mode con tu SDD de Gandalf:

  1. Genera requirements.md y tasks.md con Gandalf
  2. Activa Plan Mode: /plan o Shift+Tab
  3. Carga el contexto: "@docs/requirements.md @docs/tasks.md"
  4. Claude Code planificarรก basรกndose en tu SDD
  5. Revisa el plan โ†’ aprueba โ†’ implementa

โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
```

---

## Opciรณn B โ€” Amazon Kiro

Hacer WebFetch 2 (si no estรก en contexto) y mostrar:

```
โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
โš—๏ธ  AMAZON KIRO โ€” Spec-Driven Development
โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

[Insertar aquรญ el contenido extraรญdo del WebFetch sobre Kiro]

โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
๐Ÿ’ก Kiro vs Gandalf/TLOTP:

  Kiro usa el directorio .kiro/specs/ con:
    - requirements.md (similar al de Gandalf)
    - design.md (similar al de Gandalf)
    - tasks.md (formato ligeramente diferente)
    + steering files (.kiro/steering/*.md)

  El SDD generado por Gandalf es compatible con Kiro.
  Puedes mover los ficheros a .kiro/specs/ si usas Kiro.

โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
```

---

## Opciรณn C โ€” EARS

**EARS no requiere WebFetch** โ€” es un estรกndar pรบblico. Mostrar con conocimiento interno:

```
โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
๐Ÿ“– EARS โ€” Easy Approach to Requirements Syntax
โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•

EARS define 5 patrones para escribir requisitos precisos:

1๏ธโƒฃ  UBIQUITOUS (siempre aplica):
    THE SYSTEM SHALL [acciรณn]
    โ†’ "THE SYSTEM SHALL registrar todos los errores en el log"

2๏ธโƒฃ  EVENT-DRIVEN (disparado por evento):
    WHEN [disparador] THE SYSTEM SHALL [acciรณn]
    โ†’ "WHEN el usuario envรญa el formulario THE SYSTEM SHALL
       validar los datos y mostrar errores inline"

3๏ธโƒฃ  UNWANTED (condiciรณn no deseada):
    IF [condiciรณn no deseada] THEN THE SYSTEM SHALL [acciรณn]
    โ†’ "IF la conexiรณn a la BD falla THEN THE SYSTEM SHALL
       devolver 503 con mensaje de retry"

4๏ธโƒฃ  OPTION (feature opcional):
    WHERE [feature activa] THE SYSTEM SHALL [acciรณn]
    โ†’ "WHERE el mรณdulo de notificaciones estรก habilitado
       THE SYSTEM SHALL enviar email de confirmaciรณn"

5๏ธโƒฃ  COMPLEX (estado + evento):
    WHILE [estado] WHEN [disparador] THE SYSTEM SHALL [acciรณn]
    โ†’ "WHILE el usuario estรก autenticado WHEN accede a /admin
       THE SYSTEM SHALL verificar el rol ADMIN"

โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
๐Ÿ’ก Cuรกndo usar EARS:
   - Siempre que escribas requisitos en un SDD
   - Evita ambigรผedades como "el sistema gestionarรก X"
   - Facilita los acceptance criteria de G7

โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•โ•
```

---

## AskUserQuestion tras cada secciรณn

- ๐Ÿ“– Consultar otra secciรณn
- โœจ Volver a iniciar una aventura SDD
- ๐Ÿ”™ Volver al menรบ de Gandalf

---

**Mรณdulo**: `09-module-docs.md`
**Invocado desde**: `gandalf-main.md`
**Requiere**: WebFetch (condicional, solo Plan Mode y Kiro)