specleap-framework 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/.agents/backend.md +419 -0
  2. package/.agents/frontend.md +577 -0
  3. package/.agents/producto.md +516 -0
  4. package/.commands/adoptar.md +323 -0
  5. package/.commands/ayuda.md +142 -0
  6. package/.commands/crear-tickets.md +55 -0
  7. package/.commands/documentar.md +285 -0
  8. package/.commands/explicar.md +234 -0
  9. package/.commands/implementar.md +383 -0
  10. package/.commands/inicio.md +824 -0
  11. package/.commands/nuevo/README.md +292 -0
  12. package/.commands/nuevo/questions-base.yaml +320 -0
  13. package/.commands/nuevo/responses-example.yaml +53 -0
  14. package/.commands/planificar.md +253 -0
  15. package/.commands/refinar.md +306 -0
  16. package/LICENSE +21 -0
  17. package/README.md +603 -0
  18. package/SETUP.md +351 -0
  19. package/install.sh +152 -0
  20. package/package.json +60 -0
  21. package/proyectos/_template/.gitkeep +1 -0
  22. package/proyectos/_template/ANEXOS.md +21 -0
  23. package/proyectos/_template/CONTRATO.md +26 -0
  24. package/proyectos/_template/context/.gitkeep +1 -0
  25. package/rules/development-rules.md +113 -0
  26. package/rules/environment-protection.md +97 -0
  27. package/rules/git-workflow.md +142 -0
  28. package/rules/session-protocol.md +121 -0
  29. package/scripts/README.md +129 -0
  30. package/scripts/analyze-project.sh +826 -0
  31. package/scripts/create-asana-tasks.sh +133 -0
  32. package/scripts/detect-project-type.sh +141 -0
  33. package/scripts/estimate-effort.sh +290 -0
  34. package/scripts/generate-asana-structure.sh +262 -0
  35. package/scripts/generate-contract.sh +360 -0
  36. package/scripts/generate-contrato.sh +555 -0
  37. package/scripts/install-git-hooks.sh +141 -0
  38. package/scripts/install-skills.sh +130 -0
  39. package/scripts/lib/asana-utils.sh +191 -0
  40. package/scripts/lib/jira-project-utils.sh +222 -0
  41. package/scripts/lib/questions.json +831 -0
  42. package/scripts/lib/render-contrato.py +195 -0
  43. package/scripts/lib/validate.sh +325 -0
  44. package/scripts/parse-contrato.sh +190 -0
  45. package/scripts/setup-mcp.sh +654 -0
  46. package/scripts/test-cuestionario.sh +428 -0
  47. package/setup.sh +458 -0
@@ -0,0 +1,323 @@
1
+ # Comando: adoptar
2
+
3
+ **Sintaxis:** `adoptar [ruta-proyecto]`
4
+
5
+ **Objetivo:** Adoptar proyecto legacy/existente en SpecLeap, generando CONTRATO retroactivo + deuda técnica.
6
+
7
+ **Motor:** Usa `scripts/analyze-project.sh` y `scripts/estimate-effort.sh` (CLI).
8
+
9
+ ---
10
+
11
+ ## Flujo
12
+
13
+ ### 1. Validar Ruta del Proyecto
14
+
15
+ ```bash
16
+ # Verificar que existe
17
+ if [ ! -d "[ruta-proyecto]" ]; then
18
+ echo "ERROR: Ruta no encontrada"
19
+ exit 1
20
+ fi
21
+
22
+ # Verificar que NO tiene CONTRATO.md ya
23
+ if [ -f "[ruta-proyecto]/CONTRATO.md" ]; then
24
+ echo "ERROR: Proyecto ya adoptado (tiene CONTRATO.md)"
25
+ exit 1
26
+ fi
27
+ ```
28
+
29
+ **Si válido:**
30
+ ```markdown
31
+ ✅ Proyecto encontrado: [ruta-proyecto]
32
+
33
+ Iniciando análisis automático...
34
+ ```
35
+
36
+ ---
37
+
38
+ ### 2. Análisis Automático (Usar CLI)
39
+
40
+ ```bash
41
+ cd specleap
42
+ ./scripts/analyze-project.sh "[ruta-proyecto]"
43
+ ```
44
+
45
+ Este script analiza:
46
+ - ✅ Stack tecnológico (composer.json, package.json, etc.)
47
+ - ✅ Calidad código (PHPStan, ESLint)
48
+ - ✅ Dependencias obsoletas
49
+ - ✅ Estructura del proyecto
50
+ - ✅ Base de datos (migrations)
51
+ - ✅ Tests (cobertura)
52
+ - ✅ Git (commits, contribuidores)
53
+ - ✅ Documentación existente
54
+ - ✅ Seguridad (vulnerabilidades conocidas)
55
+
56
+ **Output:** `/tmp/specleap-analysis-[proyecto].json`
57
+
58
+ **Mostrar resumen:**
59
+ ```markdown
60
+ 📊 **Análisis Completo**
61
+
62
+ **Stack Detectado:**
63
+ - Backend: Laravel 10.x (PHP 8.2)
64
+ - Frontend: React 18 + Vite
65
+ - Database: MySQL 8.0
66
+ - Cache: Redis 7.x
67
+
68
+ **Calidad Código:**
69
+ - PHPStan: 127 issues (nivel 8)
70
+ - ESLint: 43 warnings
71
+ - Tests: 156 tests, 68% coverage
72
+
73
+ **Deuda Técnica Identificada:**
74
+ - 🔴 Crítica: 12 issues
75
+ - 🟡 Alta: 34 issues
76
+ - 🟢 Media: 81 issues
77
+
78
+ **Estimación:** ~240 horas de refactoring
79
+
80
+ Ver detalle: /tmp/specleap-analysis-[proyecto].json
81
+ ```
82
+
83
+ ---
84
+
85
+ ### 3. Estimar Esfuerzo (Usar CLI)
86
+
87
+ ```bash
88
+ ./scripts/estimate-effort.sh /tmp/specleap-analysis-[proyecto].json
89
+ ```
90
+
91
+ **Output:**
92
+ ```markdown
93
+ ⏱️ **Estimación de Esfuerzo**
94
+
95
+ **Refactoring Crítico:** 80 horas (2 semanas)
96
+ **Refactoring Alto:** 120 horas (3 semanas)
97
+ **Refactoring Medio:** 40 horas (1 semana)
98
+
99
+ **Total:** 240 horas (~6 semanas con 1 dev full-time)
100
+
101
+ **Prioridad sugerida:**
102
+ 1. Seguridad (vulnerabilidades)
103
+ 2. Tests críticos faltantes
104
+ 3. Dependencias obsoletas
105
+ 4. Code smells
106
+ ```
107
+
108
+ ---
109
+
110
+ ### 4. Generar CONTRATO-LEGACY.md
111
+
112
+ Usar template + datos del análisis:
113
+
114
+ ```bash
115
+ cat proyectos/_template/CONTRATO-LEGACY.md | \
116
+ sed "s/{{PROJECT_NAME}}/[nombre-proyecto]/g" | \
117
+ sed "s/{{BACKEND_FRAMEWORK}}/Laravel 10.x/g" > \
118
+ /tmp/CONTRATO-LEGACY-[proyecto].md
119
+ ```
120
+
121
+ **Completar con datos del análisis:**
122
+ - Módulos existentes (detectados)
123
+ - Stack actual (desde análisis)
124
+ - Arquitectura actual (detectada)
125
+ - Funcionalidades existentes (inferidas de código)
126
+
127
+ **Mostrar preview:**
128
+ ```markdown
129
+ 📋 **CONTRATO-LEGACY.md Generado**
130
+
131
+ [Mostrar primeras 50 líneas]
132
+
133
+ ...
134
+
135
+ ¿Aprobar? (s/n)
136
+ ```
137
+
138
+ ---
139
+
140
+ ### 5. Generar ANEXOS.md (Deuda Técnica)
141
+
142
+ ```bash
143
+ # Usar datos del análisis para generar ANEXOS
144
+ cat > /tmp/ANEXOS-[proyecto].md <<EOF
145
+ # ANEXOS — Deuda Técnica
146
+
147
+ ## Resumen
148
+
149
+ **Deuda técnica identificada:** 127 issues
150
+ **Esfuerzo estimado:** 240 horas
151
+
152
+ ---
153
+
154
+ ## Deuda Crítica (🔴 12 issues)
155
+
156
+ ### 1. Vulnerabilidad de Seguridad: SQL Injection en ProductController
157
+ **Archivo:** app/Http/Controllers/ProductController.php:45
158
+ **Descripción:** Query SQL sin prepared statements
159
+ **Impacto:** Alto — Datos sensibles expuestos
160
+ **Esfuerzo:** 2 horas
161
+ **Prioridad:** Inmediata
162
+
163
+ [... resto de issues críticos]
164
+
165
+ ---
166
+
167
+ ## Deuda Alta (🟡 34 issues)
168
+
169
+ [Lista completa]
170
+
171
+ ---
172
+
173
+ ## Deuda Media (🟢 81 issues)
174
+
175
+ [Lista completa]
176
+ EOF
177
+ ```
178
+
179
+ **Mostrar preview:**
180
+ ```markdown
181
+ 📋 **ANEXOS.md Generado (Deuda Técnica)**
182
+
183
+ **12 issues críticos identificados**
184
+ **34 issues alta prioridad**
185
+ **81 issues media prioridad**
186
+
187
+ Ver detalle completo en: /tmp/ANEXOS-[proyecto].md
188
+
189
+ ¿Aprobar? (s/n)
190
+ ```
191
+
192
+ ---
193
+
194
+ ### 6. Crear Estructura SpecLeap
195
+
196
+ Si el usuario aprueba:
197
+
198
+ ```bash
199
+ # Crear proyecto en SpecLeap
200
+ PROJECT_NAME="[slug-proyecto]"
201
+ mkdir -p proyectos/$PROJECT_NAME
202
+
203
+ # Copiar CONTRATO y ANEXOS
204
+ cp /tmp/CONTRATO-LEGACY-$PROJECT_NAME.md proyectos/$PROJECT_NAME/CONTRATO.md
205
+ cp /tmp/ANEXOS-$PROJECT_NAME.md proyectos/$PROJECT_NAME/ANEXOS.md
206
+
207
+ # Crear context/
208
+ mkdir -p proyectos/$PROJECT_NAME/context
209
+ cp proyectos/_template/context/* proyectos/$PROJECT_NAME/context/
210
+
211
+ # Crear specs/ y memory-bank/
212
+ mkdir -p proyectos/$PROJECT_NAME/specs
213
+ mkdir -p proyectos/$PROJECT_NAME/memory-bank
214
+
215
+ # Copiar .coderabbit.yaml
216
+ cp proyectos/_template/.coderabbit.yaml proyectos/$PROJECT_NAME/
217
+
218
+ echo "✅ Proyecto adoptado en proyectos/$PROJECT_NAME"
219
+ ```
220
+
221
+ ---
222
+
223
+ ### 7. Generar Tickets Asana (Deuda Técnica)
224
+
225
+ ```markdown
226
+ ¿Crear tickets en Asana para la deuda técnica? (s/n)
227
+ ```
228
+
229
+ Si el usuario acepta:
230
+
231
+ ```bash
232
+ # Generar backlog Asana desde ANEXOS.md
233
+ ./scripts/generate-asana-structure.sh proyectos/$PROJECT_NAME/ANEXOS.md
234
+
235
+ # Crear tickets
236
+ ./scripts/create-asana-tickets.sh proyectos/$PROJECT_NAME/.asana/backlog.json
237
+ ```
238
+
239
+ **Secciones generadas:**
240
+ - EPIC: Deuda Técnica Crítica (12 tareas)
241
+ - EPIC: Deuda Técnica Alta (34 tareas)
242
+ - EPIC: Refactoring (features identificadas)
243
+
244
+ ---
245
+
246
+ ### 8. Confirmar Adopción
247
+
248
+ ```markdown
249
+ ✅ **Proyecto [nombre] adoptado exitosamente**
250
+
251
+ **Ubicación:** proyectos/[proyecto-slug]/
252
+
253
+ **Archivos creados:**
254
+ - CONTRATO.md (contrato retroactivo)
255
+ - ANEXOS.md (deuda técnica)
256
+ - context/ (arquitectura, tech-stack, conventions, decisions)
257
+ - specs/ (vacío, listo para nuevas features)
258
+ - .coderabbit.yaml (config code review)
259
+
260
+ **Asana:**
261
+ - 3 secciones creadas
262
+ - 46 tareas de deuda técnica
263
+ - 127 tasks identificadas
264
+
265
+ **Próximos pasos:**
266
+
267
+ 1. **Revisar CONTRATO.md:**
268
+ ```bash
269
+ code proyectos/[proyecto-slug]/CONTRATO.md
270
+ ```
271
+
272
+ 2. **Priorizar deuda técnica:**
273
+ - Revisar tickets en Asana
274
+ - Ordenar por criticidad
275
+ - Asignar a sprints
276
+
277
+ 3. **Empezar refactoring:**
278
+ ```
279
+ refinar SCRUM-XX
280
+ implementar @plan.md
281
+ ```
282
+
283
+ 4. **Nuevas features:**
284
+ - Crear user tareas normales
285
+ - Seguir flujo estándar SpecLeap
286
+
287
+ **Análisis completo:** /tmp/specleap-analysis-[proyecto].json
288
+ ```
289
+
290
+ ---
291
+
292
+ ## Scripts CLI Usados
293
+
294
+ | Script | Propósito |
295
+ |--------|-----------|
296
+ | `scripts/analyze-project.sh` | Análisis completo del proyecto |
297
+ | `scripts/estimate-effort.sh` | Estimación de esfuerzo de refactoring |
298
+ | `scripts/generate-asana-structure.sh` | Generar backlog desde ANEXOS.md |
299
+ | `scripts/create-asana-tickets.sh` | Crear tickets en Asana |
300
+
301
+ ---
302
+
303
+ ## Requisitos
304
+
305
+ - ✅ Proyecto con código existente
306
+ - ✅ Composer/npm instalados (para análisis)
307
+ - ✅ PHPStan/ESLint (instalados automáticamente)
308
+ - ✅ Asana configurado (opcional, para tickets)
309
+
310
+ ---
311
+
312
+ ## Notas
313
+
314
+ - **No modifica el proyecto original** — Solo lo analiza
315
+ - **CONTRATO-LEGACY** es retroactivo (documenta lo existente)
316
+ - **ANEXOS** es la hoja de ruta de refactoring
317
+ - **Deuda técnica** se trata como secciones en Asana
318
+
319
+ ---
320
+
321
+ ## Próximo Comando
322
+
323
+ - `refinar SCRUM-XX` — Empezar a trabajar en deuda técnica
@@ -0,0 +1,142 @@
1
+ # Comando: ayuda
2
+
3
+ **Trigger:** Usuario escribe "ayuda", "help", "comandos", o "qué puedo hacer"
4
+
5
+ ---
6
+
7
+ ## 📚 Todos los Comandos Disponibles en SpecLeap
8
+
9
+ SpecLeap tiene **dos formas de trabajar**: Comandos conversacionales (recomendado para chat) y CLI formal (para automatización).
10
+
11
+ ---
12
+
13
+ ### 🗣️ Comandos Conversacionales (Uso en Chat)
14
+
15
+ **Para proyectos nuevos:**
16
+ - **`Hola`** — Iniciar nuevo proyecto con cuestionario 58 preguntas
17
+
18
+ **Para proyectos existentes:**
19
+ - **`refinar`** — Refinar y enriquecer user story con IA
20
+ - **`planificar`** — Generar backlog Asana desde CONTRATO.md
21
+ - **`implementar`** — Desarrollar funcionalidad según spec
22
+ - **`documentar`** — Generar/actualizar documentación técnica
23
+ - **`explicar`** — Explicar arquitectura o código existente
24
+ - **`crear-tickets`** — Alias de `planificar` (mismo comando)
25
+ - **`adoptar`** — Adoptar proyecto legacy (análisis + CONTRATO retroactivo)
26
+
27
+ **Cómo usar:** Simplemente escribe el comando en el chat con Claude/Cursor/Copilot.
28
+
29
+ Ejemplo:
30
+ ```
31
+ refinar "Como usuario quiero login con Google"
32
+ ```
33
+
34
+ ---
35
+
36
+ ### ⚙️ CLI Formal (OpenSpec - Uso en Terminal)
37
+
38
+ **Para workflow formal con propuestas de cambio:**
39
+
40
+ ```bash
41
+ # Ver todos los comandos CLI
42
+ openspec --help
43
+
44
+ # Comandos disponibles:
45
+ openspec enrich <user-story> # Refinar user story con IA
46
+ openspec new <CHANGE-ID> <titulo> # Crear propuesta de cambio
47
+ openspec ff <CHANGE-ID> # Fast-forward: generar propuesta completa
48
+ openspec apply <CHANGE-ID> # Implementar propuesta aprobada
49
+ openspec verify <CHANGE-ID> # Verificar tests y specs
50
+ openspec implement <CHANGE-ID> # Aplicar cambios de code review
51
+ openspec code-review <CHANGE-ID> # Review con CodeRabbit
52
+ openspec archive <CHANGE-ID> # Archivar propuesta completada
53
+ openspec report <CHANGE-ID> # Generar testing report
54
+ openspec status # Ver propuestas activas
55
+ ```
56
+
57
+ **Cómo usar:** Ejecuta desde terminal en la raíz del proyecto.
58
+
59
+ Ejemplo:
60
+ ```bash
61
+ cd ~/proyectos/mi-app
62
+ openspec new CHANGE-001 "Añadir autenticación JWT"
63
+ openspec ff CHANGE-001
64
+ openspec apply CHANGE-001
65
+ ```
66
+
67
+ ---
68
+
69
+ ## 🤔 ¿Cuándo Usar Cada Uno?
70
+
71
+ ### Usa **Comandos Conversacionales** cuando:
72
+ - ✅ Trabajas solo o en equipo pequeño (1-3 devs)
73
+ - ✅ Prefieres chat natural con IA
74
+ - ✅ Quieres rapidez y simplicidad
75
+ - ✅ No necesitas propuestas formales documentadas
76
+
77
+ **Perfecto para:** Indie devs, startups, prototipado rápido, proyectos personales
78
+
79
+ ---
80
+
81
+ ### Usa **CLI OpenSpec** cuando:
82
+ - ✅ Trabajas en equipo grande (4+ devs)
83
+ - ✅ Necesitas propuestas de cambio formales y trazables
84
+ - ✅ Quieres workflow estructurado (propuesta → diseño → implementación → review → archivo)
85
+ - ✅ Necesitas auditoría completa de cambios
86
+
87
+ **Perfecto para:** Empresas, equipos distribuidos, proyectos enterprise, compliance/auditoría
88
+
89
+ ---
90
+
91
+ ## 🔄 ¿Se Pueden Combinar?
92
+
93
+ **Sí.** Puedes usar comandos conversacionales para el día a día y CLI para cambios grandes/críticos:
94
+
95
+ ```
96
+ Desarrollo normal:
97
+ implementar "fix bug login" (conversacional - rápido)
98
+
99
+ Feature grande:
100
+ openspec new CHANGE-015 "Rediseño completo autenticación"
101
+ openspec ff CHANGE-015
102
+ openspec apply CHANGE-015 (CLI - formal + trazable)
103
+ ```
104
+
105
+ ---
106
+
107
+ ## 📖 Documentación Completa
108
+
109
+ - **Comandos conversacionales:** Ver archivos `.commands/*.md`
110
+ - **CLI OpenSpec:** `openspec/README.md` y `openspec/cli/COMMAND_REFERENCE.md`
111
+ - **Guía completa:** `README.md`
112
+
113
+ ---
114
+
115
+ ## 💡 Atajos Rápidos
116
+
117
+ **Ver este mensaje de ayuda:**
118
+ ```
119
+ ayuda
120
+ help
121
+ comandos
122
+ ```
123
+
124
+ **Listar proyectos:**
125
+ ```
126
+ ls proyectos/
127
+ ```
128
+
129
+ **Ver estado de un proyecto:**
130
+ ```
131
+ cd proyectos/mi-proyecto
132
+ cat CONTRATO.md
133
+ ```
134
+
135
+ **Ver comandos CLI disponibles:**
136
+ ```bash
137
+ openspec --help
138
+ ```
139
+
140
+ ---
141
+
142
+ ¿Necesitas ayuda con algún comando específico? Dime cuál y te explico en detalle.
@@ -0,0 +1,55 @@
1
+ # Comando: crear-tickets
2
+
3
+ **Sintaxis:** `crear-tickets` o `crear-tickets @CONTRATO.md`
4
+
5
+ **Objetivo:** Generar tareas de Asana desde el CONTRATO.md.
6
+
7
+ **Nota:** Este comando es un alias de `planificar`. Ambos hacen lo mismo.
8
+
9
+ ---
10
+
11
+ ## Uso Rápido
12
+
13
+ ```
14
+ crear-tickets
15
+ ```
16
+
17
+ Es equivalente a:
18
+
19
+ ```
20
+ planificar
21
+ ```
22
+
23
+ ---
24
+
25
+ ## Motor
26
+
27
+ Usa el mismo CLI que `planificar`:
28
+ - `scripts/generate-asana-structure.sh` — Generar proyecto y tareas en Asana
29
+
30
+ ---
31
+
32
+ ## Flujo
33
+
34
+ Ver documentación completa en: `.commandsplanificar.md`
35
+
36
+ **Resumen:**
37
+ 1. Leer CONTRATO.md
38
+ 2. Generar estructura (secciones + tareas)
39
+ 3. Mostrar preview
40
+ 4. Crear en Asana si el usuario aprueba
41
+
42
+ ---
43
+
44
+ ## ¿Por qué dos comandos?
45
+
46
+ Histórico: `crear-tickets` era el nombre original, luego se renombró a `planificar` por claridad.
47
+
48
+ **Recomendación:** Usa `planificar` (más claro).
49
+
50
+ ---
51
+
52
+ ## Referencia
53
+
54
+ - **Comando principal:** `.commandsplanificar.md`
55
+ - **CLI:** `scripts/generate-asana-structure.sh`, `scripts/create-asana-tasks.sh`