@thatix.io/context-first-agents-cli 0.1.1 → 0.2.1

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 +25 -12
  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 +83 -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 +83 -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 +83 -0
  47. package/package.json +1 -1
  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 +83 -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 +83 -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 +83 -0
@@ -0,0 +1,205 @@
1
+ # Observabilidad de Decisiones
2
+
3
+ Este comando registra decisiones importantes tomadas durante el desarrollo, creando un registro auditable para explicabilidad y trazabilidad.
4
+
5
+ ## 🎯 Objetivo
6
+
7
+ Crear un registro estructurado de decisiones técnicas y de producto, garantizando:
8
+ - **Explicabilidad**: Por qué se tomó cada decisión
9
+ - **Trazabilidad**: Qué fuentes (PRD, metaspecs, ADRs) fundamentaron la decisión
10
+ - **Auditoría**: Historial completo de elecciones para revisión futura
11
+ - **Aprendizaje**: Documentación de trade-offs y alternativas consideradas
12
+
13
+ **IMPORTANTE**: Este comando NO genera decisiones nuevas. Solo REGISTRA decisiones que ya fueron tomadas en el proceso de desarrollo.
14
+
15
+ ## 📋 Configuración del Proyecto
16
+
17
+ **⚠️ IMPORTANTE: ¡Siempre lea los archivos de configuración del proyecto ANTES de ejecutar este comando!**
18
+
19
+ ### Archivos Obligatorios
20
+
21
+ 1. **`context-manifest.json`** (raíz del orchestrator)
22
+ - Lista de repositorios del proyecto
23
+ - Roles de cada repositorio (metaspecs, application, etc.)
24
+ - URLs y dependencias entre repositorios
25
+
26
+ 2. **`ai.properties.md`** (raíz del orchestrator)
27
+ - Configuraciones del proyecto (`project_name`, `base_path`)
28
+ - Sistema de gestión de tareas (`task_management_system`)
29
+ - Credenciales y configuraciones específicas
30
+
31
+ ### Cómo Leer
32
+
33
+ ```bash
34
+ # 1. Leer context-manifest.json
35
+ cat context-manifest.json
36
+
37
+ # 2. Leer ai.properties.md
38
+ cat ai.properties.md
39
+ ```
40
+
41
+ ### Información Esencial
42
+
43
+ Después de leer los archivos, tendrás:
44
+ - ✅ Lista completa de repositorios del proyecto
45
+ - ✅ Ubicación del repositorio de metaspecs
46
+ - ✅ Base path para localizar repositorios
47
+ - ✅ Sistema de gestión de tareas configurado
48
+ - ✅ Configuraciones específicas del proyecto
49
+
50
+ **🛑 NO continúe sin leer estos archivos!** Contienen información crítica para la correcta ejecución del comando.
51
+
52
+ ## 📋 Pre-requisitos
53
+
54
+ - Haber ejecutado al menos uno de los comandos que generan decisiones:
55
+ - `/spec` - genera PRD con decisiones de producto
56
+ - `/plan` - genera plan.md con decisiones técnicas
57
+ - `/work` - implementación genera decisiones durante el desarrollo
58
+
59
+ ## 🔍 Proceso de Observación
60
+
61
+ ### 1. Identificar Decisiones Relevantes
62
+
63
+ Analice los archivos de la sesión (`./.sessions/<ISSUE-ID>/`) para identificar decisiones:
64
+
65
+ **Después de `/spec`** - Decisiones de Producto:
66
+ - Lea `./.sessions/<ISSUE-ID>/prd.md`
67
+ - Identifique decisiones en:
68
+ - Alcance (qué entra/no entra en la funcionalidad)
69
+ - Personas atendidas (quién es el público objetivo)
70
+ - Métricas de éxito (cómo medir resultados)
71
+ - Requisitos no funcionales (performance, accesibilidad)
72
+ - Restricciones y trade-offs
73
+
74
+ **Después de `/plan`** - Decisiones Técnicas:
75
+ - Lea `./.sessions/<ISSUE-ID>/plan.md`
76
+ - Identifique decisiones en:
77
+ - Arquitectura de componentes/módulos
78
+ - Elección de bibliotecas o herramientas
79
+ - Patrones de implementación
80
+ - Estructura de datos
81
+ - Estrategia de pruebas
82
+
83
+ **Durante `/work`** - Decisiones de Implementación:
84
+ - Lea `./.sessions/<ISSUE-ID>/work.md`
85
+ - Identifique decisiones en:
86
+ - Refactorizaciones realizadas
87
+ - Cambios de enfoque
88
+ - Optimizaciones aplicadas
89
+ - Tratamiento de edge cases
90
+
91
+ ### 2. Documentar Cada Decisión
92
+
93
+ Para cada decisión identificada, documente:
94
+
95
+ ```markdown
96
+ ## Decisión: [Título Claro]
97
+
98
+ **Contexto**: [¿Por qué necesitamos decidir esto? ¿Cuál es el problema o necesidad?]
99
+
100
+ **Opciones Consideradas**:
101
+ 1. **Opción A**: [Descripción]
102
+ - Pros: [ventajas]
103
+ - Contras: [desventajas]
104
+ 2. **Opción B**: [Descripción]
105
+ - Pros: [ventajas]
106
+ - Contras: [desventajas]
107
+
108
+ **Decisión**: [Opción elegida]
109
+
110
+ **Justificación**: [¿Por qué elegimos esta opción? ¿Qué criterios fueron más importantes?]
111
+
112
+ **Fuentes**:
113
+ - [PRD sección X]
114
+ - [Metaspec Y]
115
+ - [ADR-00Z]
116
+
117
+ **Trade-offs Aceptados**: [¿Qué desventajas aceptamos conscientemente?]
118
+
119
+ **Reversibilidad**: Fácil / Media / Difícil
120
+
121
+ **Fecha**: [fecha de la decisión]
122
+ ```
123
+
124
+ ### 3. Crear Registro de Decisiones
125
+
126
+ Guarde en `./.sessions/<ISSUE-ID>/decisions.md`:
127
+
128
+ ```markdown
129
+ # Registro de Decisiones - [ISSUE-ID]
130
+
131
+ ## Resumen
132
+ [Breve resumen de las principales decisiones tomadas en esta funcionalidad]
133
+
134
+ ## Decisiones de Producto
135
+
136
+ ### [Decisión 1]
137
+ [Según plantilla arriba]
138
+
139
+ ### [Decisión 2]
140
+ [Según plantilla arriba]
141
+
142
+ ## Decisiones Técnicas
143
+
144
+ ### [Decisión 3]
145
+ [Según plantilla arriba]
146
+
147
+ ### [Decisión 4]
148
+ [Según plantilla arriba]
149
+
150
+ ## Decisiones de Implementación
151
+
152
+ ### [Decisión 5]
153
+ [Según plantilla arriba]
154
+
155
+ ## Lecciones Aprendidas
156
+ - [Lección 1]
157
+ - [Lección 2]
158
+
159
+ ## Decisiones Pendientes
160
+ - [Decisión que aún necesita ser tomada]
161
+ ```
162
+
163
+ ## 📊 Análisis de Impacto
164
+
165
+ Para decisiones críticas, documente el impacto:
166
+
167
+ ```markdown
168
+ ## Análisis de Impacto
169
+
170
+ **Repositorios Afectados**: [lista]
171
+
172
+ **Componentes Impactados**: [lista]
173
+
174
+ **Dependencias Creadas**: [lista]
175
+
176
+ **Riesgos Introducidos**: [lista]
177
+
178
+ **Mitigaciones Aplicadas**: [lista]
179
+ ```
180
+
181
+ ## 🔄 Revisión de Decisiones
182
+
183
+ Periódicamente, revise las decisiones tomadas:
184
+ - ¿Siguen teniendo sentido?
185
+ - ¿Los trade-offs se demostraron correctos?
186
+ - ¿Hay aprendizajes para documentar?
187
+ - ¿Alguna decisión necesita ser revertida?
188
+
189
+ ---
190
+
191
+ **Argumentos proporcionados**:
192
+
193
+ ```
194
+ #$ARGUMENTS
195
+ ```
196
+
197
+ ---
198
+
199
+ ## 🎯 Resultado
200
+
201
+ Después de ejecutar este comando, tendrás:
202
+ - Registro completo de decisiones en `./.sessions/<ISSUE-ID>/decisions.md`
203
+ - Trazabilidad de cada elección realizada
204
+ - Documentación para futuras referencias
205
+ - Base para ADRs (si las decisiones son de arquitectura)
@@ -0,0 +1,83 @@
1
+ # Calentamiento — Carga de Contexto (índices para RAG)
2
+
3
+ Prepara el entorno cargando los **índices de las specs** en un mapa de contexto navegable.
4
+ El objetivo NO es volcar las specs en el contexto, sino cargar los **índices** para que los
5
+ comandos siguientes sepan **dónde buscar** cada información, bajo demanda.
6
+
7
+ **Argumentos**: `#$ARGUMENTS`
8
+
9
+ ---
10
+
11
+ ## 1. Cargar configuración
12
+
13
+ Lee del orquestador:
14
+ - **`context-manifest.json`** — `repositories[]` (id, role, hints), y el bloque
15
+ `orchestration` (especialmente `indexes`).
16
+ - **`ai.properties.md`** — `base_path`, `task_management_system`.
17
+
18
+ Localiza el repo de specs: el de `role: "metaspecs"` (o `"specs-provider"`).
19
+
20
+ ## 2. Descubrir los índices (dinámico — no exige ningún archivo fijo)
21
+
22
+ Arma la lista de índices a cargar, en este orden de prioridad, **saltando lo que no exista**:
23
+
24
+ 1. Todas las rutas en `orchestration.indexes` del manifiesto (si están definidas).
25
+ 2. Si no hay ninguna, o para complementar, **descubre** los índices en el repo de specs:
26
+ - busca `index.md` / `INDEX.md` bajo `{base_path}/{metaspecs-id}/specs/` y subcarpetas
27
+ (ej.: `specs/index.md`, `specs/technical/index.md`, `specs/business/index.md`,
28
+ `specs/business/features/index.md`).
29
+ 3. Incluye también, **si existen**, los archivos de `context[]` de cada repositorio del manifiesto.
30
+
31
+ > Degrada con gracia: si un índice esperado no existe, **sólo regístralo y continúa**.
32
+ > Nunca falles el calentamiento por la ausencia de un archivo específico.
33
+
34
+ ## 3. Construir el Mapa de Contexto (el producto del calentamiento)
35
+
36
+ Lee SÓLO los índices descubiertos (no los documentos que apuntan). A partir de ellos,
37
+ arma y presenta un **mapa de RAG** — la "tabla de ruteo" del proyecto:
38
+
39
+ ```
40
+ ## Mapa de Contexto (RAG)
41
+
42
+ ### Índices cargados
43
+ - specs/index.md → raíz de navegación
44
+ - specs/technical/index.md → arquitectura, API, ADRs, convenciones
45
+ - specs/business/index.md → personas, journey, estrategia
46
+ - ...(sólo los que existen)
47
+
48
+ ### Dónde buscar bajo demanda
49
+ | Necesidad | Consultar (vía índice) |
50
+ |-------------------------------|--------------------------------------|
51
+ | Arquitectura / decisiones | technical/index.md → ARCHITECTURE / ADRs |
52
+ | Contrato de API | technical/index.md → API_SPECIFICATION |
53
+ | Reglas de negocio / feature | business/index.md → features/... |
54
+ | Convenciones de código | technical/index.md → guía de código |
55
+
56
+ ### Repositorios (del manifiesto)
57
+ - <repo-id> [role] — hints: ...
58
+ ```
59
+
60
+ Si un índice referencia documentos que no existen en disco, márcalos como
61
+ `(referenciado, ausente)` — eso indica una spec incompleta, no un error del calentamiento.
62
+
63
+ ## 4. Verificar repositorios y sesión
64
+
65
+ - Para cada repo del manifiesto, confirma que existe en `{base_path}/{repo-id}/`
66
+ (no leas README ni código ahora — eso es bajo demanda).
67
+ - Si se pasó un ISSUE-ID, verifica `.sessions/<ISSUE-ID>/`.
68
+
69
+ ## 5. Cómo los comandos siguientes usan esto
70
+
71
+ Comandos como `/spec`, `/orchestrate` y los agentes NO deben escanear el repo a ciegas.
72
+ Deben: consultar el Mapa de Contexto → abrir el índice relevante → seguir el link al
73
+ documento específico. El índice es lo que optimiza el RAG: cargar poco, navegar con precisión.
74
+
75
+ ## 6. Principio Jidoka
76
+
77
+ Si detectas un problema estructural (ningún índice encontrado, specs-provider ausente):
78
+ **DETENTE**, describe qué falta y sugiere cómo corregirlo (ej.: crear `specs/index.md` o
79
+ completar `orchestration.indexes`). No inventes contexto.
80
+
81
+ ---
82
+
83
+ **Estado**: Índices cargados y Mapa de Contexto armado. Esperando el próximo comando.
@@ -0,0 +1,335 @@
1
+ # Planejamento Técnico
2
+
3
+ Este comando cria o plano técnico detalhado para implementação da feature.
4
+
5
+ ## 📋 Pré-requisitos
6
+
7
+ - PRD criado via `/spec`
8
+ - Análise inicial feita via `/start`
9
+ - Arquivos `context.md` e `architecture.md` criados e aprovados
10
+
11
+ ## 📋 Configuração do Projeto
12
+
13
+ **⚠️ IMPORTANTE: Sempre leia os arquivos de configuração do projeto ANTES de executar este comando!**
14
+
15
+ ### Arquivos Obrigatórios
16
+
17
+ 1. **`context-manifest.json`** (raiz do orchestrator)
18
+ - Lista de repositórios do projeto
19
+ - Roles de cada repositório (metaspecs, application, etc.)
20
+ - URLs e dependências entre repositórios
21
+
22
+ 2. **`ai.properties.md`** (raiz do orchestrator)
23
+ - Configurações do projeto (`project_name`, `base_path`)
24
+ - Sistema de gerenciamento de tarefas (`task_management_system`)
25
+ - Credenciais e configurações específicas
26
+
27
+ ### Como Ler
28
+
29
+ ```bash
30
+ # 1. Ler context-manifest.json
31
+ cat context-manifest.json
32
+
33
+ # 2. Ler ai.properties.md
34
+ cat ai.properties.md
35
+ ```
36
+
37
+ ### Informações Essenciais
38
+
39
+ Após ler os arquivos, você terá:
40
+ - ✅ Lista completa de repositórios do projeto
41
+ - ✅ Localização do repositório de metaspecs
42
+ - ✅ Base path para localizar repositórios
43
+ - ✅ Sistema de task management configurado
44
+ - ✅ Configurações específicas do projeto
45
+
46
+ **🛑 NÃO prossiga sem ler estes arquivos!** Eles contêm informações críticas para a execução correta do comando.
47
+
48
+
49
+ ## 📍 IMPORTANTE: Entenda a Estrutura
50
+
51
+ **Workspace**:
52
+ ```
53
+ <orchestrator>/.sessions/<ISSUE-ID>/
54
+ ├── repo-1/ # worktree (será usado no /work)
55
+ ├── repo-2/ # worktree (será usado no /work)
56
+ ├── context.md # contexto (imutável - LER)
57
+ ├── architecture.md # arquitetura (imutável - LER)
58
+ └── plan.md # plano (mutável - CRIAR)
59
+ ```
60
+
61
+ **Repositórios principais** (apenas leitura):
62
+ ```
63
+ {base_path}/repo-1/ # repo principal (branch main/master)
64
+ {base_path}/repo-2/ # repo principal (branch main/master)
65
+ ```
66
+
67
+ **REGRA DE OURO**:
68
+ - ✅ Leia `context.md` e `architecture.md` (imutáveis)
69
+ - ✅ Crie `plan.md` em `.sessions/<ISSUE-ID>/`
70
+ - ✅ Leia código dos repositórios principais (read-only)
71
+ - ❌ NUNCA faça checkout nos repositórios principais
72
+ - ❌ NUNCA modifique `context.md` ou `architecture.md`
73
+
74
+ ## ⚠️ IMPORTANTE: Arquivos Imutáveis
75
+
76
+ **Este comando deve LER mas NÃO MODIFICAR:**
77
+ - ✅ **LER** `.sessions/<ISSUE-ID>/context.md` (imutável)
78
+ - ✅ **LER** `.sessions/<ISSUE-ID>/architecture.md` (imutável)
79
+ - ✅ **CRIAR** `.sessions/<ISSUE-ID>/plan.md` (mutável - será atualizado durante `/work`)
80
+ - ❌ **NÃO modificar `context.md` ou `architecture.md`**
81
+
82
+ ## 📚 Carregar MetaSpecs
83
+
84
+ **Localizar MetaSpecs automaticamente**:
85
+ 1. Leia `context-manifest.json` do orchestrator
86
+ 2. Encontre o repositório com `"role": "metaspecs"`
87
+ 3. Leia `ai.properties.md` para obter o `base_path`
88
+ 4. O metaspecs está em: `{base_path}/{metaspecs-repo-id}/`
89
+ 5. Leia os arquivos `index.md` relevantes para garantir conformidade com:
90
+ - Arquitetura do sistema
91
+ - Padrões de design e código
92
+ - Estrutura de pastas e arquivos
93
+ - Convenções de nomenclatura
94
+
95
+ ## 🎯 Objetivo
96
+
97
+ Criar um plano técnico detalhado que guiará a implementação, dividindo o trabalho em unidades menores e sequenciais.
98
+
99
+ ## 📝 Estrutura do Plano
100
+
101
+ ### 1. Visão Geral Técnica
102
+
103
+ ```markdown
104
+ # Plano Técnico - [Título da Feature]
105
+
106
+ ## Resumo
107
+ [Breve descrição técnica do que será implementado]
108
+
109
+ ## Repositórios Envolvidos
110
+ - **<repo-1>**: [Papel nesta feature]
111
+ - **<repo-2>**: [Papel nesta feature]
112
+
113
+ ## Abordagem Técnica
114
+ [Estratégia geral de implementação]
115
+ ```
116
+
117
+ ### 2. Arquitetura da Solução
118
+
119
+ ```markdown
120
+ ## Arquitetura
121
+
122
+ ### Diagrama de Componentes
123
+ [Descrição textual ou ASCII art dos componentes e suas relações]
124
+
125
+ ### Fluxo de Dados
126
+ 1. [Passo 1 do fluxo]
127
+ 2. [Passo 2 do fluxo]
128
+ 3. [Passo 3 do fluxo]
129
+
130
+ ### Integrações
131
+ - **<repo-1> → <repo-2>**: [Como se comunicam]
132
+ - **Sistema → API Externa**: [Se houver]
133
+ ```
134
+
135
+ ### 3. Decisões Técnicas
136
+
137
+ ```markdown
138
+ ## Decisões Técnicas
139
+
140
+ ### Decisão 1: [Título]
141
+ **Contexto**: [Por que precisamos decidir isso]
142
+ **Opções consideradas**:
143
+ - Opção A: [Prós e contras]
144
+ - Opção B: [Prós e contras]
145
+ **Decisão**: [Opção escolhida]
146
+ **Justificativa**: [Por que escolhemos esta opção]
147
+
148
+ ### Decisão 2: [Título]
149
+ [Mesmo formato acima]
150
+ ```
151
+
152
+ ### 4. Plano de Implementação
153
+
154
+ Divida o trabalho em unidades pequenas e sequenciais:
155
+
156
+ ```markdown
157
+ ## Plano de Implementação
158
+
159
+ ### Fase 1: [Nome da Fase]
160
+ **Objetivo**: [O que será alcançado nesta fase]
161
+ **Repositórios**: [repos afetados]
162
+
163
+ #### Tarefa 1.1: [Descrição]
164
+ - **Repo**: <repo-1>
165
+ - **Arquivos**: [arquivos a criar/modificar]
166
+ - **Descrição**: [O que fazer]
167
+ - **Testes**: [Testes a implementar]
168
+ - **Estimativa**: [tempo estimado]
169
+
170
+ #### Tarefa 1.2: [Descrição]
171
+ - **Repo**: <repo-2>
172
+ - **Arquivos**: [arquivos a criar/modificar]
173
+ - **Descrição**: [O que fazer]
174
+ - **Testes**: [Testes a implementar]
175
+ - **Estimativa**: [tempo estimado]
176
+
177
+ ### Fase 2: [Nome da Fase]
178
+ [Mesmo formato acima]
179
+
180
+ ### Fase 3: [Nome da Fase]
181
+ [Mesmo formato acima]
182
+ ```
183
+
184
+ ### 5. Estrutura de Arquivos
185
+
186
+ Para cada repositório, defina a estrutura:
187
+
188
+ ```markdown
189
+ ## Estrutura de Arquivos
190
+
191
+ ### <repo-1>
192
+ ```
193
+ src/
194
+ ├── components/
195
+ │ ├── NewComponent.tsx (CRIAR)
196
+ │ └── ExistingComponent.tsx (MODIFICAR)
197
+ ├── services/
198
+ │ └── NewService.ts (CRIAR)
199
+ └── tests/
200
+ └── NewComponent.test.tsx (CRIAR)
201
+ ```
202
+
203
+ ### <repo-2>
204
+ ```
205
+ src/
206
+ ├── controllers/
207
+ │ └── NewController.ts (CRIAR)
208
+ └── tests/
209
+ └── NewController.test.ts (CRIAR)
210
+ ```
211
+ ```
212
+
213
+ ### 6. APIs e Contratos
214
+
215
+ ```markdown
216
+ ## APIs e Contratos
217
+
218
+ ### Endpoints Novos
219
+
220
+ #### POST /api/resource
221
+ **Request**:
222
+ ```json
223
+ {
224
+ "field1": "string",
225
+ "field2": "number"
226
+ }
227
+ ```
228
+
229
+ **Response**:
230
+ ```json
231
+ {
232
+ "id": "string",
233
+ "status": "string"
234
+ }
235
+ ```
236
+
237
+ ### Endpoints Modificados
238
+
239
+ #### GET /api/resource/:id
240
+ **Mudanças**: [O que muda]
241
+ **Breaking Change**: Sim / Não
242
+ ```
243
+
244
+ ### 7. Estratégia de Testes
245
+
246
+ ```markdown
247
+ ## Estratégia de Testes
248
+
249
+ ### Testes Unitários
250
+ - **<repo-1>**: [Componentes/funções a testar]
251
+ - **<repo-2>**: [Componentes/funções a testar]
252
+
253
+ ### Testes de Integração
254
+ - **Cenário 1**: [Descrição e repos envolvidos]
255
+ - **Cenário 2**: [Descrição e repos envolvidos]
256
+
257
+ ### Testes E2E (se aplicável)
258
+ - **Fluxo 1**: [Descrição]
259
+ - **Fluxo 2**: [Descrição]
260
+ ```
261
+
262
+ ### 8. Riscos Técnicos
263
+
264
+ ```markdown
265
+ ## Riscos Técnicos
266
+
267
+ ### Risco 1: [Descrição]
268
+ - **Impacto**: Alto / Médio / Baixo
269
+ - **Probabilidade**: Alta / Média / Baixa
270
+ - **Mitigação**: [Como mitigar]
271
+ - **Plano B**: [Alternativa se ocorrer]
272
+
273
+ ### Risco 2: [Descrição]
274
+ [Mesmo formato acima]
275
+ ```
276
+
277
+ ### 9. Checklist de Implementação
278
+
279
+ ```markdown
280
+ ## Checklist de Implementação
281
+
282
+ ### Fase 1
283
+ - [ ] Tarefa 1.1
284
+ - [ ] Tarefa 1.2
285
+ - [ ] Testes da Fase 1
286
+
287
+ ### Fase 2
288
+ - [ ] Tarefa 2.1
289
+ - [ ] Tarefa 2.2
290
+ - [ ] Testes da Fase 2
291
+
292
+ ### Fase 3
293
+ - [ ] Tarefa 3.1
294
+ - [ ] Tarefa 3.2
295
+ - [ ] Testes da Fase 3
296
+
297
+ ### Finalização
298
+ - [ ] Documentação atualizada
299
+ - [ ] Code review
300
+ - [ ] Testes de integração
301
+ - [ ] PR criado
302
+ ```
303
+
304
+ ## 📄 Salvamento do Plano
305
+
306
+ Salve em `./.sessions/<ISSUE-ID>/plan.md`
307
+
308
+ ## 🔍 Revisão
309
+
310
+ Revise o plano verificando:
311
+ - Todas as tarefas estão claras e executáveis
312
+ - Dependências entre tarefas estão identificadas
313
+ - Estimativas são realistas
314
+ - Riscos foram considerados
315
+ - Estratégia de testes é adequada
316
+
317
+ ---
318
+
319
+ **Argumentos fornecidos**:
320
+
321
+ ```
322
+ #$ARGUMENTS
323
+ ```
324
+
325
+ ---
326
+
327
+ ## 🎯 Próximo Passo
328
+
329
+ Após aprovação do plano:
330
+
331
+ ```bash
332
+ /work
333
+ ```
334
+
335
+ Este comando iniciará a execução da primeira unidade de trabalho do plano.