@thatix.io/context-first-agents-cli 0.1.0 → 0.2.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 (89) hide show
  1. package/README.md +189 -7
  2. package/dist/commands/create-orchestrator.js +4 -1
  3. package/dist/commands/doctor.js +21 -5
  4. package/dist/commands/init.js +3 -1
  5. package/dist/templates/commands/en/engineer/plan.md +301 -0
  6. package/dist/templates/commands/en/engineer/pr.md +194 -0
  7. package/dist/templates/commands/en/engineer/pre-pr.md +325 -0
  8. package/dist/templates/commands/en/engineer/start.md +285 -0
  9. package/dist/templates/commands/en/engineer/work.md +256 -0
  10. package/dist/templates/commands/en/products/check.md +237 -0
  11. package/dist/templates/commands/en/products/collect.md +170 -0
  12. package/dist/templates/commands/en/products/refine.md +231 -0
  13. package/dist/templates/commands/en/products/spec.md +273 -0
  14. package/dist/templates/commands/en/quality/metrics.md +266 -0
  15. package/dist/templates/commands/en/quality/observe.md +172 -0
  16. package/dist/templates/commands/en/warm-up.md +59 -0
  17. package/dist/templates/commands/es/agents/CONTEXT-CONTRACT.md +63 -0
  18. package/dist/templates/commands/es/agents/implementer.md +27 -0
  19. package/dist/templates/commands/es/agents/integrator.md +24 -0
  20. package/dist/templates/commands/es/agents/reviewer.md +31 -0
  21. package/dist/templates/commands/es/agents/tester.md +22 -0
  22. package/dist/templates/commands/es/engineer/plan.md +335 -0
  23. package/dist/templates/commands/es/engineer/pr.md +228 -0
  24. package/dist/templates/commands/es/engineer/pre-pr.md +359 -0
  25. package/dist/templates/commands/es/engineer/start.md +318 -0
  26. package/dist/templates/commands/es/engineer/work.md +290 -0
  27. package/dist/templates/commands/es/orchestrate.md +125 -0
  28. package/dist/templates/commands/es/products/check.md +271 -0
  29. package/dist/templates/commands/es/products/collect.md +218 -0
  30. package/dist/templates/commands/es/products/refine.md +265 -0
  31. package/dist/templates/commands/es/products/spec.md +306 -0
  32. package/dist/templates/commands/es/quality/metrics.md +300 -0
  33. package/dist/templates/commands/es/quality/observe.md +205 -0
  34. package/dist/templates/commands/es/warm-up.md +59 -0
  35. package/dist/templates/commands/pt-BR/engineer/plan.md +335 -0
  36. package/dist/templates/commands/pt-BR/engineer/pr.md +228 -0
  37. package/dist/templates/commands/pt-BR/engineer/pre-pr.md +359 -0
  38. package/dist/templates/commands/pt-BR/engineer/start.md +319 -0
  39. package/dist/templates/commands/pt-BR/engineer/work.md +290 -0
  40. package/dist/templates/commands/pt-BR/products/check.md +271 -0
  41. package/dist/templates/commands/pt-BR/products/collect.md +219 -0
  42. package/dist/templates/commands/pt-BR/products/refine.md +265 -0
  43. package/dist/templates/commands/pt-BR/products/spec.md +307 -0
  44. package/dist/templates/commands/pt-BR/quality/metrics.md +300 -0
  45. package/dist/templates/commands/pt-BR/quality/observe.md +206 -0
  46. package/dist/templates/commands/pt-BR/warm-up.md +59 -0
  47. package/package.json +7 -3
  48. package/templates/commands/en/engineer/plan.md +301 -0
  49. package/templates/commands/en/engineer/pr.md +194 -0
  50. package/templates/commands/en/engineer/pre-pr.md +325 -0
  51. package/templates/commands/en/engineer/start.md +285 -0
  52. package/templates/commands/en/engineer/work.md +256 -0
  53. package/templates/commands/en/products/check.md +237 -0
  54. package/templates/commands/en/products/collect.md +170 -0
  55. package/templates/commands/en/products/refine.md +231 -0
  56. package/templates/commands/en/products/spec.md +273 -0
  57. package/templates/commands/en/quality/metrics.md +266 -0
  58. package/templates/commands/en/quality/observe.md +172 -0
  59. package/templates/commands/en/warm-up.md +59 -0
  60. package/templates/commands/es/agents/CONTEXT-CONTRACT.md +63 -0
  61. package/templates/commands/es/agents/implementer.md +27 -0
  62. package/templates/commands/es/agents/integrator.md +24 -0
  63. package/templates/commands/es/agents/reviewer.md +31 -0
  64. package/templates/commands/es/agents/tester.md +22 -0
  65. package/templates/commands/es/engineer/plan.md +335 -0
  66. package/templates/commands/es/engineer/pr.md +228 -0
  67. package/templates/commands/es/engineer/pre-pr.md +359 -0
  68. package/templates/commands/es/engineer/start.md +318 -0
  69. package/templates/commands/es/engineer/work.md +290 -0
  70. package/templates/commands/es/orchestrate.md +125 -0
  71. package/templates/commands/es/products/check.md +271 -0
  72. package/templates/commands/es/products/collect.md +218 -0
  73. package/templates/commands/es/products/refine.md +265 -0
  74. package/templates/commands/es/products/spec.md +306 -0
  75. package/templates/commands/es/quality/metrics.md +300 -0
  76. package/templates/commands/es/quality/observe.md +205 -0
  77. package/templates/commands/es/warm-up.md +59 -0
  78. package/templates/commands/pt-BR/engineer/plan.md +335 -0
  79. package/templates/commands/pt-BR/engineer/pr.md +228 -0
  80. package/templates/commands/pt-BR/engineer/pre-pr.md +359 -0
  81. package/templates/commands/pt-BR/engineer/start.md +319 -0
  82. package/templates/commands/pt-BR/engineer/work.md +290 -0
  83. package/templates/commands/pt-BR/products/check.md +271 -0
  84. package/templates/commands/pt-BR/products/collect.md +219 -0
  85. package/templates/commands/pt-BR/products/refine.md +265 -0
  86. package/templates/commands/pt-BR/products/spec.md +307 -0
  87. package/templates/commands/pt-BR/quality/metrics.md +300 -0
  88. package/templates/commands/pt-BR/quality/observe.md +206 -0
  89. package/templates/commands/pt-BR/warm-up.md +59 -0
@@ -0,0 +1,265 @@
1
+ # Refinamiento de Requisitos
2
+
3
+ Usted es un especialista en producto encargado de ayudar a refinar requisitos para el proyecto.
4
+
5
+ ## ⚠️ IMPORTANTE: Este Comando NO Implementa Código
6
+
7
+ **Este comando es SÓLO para planificación y documentación:**
8
+ - ✅ Validar requisitos contra metaspecs
9
+ - ✅ Crear especificación refinada
10
+ - ✅ Guardar documentación en `.sessions/`
11
+ - ✅ Actualizar issue en el gestor de tareas
12
+ - ❌ **NO implementar código**
13
+ - ❌ **NO hacer ediciones en archivos de código**
14
+ - ❌ **NO ejecutar pruebas o deploy**
15
+
16
+ **Próximo paso**: `/spec [ISSUE-ID]` para crear PRD completo basado en los requisitos refinados.
17
+
18
+ ---
19
+
20
+ ## 📋 Configuración del Proyecto
21
+
22
+ **⚠️ IMPORTANTE: ¡Siempre lea los archivos de configuración del proyecto ANTES de ejecutar este comando!**
23
+
24
+ ### Archivos Obligatorios
25
+
26
+ 1. **`context-manifest.json`** (raíz del orchestrator)
27
+ - Lista de repositorios del proyecto
28
+ - Roles de cada repositorio (metaspecs, application, etc.)
29
+ - URLs y dependencias entre repositorios
30
+
31
+ 2. **`ai.properties.md`** (raíz del orchestrator)
32
+ - Configuraciones del proyecto (`project_name`, `base_path`)
33
+ - Sistema de gestión de tareas (`task_management_system`)
34
+ - Credenciales y configuraciones específicas
35
+
36
+ ### Cómo Leer
37
+
38
+ ```bash
39
+ # 1. Leer context-manifest.json
40
+ cat context-manifest.json
41
+
42
+ # 2. Leer ai.properties.md
43
+ cat ai.properties.md
44
+ ```
45
+
46
+ ### Información Esencial
47
+
48
+ Después de leer los archivos, usted tendrá:
49
+ - ✅ Lista completa de repositorios del proyecto
50
+ - ✅ Ubicación del repositorio de metaspecs
51
+ - ✅ Base path para localizar repositorios
52
+ - ✅ Sistema de gestión de tareas configurado
53
+ - ✅ Configuraciones específicas del proyecto
54
+
55
+ **🛑 NO continúe sin leer estos archivos!** Contienen información crítica para la correcta ejecución del comando.
56
+
57
+
58
+ ## Objetivo
59
+
60
+ Transformar un requisito inicial en especificación refinada y validada, lista para convertirse en un PRD completo.
61
+
62
+ ## Proceso
63
+
64
+ ### 1. Fase de Aclaración
65
+
66
+ Lea el requisito inicial y haga preguntas para alcanzar claridad total sobre:
67
+ - **Objetivo**: ¿Por qué construir esto?
68
+ - **Valor de Negocio**: ¿Qué métrica/persona impacta?
69
+ - **Alcance**: ¿Qué incluye y qué NO incluye?
70
+ - **Interacciones**: ¿Qué funcionalidades/componentes existentes se ven afectados?
71
+
72
+ Continúe haciendo preguntas hasta tener entendimiento completo.
73
+
74
+ ### 2. Validación Contra Metaspecs
75
+
76
+ **IMPORTANTE**: Primero lea `ai.properties.md` para obtener el `base_path`. Los índices YA deben estar en contexto (usted ejecutó `/warm-up`). Consulte los índices y lea SÓLO los documentos relevantes para validar el requisito.
77
+
78
+ **Proceso de Validación**:
79
+
80
+ 1. **Consulte los índices cargados** por `/warm-up`:
81
+ - Lea `context-manifest.json` para encontrar el repositorio con `role: "metaspecs"`
82
+ - Obtenga el `id` de ese repositorio (ej: "my-project-metaspecs")
83
+ - Lea `ai.properties.md` para obtener el `base_path`
84
+ - El repositorio de metaspecs está en: `{base_path}/{metaspecs-id}/`
85
+ - Consulte `{base_path}/{metaspecs-id}/index.md` - Visión general del proyecto
86
+ - Consulte índices específicos (ej: `specs/business/index.md`, `specs/technical/index.md`)
87
+
88
+ 2. **Identifique documentos relevantes** para este requisito específico:
89
+ - En `specs/business/`: ¿Qué documentos de negocio son relevantes?
90
+ - En `specs/technical/`: ¿Qué documentos técnicos son relevantes?
91
+
92
+ 3. **Lea SÓLO los documentos relevantes** identificados (¡no lea todo!)
93
+
94
+ 4. **Valide el requisito** contra las metaspecs leídas:
95
+ - ✅ Alineación con estrategia y visión de producto
96
+ - ✅ Atiende necesidades de las personas correctas
97
+ - ✅ Compatible con stack tecnológico aprobado
98
+ - ✅ Respeta decisiones arquitectónicas (ADRs)
99
+ - ✅ Sigue reglas de negocio existentes
100
+ - ⚠️ Identifique conflictos o violaciones
101
+
102
+ **Si identifica violaciones**: 🛑 **PARE** y pida aclaración al usuario antes de continuar (Principio Jidoka).
103
+
104
+ ### 3. Fase de Resumen y Aprobación
105
+
106
+ Una vez que haya recopilado información suficiente y validado contra metaspecs, presente un resumen estructurado con:
107
+ - **Feature**: Nombre de la funcionalidad
108
+ - **Objetivo**: Por qué construir (1-2 frases)
109
+ - **Valor de Negocio**: Métrica, persona, fase del roadmap (consulte metaspecs)
110
+ - **Alcance**: Qué INCLUYE y qué NO INCLUYE
111
+ - **Componentes Afectados**: Lista basada en la arquitectura actual (consulte metaspecs técnicas)
112
+ - **Validación contra Metaspecs**: ✅ Aprobado / ⚠️ Atención necesaria
113
+ - **Estimación de Esfuerzo**: Pequeño (< 1 día) / Medio (1-3 días) / Grande (3-5 días) / Muy Grande (> 5 días)
114
+
115
+ **Evaluación de Complejidad y Sugerencia de División**:
116
+
117
+ **Si la implementación parece grande** (> 5 días de esfuerzo estimado):
118
+ - 🚨 **Sugiera dividir en múltiples issues más pequeñas**
119
+ - Explique el razonamiento de la división (ej: "Esta feature involucra 3 áreas distintas que pueden implementarse independientemente")
120
+ - Proponga una división **lógica** basada en:
121
+ - Funcionalidades independientes
122
+ - Repositorios diferentes
123
+ - Capas de la aplicación (backend, frontend, infra)
124
+ - Fases de implementación (MVP, mejoras, optimizaciones)
125
+ - Ejemplo de división:
126
+ ```
127
+ Issue Original: "Sistema de notificaciones multicanal"
128
+
129
+ División Sugerida:
130
+ - FIN-201: Infraestructura de colas y workers (backend)
131
+ - FIN-202: Notificaciones por email (backend + templates)
132
+ - FIN-203: Notificaciones push (backend + mobile)
133
+ - FIN-204: Preferencias de notificación (frontend + backend)
134
+ ```
135
+ - **Importante**: La decisión final es del usuario - puede aceptar la división o mantener como issue única
136
+
137
+ **Si el usuario acepta la división**:
138
+ - Documente cada issue por separado
139
+ - Añada referencias cruzadas entre las issues relacionadas
140
+ - Sugiera orden de implementación si hay dependencias
141
+ - Cada issue dividida debe pasar por el mismo proceso de refinamiento
142
+
143
+ Solicite aprobación del usuario e incorpore feedback si es necesario.
144
+
145
+ **Consejo**: Puede investigar en el código base o internet antes de finalizar, si es necesario.
146
+
147
+ ### 4. Guardado de los Requisitos Refinados
148
+
149
+ Una vez que el usuario apruebe, guarde los requisitos:
150
+
151
+ **IMPORTANTE**: Siempre cree backup local Y actualice el gestor de tareas (si está configurado).
152
+
153
+ **Proceso de Guardado**:
154
+
155
+ 1. **SIEMPRE crear backup local primero**:
156
+ - Cree archivo completo en `./.sessions/<ISSUE-ID>/refined.md` (ej: `./.sessions/FIN-5/refined.md`)
157
+ - Donde `<ISSUE-ID>` es el ID de la issue (ej: FIN-5, FIN-123)
158
+ - Incluya TODOS los detalles del refinamiento (backup completo)
159
+
160
+ 2. **Si el gestor de tareas está configurado** (lea `ai.properties.md` para identificar `task_management_system`):
161
+ - Identifique la herramienta MCP del gestor de tareas
162
+ - **Actualice el BODY (descripción) de la issue** con versión CONCISA de los requisitos refinados
163
+ - Para Jira: Use MCP de Jira con campo `description`
164
+ - Para Linear: Use MCP de Linear con campo `description`
165
+ - Para GitHub: Use MCP de GitHub con campo `body`
166
+ - Para Azure Boards: Use MCP de Azure Boards con campo `description`
167
+ - Incluya todo el contenido refinado en el campo description/body de la issue
168
+ - Si el contenido es muy extenso y hay error de API, considere crear versión resumida
169
+ - **SIEMPRE sobrescriba** el body existente (no añadir al final)
170
+
171
+ **Observación**:
172
+ - El backup local SIEMPRE está guardado y completo
173
+ - Si hay error de API, verifique manualmente si la issue fue actualizada en el gestor de tareas
174
+
175
+ **Plantilla de Salida**:
176
+
177
+ **IMPORTANTE**: La plantilla estándar para requisitos refinados puede estar documentada en el repositorio de metaspecs. Consulte `{base_path}/{metaspecs-id}/specs/refined/` o similar.
178
+
179
+ **Plantilla COMPLETA** (para backup local `.sessions/<ISSUE-ID>/refined.md`):
180
+ - **Metadatos**: Issue, ID, Task Manager, Proyecto, Fecha, Sprint, Prioridad
181
+ - **🎯 POR QUÉ**: Razones, valor de negocio, métrica, persona, alineamiento estratégico
182
+ - **📦 QUÉ**: Funcionalidades detalladas, componentes afectados, integraciones, alcance negativo completo
183
+ - **🔧 CÓMO**: Stack, patrones de código, estructura de archivos, dependencias, orden de implementación, modos de fallo, consideraciones de performance/costo/UX
184
+ - **✅ Validación contra Metaspecs**: Documentos consultados (business y technical), ADRs verificados, resultado de la validación
185
+ - **📊 Métricas de Éxito**: Técnicas, producto/UX, criterios de aceptación
186
+ - **🔄 Impacto en el Producto**: Alineamiento con objetivos, habilitadores, riesgos mitigados
187
+ - **⚠️ Limitaciones Conocidas**: Limitaciones del MVP
188
+ - **📝 Checklist de Implementación**: Tareas por área (backend, frontend, pruebas, seguridad, etc.)
189
+
190
+ **Plantilla para Gestor de Tareas**:
191
+ ```markdown
192
+ # [Nombre Feature] - Requisitos Refinados
193
+
194
+ **Sprint X** | **Y días** | **Prioridad**
195
+
196
+ ## Objetivo
197
+ [1-2 párrafos: qué es y por qué hacerlo]
198
+
199
+ ## Alcance
200
+
201
+ ### Principales Funcionalidades
202
+ - Funcionalidad 1: [resumen]
203
+ - Funcionalidad 2: [resumen]
204
+ - Validaciones/Guards: [resumen]
205
+
206
+ ### Componentes Afectados
207
+ - Componente 1: [tipo de cambio]
208
+ - Componente 2: [tipo de cambio]
209
+
210
+ ### Seguridad
211
+ ✅ [item 1] ✅ [item 2] ✅ [item 3]
212
+
213
+ ## Alcance Negativo
214
+ ❌ [item 1] ❌ [item 2] ❌ [item 3]
215
+
216
+ ## Stack
217
+ [Tech stack resumida por área]
218
+
219
+ ## Estructura
220
+ [Árbol de archivos RESUMIDO - módulos principales solamente]
221
+
222
+ ## Modos de Fallo (Evitar)
223
+ 🔴 [crítico 1] 🔴 [crítico 2]
224
+ 🟡 [medio 1] 🟡 [medio 2]
225
+
226
+ ## Criterios de Aceptación
227
+ - [ ] [item 1]
228
+ - [ ] [item 2]
229
+ - [ ] [item 3]
230
+
231
+ ## Validación
232
+ **ADRs**: [lista]
233
+ **Specs**: [principales]
234
+ **Estado**: ✅ Aprobado
235
+
236
+ **Impacto**: [resumen]
237
+ **Limitaciones**: [resumen]
238
+
239
+ ---
240
+ 📄 **Documento completo**: `.sessions/<ISSUE-ID>/refined.md`
241
+ ```
242
+
243
+ **Audiencia**: Desarrollador IA con capacidades similares a las suyas. Sea conciso pero completo.
244
+
245
+ ---
246
+
247
+ **Requisito para Refinar**:
248
+
249
+ ```
250
+ #$ARGUMENTS
251
+ ```
252
+
253
+ ---
254
+
255
+ ## 🎯 Próximo Paso
256
+
257
+ **Tras la aprobación del usuario y el guardado de los requisitos refinados**, el flujo natural es:
258
+
259
+ ```bash
260
+ /spec [ISSUE-ID]
261
+ ```
262
+
263
+ **Ejemplo**: `/spec FIN-3`
264
+
265
+ Este comando creará un PRD (Product Requirements Document) completo basado en los requisitos refinados, detallando funcionalidades, user stories, criterios de aceptación y validaciones finales.
@@ -0,0 +1,306 @@
1
+ # Creación de Especificación (PRD)
2
+
3
+ Este comando crea la especificación completa (Product Requirements Document) de la funcionalidad.
4
+
5
+ ## ⚠️ IMPORTANTE: Este Comando NO Implementa Código
6
+
7
+ **Este comando es SÓLO para documentación de requisitos:**
8
+ - ✅ Crear PRD (Product Requirements Document)
9
+ - ✅ Actualizar issue en el gestor de tareas vía MCP
10
+ - ✅ **LEER** archivos de los repositorios principales (solo lectura)
11
+ - ❌ **NO implementar código**
12
+ - ❌ **NO hacer ediciones en archivos de código**
13
+ - ❌ **NO hacer checkout de branches en los repositorios principales**
14
+ - ❌ **NO hacer commits**
15
+
16
+ **Próximo paso**: `/orchestrate <ISSUE-ID>` para derivar el grafo de agentes y ejecutar (recomendado). `/start` queda como escape hatch manual.
17
+
18
+ ---
19
+
20
+ ## 📋 Configuración del Proyecto
21
+
22
+ **⚠️ IMPORTANTE: ¡Siempre lea los archivos de configuración del proyecto ANTES de ejecutar este comando!**
23
+
24
+ ### Archivos Obligatorios
25
+
26
+ 1. **`context-manifest.json`** (raíz del orquestador)
27
+ - Lista de repositorios del proyecto
28
+ - Roles de cada repositorio (metaspecs, application, etc.)
29
+ - URLs y dependencias entre repositorios
30
+
31
+ 2. **`ai.properties.md`** (raíz del orquestador)
32
+ - Configuraciones del proyecto (`project_name`, `base_path`)
33
+ - Sistema de gestión de tareas (`task_management_system`)
34
+ - Credenciales y configuraciones específicas
35
+
36
+ ### Cómo Leer
37
+
38
+ ```bash
39
+ # 1. Leer context-manifest.json
40
+ cat context-manifest.json
41
+
42
+ # 2. Leer ai.properties.md
43
+ cat ai.properties.md
44
+ ```
45
+
46
+ ### Información Esencial
47
+
48
+ Después de leer los archivos, tendrás:
49
+ - ✅ Lista completa de repositorios del proyecto
50
+ - ✅ Ubicación del repositorio de metaspecs
51
+ - ✅ Base path para localizar repositorios
52
+ - ✅ Sistema de gestión de tareas configurado
53
+ - ✅ Configuraciones específicas del proyecto
54
+
55
+ **🛑 NO continúe sin leer estos archivos!** Contienen información crítica para la correcta ejecución del comando.
56
+
57
+ ## 📋 Pre-requisitos
58
+
59
+ - Issue refinada vía `/refine`
60
+ - Aprobación para continuar con la funcionalidad
61
+
62
+ ## 📚 Cargar MetaSpecs
63
+
64
+ **Localizar MetaSpecs automáticamente**:
65
+ 1. Lea `context-manifest.json` del orquestador
66
+ 2. Encuentre el repositorio con `"role": "metaspecs"`
67
+ 3. Lea `ai.properties.md` para obtener el `base_path`
68
+ 4. El metaspecs está en: `{base_path}/{metaspecs-repo-id}/`
69
+ 5. Lea los archivos `index.md` relevantes para asegurar conformidad con:
70
+ - Arquitectura del sistema
71
+ - Patrones de diseño
72
+ - Restricciones técnicas
73
+ - Convenciones del proyecto
74
+
75
+ ## 🎯 Objetivo
76
+
77
+ Crear un PRD completo que servirá como fuente única de verdad para la implementación.
78
+
79
+ ## 📝 Estructura del PRD
80
+
81
+ ### 1. Visión General
82
+
83
+ ```markdown
84
+ # [Título de la Funcionalidad]
85
+
86
+ ## Contexto
87
+ [¿Por qué estamos construyendo esto? ¿Qué problema resuelve?]
88
+
89
+ ## Objetivo
90
+ [¿Qué queremos lograr con esta funcionalidad?]
91
+
92
+ ## Métricas de Éxito
93
+ - [Métrica 1]: [Cómo medir]
94
+ - [Métrica 2]: [Cómo medir]
95
+ ```
96
+
97
+ ### 2. Requisitos Funcionales
98
+
99
+ ```markdown
100
+ ## Requisitos Funcionales
101
+
102
+ ### RF-01: [Nombre del Requisito]
103
+ **Descripción**: [Descripción detallada]
104
+ **Prioridad**: Must Have / Should Have / Could Have
105
+ **Repositorios**: [repos afectados]
106
+
107
+ ### RF-02: [Nombre del Requisito]
108
+ **Descripción**: [Descripción detallada]
109
+ **Prioridad**: Must Have / Should Have / Could Have
110
+ **Repositorios**: [repos afectados]
111
+ ```
112
+
113
+ ### 3. Requisitos No Funcionales
114
+
115
+ ```markdown
116
+ ## Requisitos No Funcionales
117
+
118
+ ### Performance
119
+ - [Requisito de performance]
120
+
121
+ ### Seguridad
122
+ - [Requisito de seguridad]
123
+
124
+ ### Accesibilidad
125
+ - [Requisito de accesibilidad]
126
+
127
+ ### Escalabilidad
128
+ - [Requisito de escalabilidad]
129
+ ```
130
+
131
+ ### 4. Flujos de Usuario
132
+
133
+ ```markdown
134
+ ## Flujos de Usuario
135
+
136
+ ### Flujo Principal
137
+ 1. [Paso 1]
138
+ 2. [Paso 2]
139
+ 3. [Paso 3]
140
+
141
+ ### Flujos Alternativos
142
+ **Escenario**: [Nombre del escenario]
143
+ 1. [Paso 1]
144
+ 2. [Paso 2]
145
+
146
+ ### Manejo de Errores
147
+ **Error**: [Tipo de error]
148
+ **Comportamiento**: [Cómo debe reaccionar el sistema]
149
+ ```
150
+
151
+ ### 5. Especificación Técnica
152
+
153
+ ```markdown
154
+ ## Especificación Técnica
155
+
156
+ ### Arquitectura
157
+
158
+ #### <repo-1>
159
+ - **Componentes nuevos**: [lista]
160
+ - **Componentes modificados**: [lista]
161
+ - **APIs**: [endpoints nuevos/modificados]
162
+
163
+ #### <repo-2>
164
+ - **Componentes nuevos**: [lista]
165
+ - **Componentes modificados**: [lista]
166
+ - **APIs**: [endpoints nuevos/modificados]
167
+
168
+ ### Integraciones
169
+ - **Entre repos**: [cómo se comunican los repos]
170
+ - **Externas**: [APIs externas, si las hay]
171
+
172
+ ### Modelo de Datos
173
+ [Describa cambios en el modelo de datos, si los hay]
174
+ ```
175
+
176
+ ### 6. Criterios de Aceptación
177
+
178
+ ```markdown
179
+ ## Criterios de Aceptación
180
+
181
+ ### Funcional
182
+ - [ ] [Criterio específico y comprobable]
183
+ - [ ] [Criterio específico y comprobable]
184
+
185
+ ### Técnico
186
+ - [ ] Pruebas unitarias con cobertura >= X%
187
+ - [ ] Pruebas de integración implementadas
188
+ - [ ] Performance dentro de los requisitos
189
+ - [ ] Documentación actualizada
190
+
191
+ ### Calidad
192
+ - [ ] Code review aprobado
193
+ - [ ] Sin regresiones
194
+ - [ ] Accesibilidad validada
195
+ ```
196
+
197
+ ### 7. Fuera del Alcance
198
+
199
+ ```markdown
200
+ ## Fuera del Alcance
201
+
202
+ Funcionalidades que NO serán implementadas en esta versión:
203
+ - [Ítem 1]
204
+ - [Ítem 2]
205
+
206
+ Justificación: [Por qué quedan para después]
207
+ ```
208
+
209
+ ### 8. Riesgos y Mitigaciones
210
+
211
+ ```markdown
212
+ ## Riesgos y Mitigaciones
213
+
214
+ ### Riesgo 1: [Descripción]
215
+ - **Probabilidad**: Alta / Media / Baja
216
+ - **Impacto**: Alto / Medio / Bajo
217
+ - **Mitigación**: [Cómo mitigar]
218
+
219
+ ### Riesgo 2: [Descripción]
220
+ - **Probabilidad**: Alta / Media / Baja
221
+ - **Impacto**: Alto / Medio / Bajo
222
+ - **Mitigación**: [Cómo mitigar]
223
+ ```
224
+
225
+ ### 9. Dependencias
226
+
227
+ ```markdown
228
+ ## Dependencias
229
+
230
+ ### Técnicas
231
+ - [Dependencia técnica 1]
232
+ - [Dependencia técnica 2]
233
+
234
+ ### De Negocio
235
+ - [Dependencia de negocio 1]
236
+ - [Dependencia de negocio 2]
237
+
238
+ ### Bloqueadores
239
+ - [Bloqueador 1 y plan para resolver]
240
+ ```
241
+
242
+ ### 10. Plan de Pruebas
243
+
244
+ ```markdown
245
+ ## Plan de Pruebas
246
+
247
+ ### Pruebas Unitarias
248
+ - [Área 1 a probar]
249
+ - [Área 2 a probar]
250
+
251
+ ### Pruebas de Integración
252
+ - [Escenario 1]
253
+ - [Escenario 2]
254
+
255
+ ### Pruebas Manuales
256
+ - [Escenario 1]
257
+ - [Escenario 2]
258
+ ```
259
+
260
+ ## 📄 Guardado del PRD
261
+
262
+ **PRIORIDAD 1: Usar MCP (Model Context Protocol)**
263
+
264
+ - Lea `ai.properties.md` del orquestador para identificar el `task_management_system`
265
+ - Use el MCP apropiado para actualizar la issue con el PRD:
266
+ - Añada el PRD completo como comentario en la issue
267
+ - O adjunte como archivo (si el gestor de tareas lo soporta)
268
+ - Actualice estado/etiquetas (ej: "spec-ready", "ready-for-dev")
269
+ - Informe al usuario: "✅ PRD añadido a la issue [ID]"
270
+
271
+ **FALLBACK: Crear archivo .md sólo si MCP falla**
272
+
273
+ Si MCP no está disponible o falla:
274
+ - Guarde en `./.sessions/<ISSUE-ID>/prd.md`
275
+ - Informe al usuario: "⚠️ PRD guardado localmente en .sessions/ (gestor de tareas no disponible)"
276
+
277
+ ## 🔍 Revisión y Aprobación
278
+
279
+ Antes de finalizar:
280
+ 1. Revise el PRD con stakeholders
281
+ 2. Valide contra metaspecs (si están disponibles)
282
+ 3. Obtenga aprobación para iniciar implementación
283
+ 4. **Vía MCP**: Actualice la issue en el gestor de tareas con estado "Listo para Desarrollo"
284
+ 5. **Fallback**: Documente la aprobación en `./.sessions/<ISSUE-ID>/prd.md`
285
+
286
+ ---
287
+
288
+ **Argumentos proporcionados**:
289
+
290
+ ```
291
+ #$ARGUMENTS
292
+ ```
293
+
294
+ ---
295
+
296
+ ## 🎯 Próximo Paso
297
+
298
+ Después de la aprobación del PRD, ejecuta:
299
+
300
+ ```bash
301
+ /orchestrate <ISSUE-ID>
302
+ ```
303
+
304
+ Esto deriva el grafo mínimo de agentes desde la spec y lo ejecuta. `/start` + `/plan` + `/work` quedan disponibles como escape hatches manuales.
305
+
306
+ Este comando iniciará el desarrollo de la funcionalidad.