@maestro-ai/mcp-server 5.3.4 → 5.3.6

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