--- name: create-issue description: Crea un issue nuevo en dev/issues/ con confirmación del usuario disable-model-invocation: true user-invocable: true allowed-tools: Bash, Read, Write, Edit --- # create-issue Crea un issue nuevo con estructura completa. Si es grande, lo desglosa en sub-issues con feature flags. ## Sintaxis ```bash /create-issue ``` ## Precondiciones - [ ] Directorio `dev/issues/` existe - [ ] Template `.claude/templates/issue.md` existe ## Flujo ### 1. Determinar número del issue ```bash ls dev/issues/ dev/issues/completed/ | grep -oP '^\d{4}' | sort -rn | head -1 ``` Próximo issue = número_más_alto + 1 (formato 4 dígitos) ### 2. Solicitar inputs - `titulo`: título corto y descriptivo - `descripcion`: objetivo de lo que se quiere lograr - `dependencias` (opcional): issues de los que depende ### 3. Generar slug Título → lowercase → palabras separadas por guiones → 2-4 palabras ### 4. Evaluar tamaño **Criterios para sub-issues:** - Toca más de 2 capas (core/ + shell/ + app/) - Requiere más de 3 fases - El usuario lo indica **Issue simple:** crear un archivo `dev/issues/-.md` **Issue grande:** crear SOLO sub-issues `a-`, `b-`, etc. ### 5. Crear desde template Usar template en `${CLAUDE_SKILL_DIR}/issue.md` y rellenar todas las secciones: - Metadata, Objetivo, Contexto - Arquitectura, Patrón pure/impure - Tareas, Ejemplo de uso - Criterios de aceptación ### 6. Feature flag (solo multi-issue) Actualizar `dev/feature_flags.json`: ```json { "": { "enabled": false, "issue": "", "description": "..." } } ``` ### 7. Actualizar índice En `dev/issues/README.md` agregar fila(s). ### 8. Mostrar y confirmar ``` Issue creado: - ¿Te parece bien? - Si es correcto: commit y push automáticamente - Si necesitas ajustes: edita manualmente ``` ### 9. Ejecutar /git-push automáticamente Si confirma, crear rama `quick/create-issue-` y ejecutar flujo git. ## Convenciones - Numeración continua sin saltos - Estado inicial: pendiente - Issues cortos (horas por rama) - Sub-issues autocontenidos