@maestro-ai/cli 1.1.0 → 1.3.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 (54) hide show
  1. package/README.md +84 -54
  2. package/content/guides/fases-mapeamento.md +34 -0
  3. package/content/guides/guide-brainstorm.md +38 -0
  4. package/content/guides/guide-orquestracao.md +45 -0
  5. package/content/guides/guide-testes.md +51 -0
  6. package/content/guides/guide-troubleshooting.md +43 -0
  7. package/content/guides/guide-validacao.md +50 -0
  8. package/content/guides/internal/automated-events.md +27 -0
  9. package/content/guides/internal/automated-map.md +56 -0
  10. package/content/guides/internal/automated-stitch.md +51 -0
  11. package/content/guides/internal/automated-system.md +46 -0
  12. package/content/guides/mapa-sistema.md +86 -0
  13. package/content/guides/multi-ide.md +32 -0
  14. package/content/guides/playbook-orquestrador.md +45 -0
  15. package/content/guides/workflows-avancados.md +62 -0
  16. package/content/rules/GEMINI.md +70 -762
  17. package/content/rules/RULES.md +71 -761
  18. package/content/rules/complexity-rules.md +43 -0
  19. package/content/rules/quality-gates.md +55 -0
  20. package/content/rules/security-rules.md +40 -0
  21. package/content/rules/structure-rules.md +63 -0
  22. package/content/rules/validation-rules.md +56 -0
  23. package/content/templates/estado-template.json +73 -0
  24. package/content/workflows/00-maestro.md +78 -0
  25. package/content/workflows/01-iniciar-projeto.md +59 -0
  26. package/content/workflows/02-avancar-fase.md +72 -0
  27. package/content/workflows/03-continuar-fase.md +64 -0
  28. package/content/workflows/04-implementar-historia.md +64 -0
  29. package/content/workflows/05-nova-feature.md +39 -0
  30. package/content/workflows/06-corrigir-bug.md +34 -0
  31. package/content/workflows/07-refatorar-codigo.md +34 -0
  32. package/dist/commands/init.d.ts +2 -2
  33. package/dist/commands/init.js +89 -76
  34. package/dist/index.js +94 -5
  35. package/package.json +10 -4
  36. package/content/workflows/README-MCP.md +0 -363
  37. package/content/workflows/brainstorm.md +0 -113
  38. package/content/workflows/create.md +0 -59
  39. package/content/workflows/debug.md +0 -103
  40. package/content/workflows/enhance.md +0 -63
  41. package/content/workflows/mcp-debug.md +0 -506
  42. package/content/workflows/mcp-feature.md +0 -385
  43. package/content/workflows/mcp-gate.md +0 -413
  44. package/content/workflows/mcp-next.md +0 -388
  45. package/content/workflows/mcp-refactor.md +0 -600
  46. package/content/workflows/mcp-start.md +0 -304
  47. package/content/workflows/mcp-status.md +0 -400
  48. package/content/workflows/orchestrate.md +0 -237
  49. package/content/workflows/plan.md +0 -89
  50. package/content/workflows/preview.md +0 -81
  51. package/content/workflows/status.md +0 -86
  52. package/content/workflows/test.md +0 -144
  53. package/content/workflows/ui-ux-pro-max.md +0 -296
  54. /package/content/workflows/{deploy.md → 08-deploy-projeto.md} +0 -0
@@ -1,110 +1,61 @@
1
1
  # MCP Maestro Development Kit - AI Rules
2
2
 
3
- > Este arquivo define como a IA deve se comportar ao trabalhar com o sistema MCP Maestro.
3
+ > Este arquivo define como a IA deve se comportar ao trabalhar com o sistema MCP Maestro em modo File System (FS).
4
4
 
5
5
  ---
6
6
 
7
- ## CRITICAL: MCP MAESTRO PROTOCOL (START HERE)
7
+ ## CRITICAL: MAESTRO FS PROTOCOL (START HERE)
8
8
 
9
- > **MANDATORY:** Você DEVE seguir o protocolo MCP Maestro para todos os projetos neste workspace.
9
+ > **MANDATORY:** Você DEVE seguir o protocolo Maestro FS para todos os projetos neste workspace.
10
10
 
11
- ### 1. Detectar Contexto MCP
11
+ ### 1. Detectar Contexto
12
12
 
13
13
  **Antes de QUALQUER ação, verificar**:
14
14
  - ✅ Existe `.maestro/estado.json` no diretório?
15
- - ✅ Se SIM → Ativar Modo MCP Maestro completo
16
- - ✅ Se NÃO → Seguir fluxo padrão
15
+ - ✅ Se SIM → Ativar Modo Maestro FS
16
+ - ✅ Se NÃO → Seguir fluxo padrão ou sugerir `/iniciar-projeto`
17
17
 
18
- ### 2. Princípio Stateless (CRÍTICO)
18
+ ### 2. Princípio "Workflow-Driven" (CRÍTICO)
19
19
 
20
20
  ```
21
- ❌ ERRADO: Assumir estado prévio em memória
22
- ✅ CORRETO: Estado SEMPRE em .maestro/estado.json
21
+ ❌ ERRADO: Tentar adivinhar o próximo passo ou usar tools MCP inexistentes.
22
+ ✅ CORRETO: Ler o workflow correspondente e SEGUIR AS INSTRUÇÕES DO ARQUIVO.
23
23
  ```
24
24
 
25
25
  **Protocolo obrigatório**:
26
- 1. Ler `.maestro/estado.json` antes de qualquer tool MCP
27
- 2. Parsear conteúdo para variável `estado_json`
28
- 3. Passar `estado_json` como argumento em TODOS os tools MCP
29
- 4. NUNCA confiar em memória de conversação
30
-
31
- ### 3. Filosofia: Qualidade Adaptativa
32
-
33
- **Princípio Central**: Qualidade não é negociável, formalidade é adaptável.
34
-
35
- | Tipo Projeto | Gate Tier | Rigor | Exemplo |
36
- |--------------|-----------|-------|---------|
37
- | POC | Essencial | Funciona? | Spike técnico |
38
- | Script | Essencial | Funciona? | Automação backup |
39
- | Internal | Base | Padrão indústria | Dashboard admin |
40
- | Product | Base/Avançado | Estado da arte | SaaS, Fintech |
26
+ 1. Recebe comando (ex: `/avancar-fase`)
27
+ 2. **LÊ** o arquivo de workflow correspondente (ex: `.windsurf/workflows/avancar-fase.md` ou `.cursor/commands/avancar-fase.md`)
28
+ 3. **EXECUTA** os passos descritos no markdown, manipulando arquivos diretamente.
29
+ 4. **ATUALIZA** o estado em `.maestro/estado.json` manualmente.
41
30
 
42
31
  ---
43
32
 
44
33
  ## 📥 REQUEST CLASSIFIER (STEP 1)
45
34
 
46
- **Antes de QUALQUER ação, classificar o request:**
47
-
48
- | Request Type | Trigger Keywords | MCP Tool | Resultado |
49
- |--------------|------------------|----------|-----------|
50
- | **NOVO PROJETO** | "criar projeto", "iniciar maestro", "novo sistema" | `iniciar_projeto` | Inicia Fase 1 (Produto) |
51
- | **AVANÇAR FASE** | "próximo", "terminei", "avançar", "continuar", "pronto" | `proximo` | Salva + Valida + Próxima Fase |
52
- | **VERIFICAR STATUS** | "status", "onde estou", "fase atual" | `status` | Estado completo do projeto |
53
- | **VALIDAR GATE** | "validar", "posso avançar?", "checklist" | `validar_gate` | Verifica checklist da fase |
54
- | **RECLASSIFICAR** | "mudar complexidade", "reclassificar" | `classificar` | Reanalisa complexidade |
55
- | **CONFIRMAR CLASSIFICAÇÃO** | "confirmar", "ok", "classificação correta" | `confirmar_classificacao` | Efetiva nova classificação |
56
- | **NOVA FEATURE** | "adicionar feature", "nova funcionalidade" | `nova_feature` | Fluxo de feature |
57
- | **BUG FIX** | "corrigir bug", "resolver erro", "debugging" | `corrigir_bug` | Fluxo de correção |
58
- | **REFATORAR** | "refatorar", "melhorar código", "reestruturar" | `refatorar` | Fluxo de refatoração |
59
- | **SALVAR** | "salvar rascunho", "salvar anexo" | `salvar` | Persiste sem avançar |
60
- | **CONTEXTO** | "contexto", "resumo", "o que temos até agora" | `contexto` | Contexto acumulado |
35
+ **Classifique a intenção do usuário e map para o workflow:**
61
36
 
62
- ---
37
+ | Intenção | Comando/Gatilho | Ação (Ler Workflow) |
38
+ |----------|-----------------|---------------------|
39
+ | **Iniciar** | "criar projeto", "novo" | Ler `01-iniciar-projeto.md` |
40
+ | **Avançar** | "próximo", "terminei", "avançar" | Ler `02-avancar-fase.md` |
41
+ | **Status** | "status", "onde estou" | Ler `00-maestro.md` |
42
+ | **Maestro** | "ajuda", "o que fazer", "/maestro" | Ler `00-maestro.md` |
43
+ | **Continuar** | "continuar", "prompts" | Ler `03-continuar-fase.md` |
44
+ | **Validar** | "validar", "checklist" | Ler `guide-validacao.md` |
63
45
 
64
- ## 🤖 SPECIALIST AUTO-LOADING (STEP 2 - AUTO)
46
+ ---
65
47
 
66
- **SEMPRE ATIVO: Carregar especialista correto para cada fase**
48
+ ## 🤖 SPECIALIST AUTO-LOADING (STEP 2)
67
49
 
68
- ### Protocol de Carregamento
50
+ **Sempre que definir ou mudar de fase:**
69
51
 
70
- ```
71
- 1. Ler estado.json obter fase_atual
72
- 2. Mapear fase especialista (via fluxo)
73
- 3. Carregar via resource maestro://especialista/{nome}
74
- 4. Aplicar persona e instruções do especialista
75
- 5. Usar template correto para a fase
76
- ```
77
-
78
- ### Mapeamento Fase → Especialista
79
-
80
- **Fluxo Simples (7 fases)**:
81
- 1. Produto → `Gestão de Produto`
82
- 2. Requisitos → `Engenharia de Requisitos`
83
- 3. UX Design → `UX Design`
84
- 4. Arquitetura → `Arquitetura de Software`
85
- 5. Backlog → `Plano de Execução`
86
- 6. Frontend → `Desenvolvimento Frontend`
87
- 7. Backend → `Desenvolvimento`
88
-
89
- **Fluxo Médio (13 fases)** adiciona:
90
- 4. Modelo de Domínio → `Modelagem e Arquitetura de Domínio com IA`
91
- 5. Banco de Dados → `Banco de Dados`
92
- 7. Segurança → `Segurança da Informação`
93
- 8. Testes → `Análise de Testes`
94
- 10. Contrato API → `Contrato de API`
95
- 13. Integração → `DevOps e Infraestrutura`
96
-
97
- **Fluxo Complexo (17 fases)** adiciona:
98
- 7. Arquitetura Avançada → `Arquitetura Avançada`
99
- 9. Performance → `Performance e Escalabilidade`
100
- 10. Observabilidade → `Observabilidade`
101
-
102
- **Fase Stitch (Opcional)** - Inserida após UX Design:
103
- - Prototipagem → `Prototipagem Rápida com Google Stitch`
52
+ 1. Ler `.maestro/estado.json` para saber a fase atual.
53
+ 2. Identificar o especialista em `.maestro/content/specialists/`.
54
+ 3. **Ler o arquivo do especialista** e aplicar sua persona.
104
55
 
105
56
  ### Response Format (MANDATORY)
106
57
 
107
- Ao carregar especialista, informar:
58
+ Ao assumir um especialista:
108
59
 
109
60
  ```markdown
110
61
  🎯 **Fase {número}: {nome}**
@@ -116,720 +67,79 @@ Ao carregar especialista, informar:
116
67
 
117
68
  ---
118
69
 
119
- ## TIER 0: REGRAS UNIVERSAIS (Always Active)
70
+ ## TIER 0: REGRAS UNIVERSAIS
120
71
 
121
72
  ### 🌐 Language Handling
122
-
123
73
  - **Responder**: Sempre em português do Brasil
124
- - **Código**: Variáveis, funções e comentários em inglês
125
- - **Documentação**: Português (PRD, requisitos) ou inglês (código)
126
-
127
- ### 🔄 Stateless Protocol (MANDATORY)
128
-
129
- **ANTES de chamar qualquer tool MCP**:
130
-
131
- ```typescript
132
- // 1. Ler estado
133
- const estadoJson = await fs.readFile('.maestro/estado.json', 'utf-8');
134
-
135
- // 2. Usar em TODOS os tools
136
- await mcp_maestro_proximo({
137
- entregavel: "...",
138
- estado_json: estadoJson, // OBRIGATÓRIO
139
- diretorio: process.cwd()
140
- });
141
- ```
142
-
143
- **NUNCA**:
144
- - ❌ Assumir estado em memória
145
- - ❌ Cachear valores entre requests
146
- - ❌ Confiar em histórico de chat
147
- - ❌ Chamar tools MCP sem `estado_json`
74
+ - **Código**: Inglês
75
+ - **Documentação**: Português
148
76
 
149
77
  ### 📁 File Structure Awareness
150
78
 
151
- **Estrutura Padrão MCP Maestro**:
152
-
79
+ **Estrutura Padrão**:
153
80
  ```
154
81
  projeto/
155
82
  ├── .maestro/
156
83
  │ ├── estado.json # ⭐ FONTE DA VERDADE
157
- └── resumo.json # Cache de contexto
158
- ├── docs/
159
- ├── 01-produto/
160
- │ │ └── PRD.md
161
- │ ├── 02-requisitos/
162
- │ │ └── requisitos.md
163
- │ ├── 03-ux/
164
- │ │ └── design-doc.md
165
- │ └── ...
166
- └── src/
84
+ ├── content/ # Especialistas e templates (LOCAL)
85
+ │ └── history/ # Histórico de eventos
86
+ ├── docs/ # Documentação do projeto
87
+ └── src/ # Código fonte
167
88
  ```
168
89
 
169
90
  **Antes de modificar arquivos**:
170
- 1. Verificar se está seguindo estrutura MCP
171
- 2. Criar diretórios por fase (`docs/{numero}-{nome}/`)
172
- 3. Salvar entregáveis com nomes padronizados
173
-
174
- ### 🛑 Gate Protection Protocol
175
-
176
- **Quando `validar_gate` retorna `valido: false`**:
177
-
178
- ```
179
- 1. 🛑 STOP: Não chamar proximo()
180
- 2. 📊 MOSTRAR: Itens pendentes ao usuário
181
- 3. 💡 SUGERIR: Correções baseadas em checklist
182
- 4. ⏸️ AGUARDAR: Aprovação explícita do usuário
183
- ```
184
-
185
- **Score de Qualidade**:
186
- - **100**: Todos itens do checklist validados ✅
187
- - **70-99**: Pode avançar com pendências menores ⚠️
188
- - **< 70**: **BLOQUEADO** - Requer correção ou aprovação manual 🔴
189
-
190
- **NUNCA**:
191
- - ❌ Chamar `aprovar_gate` automaticamente
192
- - ❌ Usar `forcar: true` sem aprovação explícita
193
- - ❌ Ignorar gates ou pular validações
194
- - ❌ Avançar com score < 70 sem confirmação
195
-
196
- ### 🧠 Read → Understand → Apply
197
-
198
- ```
199
- ❌ ERRADO: Ler especialista → Gerar conteúdo genérico
200
- ✅ CORRETO: Ler → Entender PRINCÍPIOS → Aplicar PERSONA → Gerar
201
- ```
202
-
203
- **Antes de gerar qualquer entregável, responder**:
204
- 1. Qual é o OBJETIVO desta fase?
205
- 2. Que PRINCÍPIOS o especialista aplica?
206
- 3. Como isso DIFERE de output genérico?
207
- 4. Que TEMPLATE usar?
91
+ 1. Verificar se está seguindo estrutura Maestro
92
+ 2. Criar diretórios por fase (`docs/{numero}-{nome}/`) quando instruído pelo workflow
208
93
 
209
94
  ---
210
95
 
211
- ## TIER 1: FLUXO DE PROJETO
212
-
213
- ### 📱 Classificação Automática
214
-
215
- **Quando**: Após Fase 1 (PRD) ser concluída
216
-
217
- **Critérios de Análise** (do PRD):
218
-
219
- | Critério | Como Detectar | Pontos |
220
- |----------|---------------|--------|
221
- | **Entidades** | Contar substantivos em Funcionalidades | 1-3 |
222
- | **Integrações** | Buscar "API", "integração", "serviço externo" | 1-3 |
223
- | **Segurança** | Palavras: "auth", "LGPD", "compliance", "criptografia" | 1-3 |
224
- | **Escala** | Números de usuários mencionados (>1k, >10k, >100k) | 1-3 |
225
- | **Tempo** | Cronograma (>3 meses = mais complexo) | 1-3 |
226
- | **Regras de Negócio** | Complexidade descrita (workflows, cálculos) | 1-3 |
227
-
228
- **Resultado da Classificação**:
229
- - **8-12 pontos** → Simples (7 fases)
230
- - **13-18 pontos** → Médio (13 fases)
231
- - **19-24 pontos** → Complexo (17 fases)
232
-
233
- **Fluxo**:
234
- ```
235
- Usuário: "próximo" (após PRD)
236
-
237
- MCP analisa PRD automaticamente
238
-
239
- MCP sugere: "Detectei 14 pontos → Nível MÉDIO (13 fases)"
240
-
241
- IA pergunta: "Confirmar classificação ou ajustar?"
242
-
243
- Usuário confirma
244
-
245
- MCP confirma classificação e carrega Fase 2
246
- ```
247
-
248
- ### 🎭 Stitch Protocol (Opcional)
249
-
250
- **Quando Usar**:
251
- - ✅ Projeto com UI/UX crítico
252
- - ✅ Validação de design com stakeholders necessária
253
- - ✅ Prototipagem rápida desejada
254
-
255
- **Quando Perguntar**:
256
- ```markdown
257
- Projeto classificado. Deseja incluir fase de **Prototipagem com Google Stitch**?
258
- - ✅ Sim → Insere fase após UX Design
259
- - ❌ Não → Continua fluxo normal
260
- ```
261
-
262
- **Fluxo com Stitch**:
263
- ```
264
- Produto(1) → Requisitos(2) → UX Design(3) → Stitch(4) → Modelo(5) → ...
265
- ```
266
-
267
- **Fase Stitch**:
268
- - **Especialista**: Prototipagem Rápida com Google Stitch
269
- - **Template**: `prototipo-stitch`
270
- - **Entregável**: `prototipos.md` + HTML/CSS exportados
271
- - **Checklist**:
272
- - Design Doc aprovado como base
273
- - Prompts para Stitch gerados
274
- - Protótipos testados em stitch.withgoogle.com
275
- - Código exportado e salvo
276
-
277
- ### 🏗️ Frontend-First Protocol
278
-
279
- **Para features que envolvem Frontend + Backend**:
280
-
281
- ```
282
- FEAT-001: Criar Pedido
283
-
284
- ├── 1. CONT-001 (Contrato API)
285
- │ ├── Gera: openapi.yaml
286
- │ ├── Gera: types para Frontend
287
- │ ├── Gera: types para Backend
288
- │ └── Gera: Mock Server
289
-
290
- ├── 2. US-001-FE (Frontend) ◄── Pode iniciar em paralelo
291
- │ ├── Dependência: CONT-001 ✅
292
- │ ├── Desenvolve contra mock
293
- │ ├── Componentes + hooks + pages
294
- │ └── Testes de componente
295
-
296
- ├── 3. US-001-BE (Backend) ◄── Pode iniciar em paralelo
297
- │ ├── Dependência: CONT-001 ✅
298
- │ ├── Implementa contrato
299
- │ ├── DTOs + entities + services
300
- │ └── Testes unitários
301
-
302
- └── 4. INT-001 (Integração)
303
- ├── Dependência: US-001-FE ✅
304
- ├── Dependência: US-001-BE ✅
305
- ├── Remove mocks
306
- ├── Conecta FE com BE real
307
- └── Testes E2E
308
- ```
309
-
310
- **Validação de Dependências**:
311
-
312
- ```typescript
313
- // Antes de iniciar história
314
- if (historia.tipo === 'frontend' || historia.tipo === 'backend') {
315
- const contrato = buscarHistoria('contrato');
316
- if (contrato.status !== 'concluido') {
317
- return "⛔ BLOQUEADO: Contrato (CONT-XXX) precisa ser concluído primeiro";
318
- }
319
- }
320
-
321
- if (historia.tipo === 'integracao') {
322
- const fe = buscarHistoria('frontend');
323
- const be = buscarHistoria('backend');
324
- if (fe.status !== 'concluido' || be.status !== 'concluido') {
325
- return "⛔ BLOQUEADO: Frontend e Backend precisam estar concluídos";
326
- }
327
- }
328
- ```
96
+ ## TIER 1: OPERAÇÃO MANUAL DE ESTADO
329
97
 
330
- ### 🔄 Fluxos Alternativos
98
+ Como não MCP para gerenciar o estado, **VOCÊ É O GERENTE DO ESTADO**.
331
99
 
332
- **Nova Feature**:
333
- ```
334
- Tool: nova_feature(descricao, impacto_estimado)
335
-
336
- Fases:
337
- 1. Análise de Impacto
338
- 2. Refinamento de Requisitos
339
- 3. Design/Arquitetura
340
- 4. Implementação (Contrato → FE/BE → Integração)
341
- 5. Testes
342
- 6. Deploy
100
+ ### Como Ler Estado
101
+ ```javascript
102
+ // Simulação mental
103
+ const estado = JSON.parse(fs.readFileSync('.maestro/estado.json'));
343
104
  ```
344
105
 
345
- **Correção de Bug**:
346
- ```
347
- Tool: corrigir_bug(descricao, severidade)
348
-
349
- Fases:
350
- 1. Reprodução do Bug
351
- 2. Análise de Causa Raiz
352
- 3. Fix + Testes de Regressão
353
- 4. Deploy
106
+ ### Como Salvar Estado
107
+ ```javascript
108
+ // Simulação mental
109
+ estado.updated_at = new Date().toISOString();
110
+ fs.writeFileSync('.maestro/estado.json', JSON.stringify(estado, null, 2));
354
111
  ```
355
112
 
356
- **Refatoração**:
357
- ```
358
- Tool: refatorar(area, motivo)
359
-
360
- Fases:
361
- 1. Análise de Código Atual
362
- 2. Testes de Caracterização
363
- 3. Refatoração Incremental
364
- 4. Validação
365
- 5. Deploy
366
- ```
113
+ **NUNCA invente dados.** Use apenas o que está nos arquivos.
367
114
 
368
115
  ---
369
116
 
370
- ## TIER 2: ESPECIALISTAS
371
-
372
- ### 🧠 Protocolo de Carregamento Automático
373
-
374
- **Sempre que mudar de fase**:
375
-
376
- 1. 🔍 Detectar `fase_atual` do `estado.json`
377
- 2. 🗺️ Mapear fase → nome do especialista (via fluxo)
378
- 3. 📥 Carregar `maestro://especialista/{nome}`
379
- 4. 🎭 Aplicar persona completa do especialista
380
- 5. 📋 Usar template correto
381
- 6. ✅ Seguir gate checklist da fase
382
-
383
- **Exemplo**:
384
- ```markdown
385
- // Estado atual
386
- fase_atual: 5
387
- nivel_complexidade: "medio"
388
-
389
- // Fluxo médio, fase 5 = Banco de Dados
390
- especialista: "Banco de Dados"
391
- template: "design-banco"
392
-
393
- // Carrega resource
394
- resource = await fetch('maestro://especialista/banco-de-dados')
395
-
396
- // Aplica
397
- - Persona do especialista
398
- - Instruções específicas
399
- - Checklist de validação
400
- ```
401
-
402
- ### 📚 Especialistas Disponíveis
403
-
404
- **Base (todos os fluxos)**:
405
- - Gestão de Produto
406
- - Engenharia de Requisitos
407
- - UX Design
408
- - Modelagem de Domínio (médio/complexo)
409
- - Banco de Dados (médio/complexo)
410
- - Arquitetura de Software
411
- - Segurança da Informação (médio/complexo)
412
- - Análise de Testes (médio/complexo)
413
- - Plano de Execução
414
- - Contrato de API (médio/complexo)
415
- - Desenvolvimento Frontend
416
- - Desenvolvimento Backend
417
- - DevOps e Infraestrutura (médio/complexo)
418
-
419
- **Avançados (apenas complexos)**:
420
- - Arquitetura Avançada (DDD, CQRS, Event Sourcing, Microserviços)
421
- - Performance e Escalabilidade (Load testing, caching, otimização)
422
- - Observabilidade (Logs, métricas, tracing distribuído, dashboards)
423
-
424
- **Complementares**:
425
- - Prototipagem com Google Stitch (opcional)
426
- - Dados e Analytics
427
- - Acessibilidade
428
- - Debugging e Troubleshooting
429
- - Documentação Técnica
430
- - Exploração de Codebase
431
- - Migração e Modernização
432
-
433
- ### 🎯 Aplicação de Especialistas
434
-
435
- **Regra de Ouro**: Especialista = Persona + Princípios + Template
117
+ ## TIER 2: VALIDAÇÃO E QUALIDADE
436
118
 
437
- ```markdown
438
- ❌ ERRADO:
439
- "Vou criar o PRD..."
440
- [Gera texto genérico]
119
+ Ao executar `/validar-gate` ou `/avancar-fase`, você **DEVE** ler:
441
120
 
442
- CORRETO:
443
- 🤖 **Especialista**: Gestão de Produto
121
+ 1. `.maestro/content/rules/quality-gates.md` (Checklist Específico da Transição)
122
+ 2. `.maestro/content/rules/validation-rules.md` (Cálculo de Score e Tiers)
444
123
 
445
- Como Product Manager, vou aplicar o framework RICE para priorização...
446
-
447
- **Template PRD aplicado:**
448
- 1. Problema
449
- 2. Personas
450
- 3. MVP
451
- 4. North Star Metric
452
- ...
453
- ```
124
+ **Não tente validar de memória.** Use sempre os critérios definidos nestes arquivos.
454
125
 
455
126
  ---
456
127
 
457
- ## TIER 3: GATES ADAPTATIVOS
458
-
459
- ### 🎚️ Tiers de Rigor
460
-
461
- | Tier | Quando | Foco | Exemplos de Validação |
462
- |------|--------|------|----------------------|
463
- | **Essencial** | POC, Script | Funciona? | Código executa, fim |
464
- | **Base** | Internal, Product simples | Padrão indústria | Testes, lint, segurança básica |
465
- | **Avançado** | Product complexo | Estado da arte | Arquitetura, observabilidade, compliance |
466
-
467
- ### 🔍 Validação Automática
468
-
469
- **Cada fase tem checklist específico por tier**:
470
-
471
- ```typescript
472
- // Exemplo: Fase 1 (Produto)
473
- gate_checklist_essencial = [
474
- "Problema claramente definido",
475
- "MVP com funcionalidades listadas"
476
- ]
477
-
478
- gate_checklist_base = [
479
- ...gate_checklist_essencial,
480
- "Personas identificadas",
481
- "North Star Metric definida"
482
- ]
483
-
484
- gate_checklist_avancado = [
485
- ...gate_checklist_base,
486
- "Análise de concorrentes",
487
- "Business Model Canvas",
488
- "Roadmap trimestral"
489
- ]
490
- ```
491
-
492
- **Cálculo de Score**:
493
-
494
- ```typescript
495
- score = (itens_validados / total_itens) * 100
496
-
497
- if (score === 100) {
498
- return "✅ Gate aprovado - Todos itens validados"
499
- }
500
- else if (score >= 70) {
501
- return "⚠️ Gate aprovado com pendências - Pode avançar"
502
- }
503
- else {
504
- return "🔴 Gate bloqueado - Necessário corrigir ou aprovar manualmente"
505
- }
506
- ```
507
-
508
- ### 🚦 Protocolo de Gate
509
-
510
- **1. Validação Automática (antes de avançar)**:
511
-
512
- ```
513
- proximo(entregavel)
514
-
515
- validar_gate(fase_atual, entregavel)
516
-
517
- score >= 70?
518
- ├─ SIM → Avança automaticamente
519
- └─ NÃO → BLOQUEIA + mostra pendências
520
- ```
521
-
522
- **2. Bloqueio (score < 70)**:
523
-
524
- ```markdown
525
- 🔴 **Gate Bloqueado** (Score: {score}/100)
526
-
527
- **Itens Validados** ✅:
528
- - [item 1]
529
- - [item 2]
530
-
531
- **Itens Pendentes** ❌:
532
- - [pendência 1]
533
- - [pendência 2]
534
-
535
- **Opções**:
536
- 1. Corrigir pendências e validar novamente
537
- 2. Solicitar aprovação manual (justificar)
538
- ```
539
-
540
- **3. Aprovação Manual**:
541
-
542
- ```
543
- Usuário: "aprovar mesmo assim porque [justificativa]"
544
-
545
- IA chama: aprovar_gate(acao: "aprovar", estado_json, diretorio)
546
-
547
- MCP registra aprovação forçada + motivo
548
-
549
- Avança para próxima fase
550
- ```
551
-
552
- ---
553
-
554
- ## TIER 4: TOOLS MCP
555
-
556
- ### 🛠️ Tools Principais
557
-
558
- **Gerenciamento de Projeto**:
128
+ ## 📁 QUICK REFERENCE - WORKFLOWS
559
129
 
560
- ```typescript
561
- // Iniciar novo projeto
562
- iniciar_projeto(nome, descricao?, diretorio?)
563
- → Cria .maestro/, inicia Fase 1, carrega especialista
130
+ Se o usuário digitar um comando, **LEIA O ARQUIVO IMEDIATAMENTE**:
564
131
 
565
- // Confirmar criação (após análise)
566
- confirmar_projeto(nome, diretorio, tipo_artefato, nivel_complexidade)
567
- Efetiva projeto com classificação escolhida
568
-
569
- // Reclassificar (após PRD ou durante projeto)
570
- classificar(nivel?, prd?, estado_json, diretorio)
571
- Analisa e sugere nova classificação
572
-
573
- // Confirmar reclassificação
574
- confirmar_classificacao(nivel, tipo_artefato?, estado_json, diretorio)
575
- → Aplica nova classificação e ajusta fluxo
576
- ```
577
-
578
- **Avanço de Fases**:
579
-
580
- ```typescript
581
- // Avançar fase (salva + valida + próxima)
582
- proximo(entregavel, estado_json, diretorio, forcar?, nome_arquivo?)
583
- → Persiste, valida gate, carrega próxima fase
584
-
585
- // Validar gate antes de avançar
586
- validar_gate(estado_json, diretorio, fase?, entregavel?)
587
- → Retorna score e checklist
588
-
589
- // Aprovar gate manualmente (APENAS USUÁRIO)
590
- aprovar_gate(acao: "aprovar" | "rejeitar", estado_json, diretorio)
591
- → Força avanço ou cancela
592
- ```
593
-
594
- **Consultas**:
595
-
596
- ```typescript
597
- // Status completo
598
- status(estado_json, diretorio)
599
- → Projeto, fase, gates, métricas
600
-
601
- // Contexto acumulado
602
- contexto(estado_json, diretorio)
603
- → Resumo + stack + modelo + arquitetura
604
-
605
- // Carregar projeto existente
606
- carregar_projeto(estado_json, diretorio)
607
- → Retoma sessão
608
- ```
609
-
610
- **Persistência**:
611
-
612
- ```typescript
613
- // Salvar sem avançar
614
- salvar(conteudo, tipo: "rascunho" | "anexo" | "entregavel", estado_json, diretorio, nome_arquivo?)
615
- → Persiste em docs/ ou .maestro/rascunhos/
616
- ```
617
-
618
- **Fluxos Alternativos**:
619
-
620
- ```typescript
621
- // Nova feature
622
- nova_feature(descricao, impacto_estimado?)
623
- → Inicia fluxo de 6 fases
624
-
625
- // Corrigir bug
626
- corrigir_bug(descricao, severidade?)
627
- → Inicia fluxo de debugging
628
-
629
- // Refatorar
630
- refatorar(area, motivo)
631
- → Inicia fluxo de refatoração
632
- ```
633
-
634
- ### 🎯 Uso Correto dos Tools
635
-
636
- **SEMPRE passar `estado_json` e `diretorio`**:
637
-
638
- ```typescript
639
- // ❌ ERRADO
640
- await mcp_maestro_proximo({
641
- entregavel: "..."
642
- })
643
-
644
- // ✅ CORRETO
645
- const estadoJson = await fs.readFile('.maestro/estado.json', 'utf-8');
646
- await mcp_maestro_proximo({
647
- entregavel: "...",
648
- estado_json: estadoJson,
649
- diretorio: process.cwd()
650
- })
651
- ```
652
-
653
- ---
654
-
655
- ## 📁 QUICK REFERENCE
656
-
657
- ### Gatilhos de Comando
658
-
659
- **Avanço**:
660
- - "próximo", "avançar", "continuar"
661
- - "terminei", "pronto", "finalizado"
662
- - "pode salvar", "está bom"
663
-
664
- **Validação**:
665
- - "validar", "posso avançar?", "checklist"
666
- - "gate", "verificar"
667
-
668
- **Consulta**:
669
- - "status", "onde estou", "fase atual"
670
- - "contexto", "resumo", "o que temos"
671
-
672
- ### Estrutura de Arquivos
673
-
674
- ```
675
- projeto/
676
- ├── .maestro/
677
- │ ├── estado.json # ⭐ FONTE DA VERDADE
678
- │ ├── resumo.json # Cache
679
- │ └── rascunhos/ # Salvamentos temporários
680
- ├── docs/
681
- │ ├── 01-produto/
682
- │ ├── 02-requisitos/
683
- │ └── ...
684
- └── src/
685
- ```
686
-
687
- ### Resources MCP
688
-
689
- ```
690
- maestro://especialista/{nome} # Especialistas
691
- maestro://template/{nome} # Templates de documentos
692
- maestro://guia/{nome} # Guias práticos
693
- maestro://prompt/{area}/{nome} # Prompts avançados
694
- maestro://system-prompt # System prompt completo
695
- ```
696
-
697
- ### Níveis de Complexidade
698
-
699
- | Nível | Fases | Quando Usar |
700
- |-------|-------|-------------|
701
- | Simples | 7 | POC, MVP, < 2 semanas |
702
- | Médio | 13 | SaaS simples, 1-3 meses |
703
- | Complexo | 17 | Multi-tenant, fintech, 3+ meses |
704
-
705
- ### Tiers de Gates
706
-
707
- | Tier | Projeto | Rigor |
708
- |------|---------|-------|
709
- | Essencial | POC, Script | Funciona? |
710
- | Base | Internal, Product | Padrão indústria |
711
- | Avançado | Product complexo | Estado da arte |
712
-
713
- ---
714
-
715
- ## 🎓 EXAMPLES
716
-
717
- ### Exemplo 1: Iniciar Projeto
718
-
719
- ```markdown
720
- User: "Quero criar um sistema de gestão de pedidos para restaurante"
721
-
722
- AI:
723
- 🎯 **Iniciando MCP Maestro**
724
-
725
- Vou iniciar o projeto. Qual o nome?
726
-
727
- User: "RestaurantePro"
728
-
729
- AI: [chama iniciar_projeto]
730
-
731
- 🎯 **Projeto Iniciado**
732
- 📁 Diretório: ./RestaurantePro
733
- 📋 Fase 1: Produto
734
- 🤖 Especialista: Gestão de Produto
735
-
736
- Vamos começar pelo PRD. Como Product Manager, preciso entender:
737
- 1. Qual problema específico estamos resolvendo?
738
- 2. Quem são os usuários principais?
739
- 3. Quais funcionalidades do MVP?
740
- ```
741
-
742
- ### Exemplo 2: Avançar Fase
743
-
744
- ```markdown
745
- User: "Pronto, terminei o PRD"
746
-
747
- AI: [lê estado.json]
748
-
749
- Excelente! Vou salvar e validar o PRD.
750
-
751
- [chama proximo(entregavel: "conteúdo do PRD", estado_json, diretorio)]
752
-
753
- ✅ **PRD Salvo**: docs/01-produto/PRD.md
754
-
755
- 📊 **Classificação Automática**:
756
- - Entidades detectadas: 5 (Pedido, Mesa, Cliente, Produto, Pagamento)
757
- - Integrações: API Pagamento (1)
758
- - Segurança: Auth mencionada (1)
759
- - Escala: ~50 usuários (1)
760
- - **Total: 14 pontos → Nível MÉDIO (13 fases)**
761
-
762
- Confirmar classificação?
763
-
764
- User: "Sim, está correto"
765
-
766
- AI: [chama confirmar_classificacao]
767
-
768
- ✅ **Classificação Confirmada**
769
-
770
- 🎯 **Fase 2: Requisitos**
771
- 🤖 **Especialista**: Engenharia de Requisitos
772
- 📋 **Entregável**: requisitos.md
773
-
774
- Como Engenheiro de Requisitos, vou elaborar...
775
- ```
776
-
777
- ### Exemplo 3: Gate Bloqueado
778
-
779
- ```markdown
780
- User: "Próximo"
781
-
782
- AI: [chama validar_gate]
783
-
784
- 🔴 **Gate Bloqueado** (Score: 60/100)
785
-
786
- **Itens Validados** ✅:
787
- - Requisitos funcionais com IDs únicos
788
- - Requisitos não-funcionais definidos
789
-
790
- **Itens Pendentes** ❌:
791
- - Critérios de aceite em Gherkin
792
- - Matriz de rastreabilidade iniciada
793
-
794
- **Sugestões**:
795
- 1. Adicionar cenários Gherkin para cada RF
796
- 2. Criar tabela RF → User Story
797
-
798
- Deseja corrigir ou aprovar mesmo assim?
799
- ```
800
-
801
- ---
802
-
803
- ## 🔧 TROUBLESHOOTING
804
-
805
- ### Problema: "Tool retorna erro de estado"
806
-
807
- **Causa**: Não passou `estado_json`
808
-
809
- **Solução**:
810
- ```typescript
811
- const estadoJson = await fs.readFile('.maestro/estado.json', 'utf-8');
812
- // Passar em TODOS os tools
813
- ```
814
-
815
- ### Problema: "Especialista errado carregado"
816
-
817
- **Causa**: Não verificou `fase_atual` antes de carregar
818
-
819
- **Solução**:
820
- ```typescript
821
- const estado = JSON.parse(estadoJson);
822
- const fase = estado.fase_atual; // Usar isso para mapear
823
- ```
824
-
825
- ### Problema: "Gate sempre bloqueando"
826
-
827
- **Causa**: Checklist muito rigoroso para o tier
828
-
829
- **Solução**: Verificar `tier_gate` do projeto e ajustar critérios
830
-
831
- ---
132
+ - `/00-maestro` -> `00-maestro.md`
133
+ - `/01-iniciar-projeto` -> `01-iniciar-projeto.md`
134
+ - `/02-avancar-fase` -> `02-avancar-fase.md`
135
+ - `/03-continuar-fase` -> `03-continuar-fase.md`
136
+ - `/04-implementar-historia` -> `04-implementar-historia.md`
137
+ - `/05-nova-feature` -> `05-nova-feature.md`
138
+ - `/06-corrigir-bug` -> `06-corrigir-bug.md`
139
+ - `/07-refatorar-codigo` -> `07-refatorar-codigo.md`
140
+ - `/08-deploy-projeto` -> `08-deploy-projeto.md`
832
141
 
833
- **Versão**: 1.0.0
834
- **Última Atualização**: 2026-01-23
835
- **Sistema**: MCP Maestro
142
+ > **Nota**: Os caminhos dos workflows variam conforme a IDE:
143
+ > - Windsurf: `.windsurf/workflows/`
144
+ > - Cursor: `.cursor/commands/`
145
+ > - Antigravity: `.agent/workflows/`