--- version: 1.0.0 updated: 2026-03-15 tags: [issues, quick, automation, tui] --- # Command: quick-issue Crea un issue nuevo automáticamente desde la TUI con detección automática de workspace y número de issue. ## Para el usuario ### Cuándo usar este comando Este comando es invocado automáticamente por la TUI cuando el usuario presiona la opción "Create Issue". **No se debe invocar manualmente** desde la línea de comandos. ### Sintaxis ```bash /issues:quick-issue --text "descripción del issue" ``` El comando auto-detecta el próximo número de issue disponible y crea el archivo automáticamente. ## Para Claude ### Precondiciones Verificar antes de ejecutar: - [ ] Directorio `dev/issues/` existe - [ ] Parámetro `--text` fue proporcionado - [ ] Working tree limpio ### Inputs **Obligatorios:** - `--text`: Texto descriptivo del issue (se usará como título y descripción) **Auto-detectados:** - Número de issue: Siguiente disponible en `dev/issues/` - Workspace: Proyecto padre (Dataforge) ### Flujo obligatorio #### 1. Determinar número del issue ```bash # Listar issues existentes ls -1 dev/issues/*.md | grep -E '^dev/issues/[0-9]{4}[a-z]?-' | sort -V # Extraer último número # Si el último es 0023-foo.md, siguiente es 0024 # Si el último es 0023c-bar.md, siguiente es 0024 ``` Regla: **SIEMPRE incrementar el número base**, ignorar letras. #### 2. Generar título y slug - **Título**: Usar `--text` directamente - **Slug**: Convertir título a kebab-case Ejemplo: ``` --text "Agregar soporte para temas oscuros" → Título: "Agregar soporte para temas oscuros" → Slug: "agregar-soporte-para-temas-oscuros" ``` #### 3. Crear archivo de issue Usar template `.claude/templates/issue.md` y completar: ```markdown # NNNN — [Título] ## Metadata | Campo | Valor | |-------|-------| | **ID** | NNNN | | **Estado** | 🟡 pendiente | | **Prioridad** | media | | **Tipo** | feature | ## Dependencias | ID | Título | Estado | Requerido | |----|--------|--------|-----------| | - | - | - | - | **Bloqueada por:** Ninguna **Desbloquea:** (a determinar) --- ## Objetivo [Texto del parámetro --text] ## Contexto (A completar durante implementación) ## Tareas - [ ] (A detallar durante implementación con /issues:fix-issue) --- ## Criterios de aceptación - [ ] Tests pasando - [ ] Documentación actualizada - [ ] Issue movida a completed/ --- ## Notas de implementación [Notas que surjan durante la implementación] ``` #### 4. Actualizar índice Agregar línea en `dev/issues/README.md`: ```markdown - [ ] [NNNN](NNNN-slug.md) — [Título] (pendiente) ``` #### 5. Crear commits y mergear **Sin pedir confirmación**, ejecutar: ```bash # Crear rama git checkout -b quick/issues:quick-issue-NNNN # Commitear git add dev/issues/NNNN-slug.md dev/issues/README.md git commit -m "docs: crear issue NNNN-slug" -m "Issue NNNN: [Título] Creado desde TUI con quick-issue. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude " # Mergear git checkout master git pull --rebase git merge --no-ff quick/issues:quick-issue-NNNN -m "merge: quick/issues:quick-issue-NNNN — [título]" # Push git push # Limpiar git branch -d quick/issues:quick-issue-NNNN ``` #### 6. Reportar resultado Informar al usuario con formato claro: ``` ✓ Issue NNNN-slug creado e integrado Título: [Título] Archivo: dev/issues/NNNN-slug.md Para implementar: /issues:fix-issue NNNN ``` ## Convenciones - **Auto-detección**: workspace y número de issue - **Sin confirmación**: flujo completamente automático - **Trunk-based**: rama quick/ y merge inmediato - **Template simple**: detalles se completan durante /fix-issue - **Commits atómicos**: issue + índice en un solo commit ## Troubleshooting ### Error: "Missing --text parameter" **Causa:** El comando fue invocado sin el parámetro `--text`. **Solución:** Este comando debe ser invocado automáticamente por la TUI. No invocar manualmente. ### Error: "Working tree not clean" **Causa:** Hay cambios pendientes. **Solución:** ```bash git status git stash # Reintentar desde TUI git stash pop ``` ## Reglas críticas - **SIEMPRE auto-detectar número de issue** - no pedirlo - **USAR --text como título completo** - no truncar - **NO pedir confirmación** - flujo automático - **Template minimalista** - los detalles se agregan en /fix-issue - **REPORTAR resultado claramente** - mostrar número y path del issue