@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,206 @@
1
+ # Observabilidade de Decisões
2
+
3
+ Este comando registra decisões importantes tomadas durante o desenvolvimento, criando um log auditável para explicabilidade e rastreabilidade.
4
+
5
+ ## 🎯 Objetivo
6
+
7
+ Criar registro estruturado de decisões técnicas e de produto, garantindo:
8
+ - **Explicabilidade**: Por que cada decisão foi tomada
9
+ - **Rastreabilidade**: Quais fontes (PRD, metaspecs, ADRs) embasaram a decisão
10
+ - **Auditoria**: Histórico completo de escolhas para revisão futura
11
+ - **Aprendizado**: Documentação de trade-offs e alternativas consideradas
12
+
13
+ **IMPORTANTE**: Este comando NÃO gera decisões novas. Ele apenas REGISTRA decisões que já foram tomadas no processo de desenvolvimento.
14
+
15
+ ## 📋 Configuração do Projeto
16
+
17
+ **⚠️ IMPORTANTE: Sempre leia os arquivos de configuração do projeto ANTES de executar este comando!**
18
+
19
+ ### Arquivos Obrigatórios
20
+
21
+ 1. **`context-manifest.json`** (raiz do orchestrator)
22
+ - Lista de repositórios do projeto
23
+ - Roles de cada repositório (metaspecs, application, etc.)
24
+ - URLs e dependências entre repositórios
25
+
26
+ 2. **`ai.properties.md`** (raiz do orchestrator)
27
+ - Configurações do projeto (`project_name`, `base_path`)
28
+ - Sistema de gerenciamento de tarefas (`task_management_system`)
29
+ - Credenciais e configurações específicas
30
+
31
+ ### Como Ler
32
+
33
+ ```bash
34
+ # 1. Ler context-manifest.json
35
+ cat context-manifest.json
36
+
37
+ # 2. Ler ai.properties.md
38
+ cat ai.properties.md
39
+ ```
40
+
41
+ ### Informações Essenciais
42
+
43
+ Após ler os arquivos, você terá:
44
+ - ✅ Lista completa de repositórios do projeto
45
+ - ✅ Localização do repositório de metaspecs
46
+ - ✅ Base path para localizar repositórios
47
+ - ✅ Sistema de task management configurado
48
+ - ✅ Configurações específicas do projeto
49
+
50
+ **🛑 NÃO prossiga sem ler estes arquivos!** Eles contêm informações críticas para a execução correta do comando.
51
+
52
+
53
+ ## 📋 Pré-requisitos
54
+
55
+ - Executou pelo menos um dos comandos que geram decisões:
56
+ - `/spec` - gera PRD com decisões de produto
57
+ - `/plan` - gera plan.md com decisões técnicas
58
+ - `/work` - implementação gera decisões durante desenvolvimento
59
+
60
+ ## 🔍 Processo de Observação
61
+
62
+ ### 1. Identificar Decisões Relevantes
63
+
64
+ Analise os arquivos da sessão (`./.sessions/<ISSUE-ID>/`) para identificar decisões:
65
+
66
+ **Após `/spec`** - Decisões de Produto:
67
+ - Leia `./.sessions/<ISSUE-ID>/prd.md`
68
+ - Identifique decisões em:
69
+ - Escopo (o que entra/não entra na feature)
70
+ - Personas atendidas (quem é o público-alvo)
71
+ - Métricas de sucesso (como medir resultados)
72
+ - Requisitos não-funcionais (performance, acessibilidade)
73
+ - Restrições e trade-offs
74
+
75
+ **Após `/plan`** - Decisões Técnicas:
76
+ - Leia `./.sessions/<ISSUE-ID>/plan.md`
77
+ - Identifique decisões em:
78
+ - Arquitetura de componentes/módulos
79
+ - Escolha de bibliotecas ou ferramentas
80
+ - Padrões de implementação
81
+ - Estrutura de dados
82
+ - Estratégia de testes
83
+
84
+ **Durante `/work`** - Decisões de Implementação:
85
+ - Leia `./.sessions/<ISSUE-ID>/work.md`
86
+ - Identifique decisões em:
87
+ - Refatorações realizadas
88
+ - Mudanças de abordagem
89
+ - Otimizações aplicadas
90
+ - Tratamento de edge cases
91
+
92
+ ### 2. Documentar Cada Decisão
93
+
94
+ Para cada decisão identificada, documente:
95
+
96
+ ```markdown
97
+ ## Decisão: [Título Claro]
98
+
99
+ **Contexto**: [Por que precisamos decidir isso? Qual o problema ou necessidade?]
100
+
101
+ **Opções Consideradas**:
102
+ 1. **Opção A**: [Descrição]
103
+ - Prós: [vantagens]
104
+ - Contras: [desvantagens]
105
+ 2. **Opção B**: [Descrição]
106
+ - Prós: [vantagens]
107
+ - Contras: [desvantagens]
108
+
109
+ **Decisão**: [Opção escolhida]
110
+
111
+ **Justificativa**: [Por que escolhemos esta opção? Quais critérios foram mais importantes?]
112
+
113
+ **Fontes**:
114
+ - [PRD seção X]
115
+ - [Metaspec Y]
116
+ - [ADR-00Z]
117
+
118
+ **Trade-offs Aceitos**: [Quais desvantagens aceitamos conscientemente?]
119
+
120
+ **Reversibilidade**: Fácil / Média / Difícil
121
+
122
+ **Data**: [data da decisão]
123
+ ```
124
+
125
+ ### 3. Criar Log de Decisões
126
+
127
+ Salve em `./.sessions/<ISSUE-ID>/decisions.md`:
128
+
129
+ ```markdown
130
+ # Log de Decisões - [ISSUE-ID]
131
+
132
+ ## Resumo
133
+ [Breve resumo das principais decisões tomadas nesta feature]
134
+
135
+ ## Decisões de Produto
136
+
137
+ ### [Decisão 1]
138
+ [Conforme template acima]
139
+
140
+ ### [Decisão 2]
141
+ [Conforme template acima]
142
+
143
+ ## Decisões Técnicas
144
+
145
+ ### [Decisão 3]
146
+ [Conforme template acima]
147
+
148
+ ### [Decisão 4]
149
+ [Conforme template acima]
150
+
151
+ ## Decisões de Implementação
152
+
153
+ ### [Decisão 5]
154
+ [Conforme template acima]
155
+
156
+ ## Lições Aprendidas
157
+ - [Lição 1]
158
+ - [Lição 2]
159
+
160
+ ## Decisões Pendentes
161
+ - [Decisão que ainda precisa ser tomada]
162
+ ```
163
+
164
+ ## 📊 Análise de Impacto
165
+
166
+ Para decisões críticas, documente o impacto:
167
+
168
+ ```markdown
169
+ ## Análise de Impacto
170
+
171
+ **Repositórios Afetados**: [lista]
172
+
173
+ **Componentes Impactados**: [lista]
174
+
175
+ **Dependências Criadas**: [lista]
176
+
177
+ **Riscos Introduzidos**: [lista]
178
+
179
+ **Mitigações Aplicadas**: [lista]
180
+ ```
181
+
182
+ ## 🔄 Revisão de Decisões
183
+
184
+ Periodicamente, revise as decisões tomadas:
185
+ - Ainda fazem sentido?
186
+ - Os trade-offs se provaram corretos?
187
+ - Há aprendizados para documentar?
188
+ - Alguma decisão precisa ser revertida?
189
+
190
+ ---
191
+
192
+ **Argumentos fornecidos**:
193
+
194
+ ```
195
+ #$ARGUMENTS
196
+ ```
197
+
198
+ ---
199
+
200
+ ## 🎯 Resultado
201
+
202
+ Após executar este comando, você terá:
203
+ - Log completo de decisões em `./.sessions/<ISSUE-ID>/decisions.md`
204
+ - Rastreabilidade de cada escolha feita
205
+ - Documentação para futuras referências
206
+ - Base para ADRs (se decisões forem de arquitetura)
@@ -0,0 +1,59 @@
1
+ # Aquecimento - Carregamento de Contexto
2
+
3
+ Prepara o ambiente carregando o contexto otimizado do projeto.
4
+
5
+ ## 1. Carregar Configuração
6
+
7
+ Leia os arquivos do orchestrator:
8
+ - **`context-manifest.json`** - Repositórios e roles
9
+ - **`ai.properties.md`** - base_path, task_management_system
10
+
11
+ ## 2. Carregar Contexto Compacto (OTIMIZADO)
12
+
13
+ **IMPORTANTE**: Use carregamento PROGRESSIVO para economizar janela de contexto.
14
+
15
+ ### Obrigatório (warm-up)
16
+
17
+ Localize metaspecs via `context-manifest.json` (role: "specs-provider"):
18
+
19
+ ```
20
+ {base_path}/{metaspecs-id}/specs/_meta/WARM_UP_CONTEXT.md (~100 linhas)
21
+ ```
22
+
23
+ Este arquivo contém TODOS os essenciais:
24
+ - Stack tecnológica
25
+ - Hierarquia de contexto
26
+ - 5 regras críticas
27
+ - Padrões de código mínimos
28
+ - Tabela de carregamento sob demanda
29
+
30
+ ### Sob Demanda (NÃO carregar durante warm-up)
31
+
32
+ | Necessidade | Documento |
33
+ |-------------|-----------|
34
+ | Gerar código | `CLAUDE.meta.md` |
35
+ | Arquitetura | `ARCHITECTURE.md` |
36
+ | Feature específica | `features/{FEATURE}.md` |
37
+ | Anti-patterns completos | `ANTI_PATTERNS.md` |
38
+
39
+ ## 3. Verificar Repositórios
40
+
41
+ Para cada repositório no `context-manifest.json`:
42
+ - Verificar existência em `{base_path}/{repo-id}/`
43
+ - **NÃO** ler README.md agora (sob demanda)
44
+
45
+ ## 4. Verificar Sessão (se existir)
46
+
47
+ ```bash
48
+ ls -la .sessions/<ISSUE-ID>/ 2>/dev/null
49
+ ```
50
+
51
+ ## 5. Princípio Jidoka
52
+
53
+ Se problemas detectados: **PARE**, documente, alerte o usuário.
54
+
55
+ ---
56
+
57
+ **Argumentos**: #$ARGUMENTS
58
+
59
+ **Status**: Contexto carregado. Aguardando próximo comando.
package/package.json CHANGED
@@ -1,7 +1,9 @@
1
1
  {
2
2
  "name": "@thatix.io/context-first-agents-cli",
3
- "version": "0.1.0",
4
- "publishConfig": { "access": "public" },
3
+ "version": "0.2.0",
4
+ "publishConfig": {
5
+ "access": "public"
6
+ },
5
7
  "description": "Evolution of context-first-cli: manage the Context-First methodology across any project AND orchestrate dynamic, ephemeral AI agents from specs. All agent orchestration lives in .md command templates; the Node layer only scaffolds and manages.",
6
8
  "type": "module",
7
9
  "main": "dist/index.js",
@@ -37,7 +39,9 @@
37
39
  ],
38
40
  "author": "Thiago Abreu <thiagoabreu.dev>",
39
41
  "license": "MIT",
40
- "engines": { "node": ">=18.0.0" },
42
+ "engines": {
43
+ "node": ">=18.0.0"
44
+ },
41
45
  "dependencies": {
42
46
  "chalk": "^5.6.2",
43
47
  "commander": "^14.0.2",
@@ -0,0 +1,301 @@
1
+ # Technical Planning
2
+
3
+ This command creates the detailed technical plan for the feature implementation.
4
+
5
+ ## 📋 Prerequisites
6
+
7
+ - PRD created via `/spec`
8
+ - Initial analysis done via `/start`
9
+ - `context.md` and `architecture.md` files created and approved
10
+
11
+ ## Configuration
12
+
13
+ Read `context-manifest.json` and `ai.properties.md` from the orchestrator to get repositories, base_path, and task_management_system.
14
+
15
+ ## 📍 IMPORTANT: Understand the Structure
16
+
17
+ **Workspace**:
18
+ ```
19
+ <orchestrator>/.sessions/<ISSUE-ID>/
20
+ ├── repo-1/ # worktree (will be used in /work)
21
+ ├── repo-2/ # worktree (will be used in /work)
22
+ ├── context.md # context (immutable - READ)
23
+ ├── architecture.md # architecture (immutable - READ)
24
+ └── plan.md # plan (mutable - CREATE)
25
+ ```
26
+
27
+ **Main repositories** (read-only):
28
+ ```
29
+ {base_path}/repo-1/ # main repo (branch main/master)
30
+ {base_path}/repo-2/ # main repo (branch main/master)
31
+ ```
32
+
33
+ **GOLDEN RULE**:
34
+ - ✅ Read `context.md` and `architecture.md` (immutable)
35
+ - ✅ Create `plan.md` in `.sessions/<ISSUE-ID>/`
36
+ - ✅ Read code from main repositories (read-only)
37
+ - ❌ NEVER checkout main repositories
38
+ - ❌ NEVER modify `context.md` or `architecture.md`
39
+
40
+ ## ⚠️ IMPORTANT: Immutable Files
41
+
42
+ **This command must READ but NOT MODIFY:**
43
+ - ✅ **READ** `.sessions/<ISSUE-ID>/context.md` (immutable)
44
+ - ✅ **READ** `.sessions/<ISSUE-ID>/architecture.md` (immutable)
45
+ - ✅ **CREATE** `.sessions/<ISSUE-ID>/plan.md` (mutable - will be updated during `/work`)
46
+ - ❌ **DO NOT modify `context.md` or `architecture.md`**
47
+
48
+ ## 📚 Load MetaSpecs
49
+
50
+ **Automatically locate MetaSpecs**:
51
+ 1. Read `context-manifest.json` from the orchestrator
52
+ 2. Find the repository with `"role": "metaspecs"`
53
+ 3. Read `ai.properties.md` to get the `base_path`
54
+ 4. The metaspecs are at: `{base_path}/{metaspecs-repo-id}/`
55
+ 5. Read the relevant `index.md` files to ensure compliance with:
56
+ - System architecture
57
+ - Design and code patterns
58
+ - Folder and file structure
59
+ - Naming conventions
60
+
61
+ ## 🎯 Goal
62
+
63
+ Create a detailed technical plan that will guide the implementation, dividing the work into smaller, sequential units.
64
+
65
+ ## 📝 Plan Structure
66
+
67
+ ### 1. Technical Overview
68
+
69
+ ```markdown
70
+ # Technical Plan - [Feature Title]
71
+
72
+ ## Summary
73
+ [Brief technical description of what will be implemented]
74
+
75
+ ## Involved Repositories
76
+ - **<repo-1>**: [Role in this feature]
77
+ - **<repo-2>**: [Role in this feature]
78
+
79
+ ## Technical Approach
80
+ [General implementation strategy]
81
+ ```
82
+
83
+ ### 2. Solution Architecture
84
+
85
+ ```markdown
86
+ ## Architecture
87
+
88
+ ### Component Diagram
89
+ [Textual description or ASCII art of components and their relationships]
90
+
91
+ ### Data Flow
92
+ 1. [Step 1 of the flow]
93
+ 2. [Step 2 of the flow]
94
+ 3. [Step 3 of the flow]
95
+
96
+ ### Integrations
97
+ - **<repo-1> → <repo-2>**: [How they communicate]
98
+ - **System → External API**: [If any]
99
+ ```
100
+
101
+ ### 3. Technical Decisions
102
+
103
+ ```markdown
104
+ ## Technical Decisions
105
+
106
+ ### Decision 1: [Title]
107
+ **Context**: [Why we need to decide this]
108
+ **Considered options**:
109
+ - Option A: [Pros and cons]
110
+ - Option B: [Pros and cons]
111
+ **Decision**: [Chosen option]
112
+ **Justification**: [Why we chose this option]
113
+
114
+ ### Decision 2: [Title]
115
+ [Same format as above]
116
+ ```
117
+
118
+ ### 4. Implementation Plan
119
+
120
+ Divide the work into small, sequential units:
121
+
122
+ ```markdown
123
+ ## Implementation Plan
124
+
125
+ ### Phase 1: [Phase Name]
126
+ **Goal**: [What will be achieved in this phase]
127
+ **Repositories**: [affected repos]
128
+
129
+ #### Task 1.1: [Description]
130
+ - **Repo**: <repo-1>
131
+ - **Files**: [files to create/modify]
132
+ - **Description**: [What to do]
133
+ - **Tests**: [Tests to implement]
134
+ - **Estimate**: [estimated time]
135
+
136
+ #### Task 1.2: [Description]
137
+ - **Repo**: <repo-2>
138
+ - **Files**: [files to create/modify]
139
+ - **Description**: [What to do]
140
+ - **Tests**: [Tests to implement]
141
+ - **Estimate**: [estimated time]
142
+
143
+ ### Phase 2: [Phase Name]
144
+ [Same format as above]
145
+
146
+ ### Phase 3: [Phase Name]
147
+ [Same format as above]
148
+ ```
149
+
150
+ ### 5. File Structure
151
+
152
+ For each repository, define the structure:
153
+
154
+ ```markdown
155
+ ## File Structure
156
+
157
+ ### <repo-1>
158
+ ```
159
+ src/
160
+ ├── components/
161
+ │ ├── NewComponent.tsx (CREATE)
162
+ │ └── ExistingComponent.tsx (MODIFY)
163
+ ├── services/
164
+ │ └── NewService.ts (CREATE)
165
+ └── tests/
166
+ └── NewComponent.test.tsx (CREATE)
167
+ ```
168
+
169
+ ### <repo-2>
170
+ ```
171
+ src/
172
+ ├── controllers/
173
+ │ └── NewController.ts (CREATE)
174
+ └── tests/
175
+ └── NewController.test.ts (CREATE)
176
+ ```
177
+ ```
178
+
179
+ ### 6. APIs and Contracts
180
+
181
+ ```markdown
182
+ ## APIs and Contracts
183
+
184
+ ### New Endpoints
185
+
186
+ #### POST /api/resource
187
+ **Request**:
188
+ ```json
189
+ {
190
+ "field1": "string",
191
+ "field2": "number"
192
+ }
193
+ ```
194
+
195
+ **Response**:
196
+ ```json
197
+ {
198
+ "id": "string",
199
+ "status": "string"
200
+ }
201
+ ```
202
+
203
+ ### Modified Endpoints
204
+
205
+ #### GET /api/resource/:id
206
+ **Changes**: [What changes]
207
+ **Breaking Change**: Yes / No
208
+ ```
209
+
210
+ ### 7. Testing Strategy
211
+
212
+ ```markdown
213
+ ## Testing Strategy
214
+
215
+ ### Unit Tests
216
+ - **<repo-1>**: [Components/functions to test]
217
+ - **<repo-2>**: [Components/functions to test]
218
+
219
+ ### Integration Tests
220
+ - **Scenario 1**: [Description and involved repos]
221
+ - **Scenario 2**: [Description and involved repos]
222
+
223
+ ### E2E Tests (if applicable)
224
+ - **Flow 1**: [Description]
225
+ - **Flow 2**: [Description]
226
+ ```
227
+
228
+ ### 8. Technical Risks
229
+
230
+ ```markdown
231
+ ## Technical Risks
232
+
233
+ ### Risk 1: [Description]
234
+ - **Impact**: High / Medium / Low
235
+ - **Probability**: High / Medium / Low
236
+ - **Mitigation**: [How to mitigate]
237
+ - **Plan B**: [Alternative if it occurs]
238
+
239
+ ### Risk 2: [Description]
240
+ [Same format as above]
241
+ ```
242
+
243
+ ### 9. Implementation Checklist
244
+
245
+ ```markdown
246
+ ## Implementation Checklist
247
+
248
+ ### Phase 1
249
+ - [ ] Task 1.1
250
+ - [ ] Task 1.2
251
+ - [ ] Phase 1 Tests
252
+
253
+ ### Phase 2
254
+ - [ ] Task 2.1
255
+ - [ ] Task 2.2
256
+ - [ ] Phase 2 Tests
257
+
258
+ ### Phase 3
259
+ - [ ] Task 3.1
260
+ - [ ] Task 3.2
261
+ - [ ] Phase 3 Tests
262
+
263
+ ### Finalization
264
+ - [ ] Documentation updated
265
+ - [ ] Code review
266
+ - [ ] Integration tests
267
+ - [ ] PR created
268
+ ```
269
+
270
+ ## 📄 Saving the Plan
271
+
272
+ Save it in `./.sessions/<ISSUE-ID>/plan.md`
273
+
274
+ ## 🔍 Review
275
+
276
+ Review the plan checking:
277
+ - All tasks are clear and executable
278
+ - Dependencies between tasks are identified
279
+ - Estimates are realistic
280
+ - Risks have been considered
281
+ - Testing strategy is adequate
282
+
283
+ ---
284
+
285
+ **Provided arguments**:
286
+
287
+ ```
288
+ #$ARGUMENTS
289
+ ```
290
+
291
+ ---
292
+
293
+ ## 🎯 Next Step
294
+
295
+ After plan approval:
296
+
297
+ ```bash
298
+ /work
299
+ ```
300
+
301
+ This command will start executing the first work unit of the plan.