feature-planner

Planifica nuevas funcionalidades mediante un proceso estructurado de entrevista y documentación.


Triggers

Frases que activan el skill
“quiero agregar”
“planificar feature”
“nueva funcionalidad”
“implementar esto”
“crear plan”
“planificar antes de codear”
“diseñar feature”

¿Qué hace?

  1. Crea borrador inicial en /docs/wip/<feature>-plan.md
  2. Entrevista al usuario para obtener requerimientos
  3. Documenta el spec completo
  4. Crea tareas con TodoWrite
  5. Valida estado actual (opcional)

Proceso de entrevista

El skill hace preguntas para cubrir todas las áreas:

Área Preguntas clave
Funcionalidad ¿Qué debe hacer? ¿Qué NO debe hacer?
UI/UX ¿Cómo interactúa el usuario?
Datos ¿Qué datos se necesitan? ¿Dónde se guardan?
Integraciones ¿APIs o servicios externos?
Edge cases ¿Qué pasa si…?
Restricciones Performance, seguridad, compatibilidad
Prioridad MVP vs nice-to-have

Flujo completo

Usuario: "Quiero agregar dark mode"
                ↓
    [Crear /docs/wip/dark-mode-plan.md]
                ↓
    [Entrevistar con AskUserQuestion]
    - ¿Solo toggle o detectar sistema?
    - ¿Qué componentes afecta?
    - ¿Persiste la preferencia?
    - ¿Transición animada?
                ↓
    [Actualizar documento con spec]
                ↓
    [Crear TodoWrite items]
                ↓
    [Ofrecer validar estado actual]
                ↓
    "Plan completo. ¿Empezamos?"

Documento generado

# Dark Mode - Plan de Implementación

## Estado: ESPECIFICADO

## Idea Original
El usuario quiere agregar dark mode a la aplicación.

## Requerimientos

### Funcionalidad
- Toggle manual en settings
- Detectar preferencia del sistema
- Persistir en localStorage

### UI/UX
- Transición suave de 200ms
- Afecta todos los componentes

### Datos
- Preferencia guardada en localStorage
- Key: "theme-preference"

## Tareas

1. Crear ThemeContext
2. Agregar toggle en settings
3. Definir variables CSS
4. Aplicar estilos condicionales
5. Persistir preferencia
6. Detectar preferencia del sistema
7. Escribir tests

Creación de tareas

El skill divide el spec en tareas atómicas:

Criterios para buenas tareas:

  • Independientes o con dependencias claras
  • Completables en una sesión
  • Criterio de aceptación implícito
  • Orden lógico de implementación
Tareas creadas:
1. [pending] Crear context de tema (ThemeContext)
2. [pending] Agregar toggle en settings
3. [pending] Definir variables CSS para dark mode
4. [pending] Aplicar estilos condicionales a componentes
5. [pending] Persistir preferencia en localStorage
6. [pending] Detectar preferencia del sistema
7. [pending] Escribir tests

Notas importantes

  • No implementar durante la planificación
  • Ser exhaustivo en la entrevista, no asumir
  • Documentar decisiones y su justificación
  • El documento queda en /docs/wip/ hasta que el feature esté completo

Herramientas disponibles

  • Read - Leer código existente
  • Write - Crear documento de plan
  • Edit - Actualizar documento
  • Glob - Buscar archivos
  • Bash - Verificar estado del proyecto
  • AskUserQuestion - Entrevistar al usuario
  • TodoWrite - Crear tareas