@maestro-ai/cli 1.1.0 → 1.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 (32) hide show
  1. package/README.md +84 -54
  2. package/content/guides/fases-mapeamento.md +35 -0
  3. package/content/guides/multi-ide.md +32 -0
  4. package/content/guides/playbook-orquestrador.md +45 -0
  5. package/content/rules/quality-gates.md +43 -0
  6. package/content/rules/validation-rules.md +97 -0
  7. package/content/templates/estado-template.json +73 -0
  8. package/content/workflows/avancar-fase.md +84 -0
  9. package/content/workflows/brainstorm.md +22 -8
  10. package/content/workflows/continuar-fase.md +64 -0
  11. package/content/workflows/{mcp-debug.md → corrigir-bug.md} +30 -6
  12. package/content/workflows/iniciar-projeto.md +59 -0
  13. package/content/workflows/maestro.md +77 -0
  14. package/content/workflows/{mcp-feature.md → nova-feature.md} +81 -28
  15. package/content/workflows/{mcp-refactor.md → refatorar-codigo.md} +33 -10
  16. package/content/workflows/status-projeto.md +54 -0
  17. package/dist/commands/init.d.ts +2 -2
  18. package/dist/commands/init.js +86 -74
  19. package/dist/index.js +94 -5
  20. package/package.json +10 -4
  21. package/content/workflows/README-MCP.md +0 -363
  22. package/content/workflows/debug.md +0 -103
  23. package/content/workflows/mcp-next.md +0 -388
  24. package/content/workflows/mcp-start.md +0 -304
  25. package/content/workflows/mcp-status.md +0 -400
  26. package/content/workflows/preview.md +0 -81
  27. package/content/workflows/status.md +0 -86
  28. /package/content/workflows/{create.md → create-app.md} +0 -0
  29. /package/content/workflows/{enhance.md → melhorar-feature.md} +0 -0
  30. /package/content/workflows/{test.md → testar.md} +0 -0
  31. /package/content/workflows/{ui-ux-pro-max.md → ux-avancado.md} +0 -0
  32. /package/content/workflows/{mcp-gate.md → validar-gate.md} +0 -0
@@ -1,16 +1,29 @@
1
1
  ---
2
- description: Structured brainstorming for projects and features. Explores multiple options before implementation.
2
+ description: Exploração estruturada de ideias, integrada ao estado do Maestro.
3
3
  ---
4
4
 
5
- # /brainstorm - Structured Idea Exploration
5
+ # /brainstorm - Exploração Estruturada de Ideias
6
6
 
7
7
  $ARGUMENTS
8
8
 
9
9
  ---
10
10
 
11
+ ## Pré-requisitos e conexão com o Maestro
12
+
13
+ 1. Execute `/maestro` para validar o estado atual e detectar fase/artefatos focos.
14
+ 2. Carregue `.maestro/estado.json` para contextualizar o brainstorming com o problema/fase em andamento:
15
+ ```javascript
16
+ const estado = lerJson('.maestro/estado.json');
17
+ const faseAtual = estado.fases?.[estado.faseAtual];
18
+ ```
19
+ 3. Registre no histórico (`estado.historico`) o evento `brainstorm_executado`, indicando o tópico e os caminhos escolhidos. Chame `salvarEstado(estado)` após concluir.
20
+ 4. Use `content/guides/fases-mapeamento.md` para puxar especialistas/prompts relacionados (ex.: fase 1 → Gestão de Produto, fase 3 → UX).
21
+
22
+ ---
23
+
11
24
  ## Purpose
12
25
 
13
- This command activates BRAINSTORM mode for structured idea exploration. Use when you need to explore options before committing to an implementation.
26
+ This command activates BRAINSTORM mode for structured idea exploration. Use when you need to explore options before committing to an implementation and quer salvar as conclusões no estado do Maestro.
14
27
 
15
28
  ---
16
29
 
@@ -22,6 +35,7 @@ When `/brainstorm` is triggered:
22
35
  - What problem are we solving?
23
36
  - Who is the user?
24
37
  - What constraints exist?
38
+ - Relacione com `faseAtual.nome` e `faseAtual.especialista` para manter alinhamento.
25
39
 
26
40
  2. **Generate options**
27
41
  - Provide at least 3 different approaches
@@ -34,7 +48,7 @@ When `/brainstorm` is triggered:
34
48
 
35
49
  ---
36
50
 
37
- ## Output Format
51
+ ## Output Format (registrar em `docs/brainstorm/<slug>.md` e anexar ao estado)
38
52
 
39
53
  ```markdown
40
54
  ## 🧠 Brainstorm: [Topic]
@@ -97,10 +111,10 @@ What direction would you like to explore?
97
111
  ## Examples
98
112
 
99
113
  ```
100
- /brainstorm authentication system
101
- /brainstorm state management for complex form
102
- /brainstorm database schema for social app
103
- /brainstorm caching strategy
114
+ /brainstorm authentication system (fase 2 – requisitos)
115
+ /brainstorm redesign para dashboard (fase 3 – UX)
116
+ /brainstorm integrações com ERP (fase 6 – Integração)
117
+ /brainstorm caching strategy para escala
104
118
  ```
105
119
 
106
120
  ---
@@ -0,0 +1,64 @@
1
+ ---
2
+ description: Retoma a fase atual exatamente do ponto onde foi interrompida
3
+ ---
4
+
5
+ # 🔄 Workflow de Continuação - /continuar-fase
6
+
7
+ ## 1. Ler estado atual
8
+
9
+ ```javascript
10
+ const estado = lerJson('.maestro/estado.json');
11
+ const faseAtual = estado.fases[estado.faseAtual];
12
+ if (!faseAtual) throw new Error('Fase atual não encontrada');
13
+
14
+ function salvarEstado(state) {
15
+ escreverJson('.maestro/estado.json', state, { spaces: 2 });
16
+ }
17
+ ```
18
+
19
+ ## 2. Identificar último artefato
20
+
21
+ - Use `faseAtual.artefatos` para encontrar o arquivo principal.
22
+ - Se vazio, referencie o template padrão da fase (ex.: `docs/01-produto/PRD.md`).
23
+
24
+ ```javascript
25
+ const arquivo = faseAtual.artefatos?.slice(-1)[0] || faseAtual.entregavel;
26
+ const analise = analisarArquivo(arquivo);
27
+ /* analise = {
28
+ secoesPreenchidas,
29
+ secoesFaltantes,
30
+ percentualCompleto,
31
+ proximaSecao
32
+ } */
33
+ ```
34
+
35
+ ## 3. Mensagem de retomada
36
+
37
+ ```
38
+ 📋 **Retomando Fase {estado.faseAtual}/{estado.totalFases} - {faseAtual.nome}**
39
+ - Especialista: {faseAtual.especialista}
40
+ - Artefato: {arquivo}
41
+ - Progresso: {analise.percentualCompleto}%
42
+ - Última ação: {analise.ultimaSecao}
43
+ - Próxima tarefa: {analise.proximaSecao}
44
+ ```
45
+
46
+ ## 4. Carregar contexto
47
+
48
+ 1. Consulte `content/guides/fases-mapeamento.md` para mapear fase → especialista/prompt/template/skills.
49
+ 2. Abra o especialista e prompt correspondentes. Ex.: fase 2 → `specialists/Especialista em Engenharia de Requisitos com IA.md` + `prompts/requisitos.md`.
50
+ 3. Carregue os templates associados (ver tabela) e compare com o artefato atual para detectar seções faltantes.
51
+ 4. Liste explicitamente na resposta quais arquivos serão atualizados (ex.: `docs/02-requisitos/requisitos.md`, `templates/matriz-rastreabilidade.md`).
52
+
53
+ ## 5. Retomar execução
54
+
55
+ - Perguntar ao usuário se deseja continuar exatamente da próxima seção, revisar algo ou mudar o foco.
56
+ - Ao continuar, seguir checklist da fase (regras em `content/rules/validation-rules.md`).
57
+
58
+ ## 6. Atualização de estado (manual)
59
+
60
+ Quando terminar a sessão:
61
+ - Atualizar `faseAtual.progresso` e `faseAtual.artefatos`.
62
+ - Registrar nota no histórico, se necessário.
63
+ - Atualizar `estado.metrica.ultimoComando = '/continuar-fase'`.
64
+ - Chamar `salvarEstado(estado)` para persistir.
@@ -2,12 +2,27 @@
2
2
  description: Correção de bugs com fluxo estruturado (Reprodução → Análise → Fix → Regressão)
3
3
  ---
4
4
 
5
- # /mcp-debug - Correção de Bug MCP
5
+ # /corrigir-bug - Correção de Bug Maestro
6
6
 
7
7
  $ARGUMENTS
8
8
 
9
9
  ---
10
10
 
11
+ ## Integração com o Maestro
12
+
13
+ 1. Execute `/maestro` antes para garantir que o estado está sincronizado e detectar bloqueios ativos.
14
+ 2. Crie helpers mentais para ler e salvar estado:
15
+ ```javascript
16
+ const estado = lerJson('.maestro/estado.json');
17
+ function salvarEstado(next) {
18
+ escreverJson('.maestro/estado.json', next, { spaces: 2 });
19
+ }
20
+ ```
21
+ 3. Sempre passe `estado_json` para qualquer tool MCP que for invocado e registre eventos no `estado.historico` (`acao: "bug_iniciado"`, `bug_id`, `severidade`).
22
+ 4. Use `content/guides/fases-mapeamento.md` para carregar especialistas, prompts e templates de apoio (Debugging, DevOps, Testes, etc.).
23
+
24
+ ---
25
+
11
26
  ## Objetivo
12
27
 
13
28
  Corrigir bugs de forma estruturada usando fluxo de 4 fases do MCP Maestro, com análise de causa raiz e testes de regressão.
@@ -21,8 +36,8 @@ Corrigir bugs de forma estruturada usando fluxo de 4 fases do MCP Maestro, com a
21
36
  - Erro que requer análise sistemática
22
37
 
23
38
  **NÃO usar para:**
24
- - Nova funcionalidade → Use `/mcp-feature`
25
- - Refatoração de código → Use `/mcp-refactor`
39
+ - Nova funcionalidade → Use `/nova-feature`
40
+ - Refatoração de código → Use `/refatorar-codigo`
26
41
 
27
42
  ---
28
43
 
@@ -71,12 +86,21 @@ Corrigir bugs de forma estruturada usando fluxo de 4 fases do MCP Maestro, com a
71
86
 
72
87
  ### Passo 2: Iniciar Fluxo de Debugging
73
88
 
89
+ > [!IMPORTANT]
90
+ > **Protocolo stateless:** carregar `.maestro/estado.json` do disco antes de qualquer chamada.
91
+
74
92
  ```typescript
93
+ const estadoJson = lerArquivo('.maestro/estado.json');
94
+
75
95
  await mcp_maestro_corrigir_bug({
76
96
  descricao: "[descrição fornecida]",
77
97
  severidade: "[critica/alta/media/baixa]",
78
- ticket_id: "[opcional: JIRA-123]"
98
+ ticket_id: "[opcional: JIRA-123]",
99
+ estado_json: estadoJson,
100
+ diretorio: process.cwd()
79
101
  });
102
+
103
+ salvarEstado(registrarHistorico(estado, { acao: 'bug_iniciado', severidade }));
80
104
  ```
81
105
 
82
106
  **MCP cria contexto de bug e retorna:**
@@ -315,7 +339,7 @@ Executar deploy? Use `/deploy [ambiente]`
315
339
  ### Exemplo 1: Bug Crítico (Duplicação de Pedido)
316
340
 
317
341
  ```
318
- User: /mcp-debug
342
+ User: /corrigir-bug
319
343
 
320
344
  AI: Descreva o bug:
321
345
 
@@ -382,7 +406,7 @@ AI: ✅ Fluxo iniciado (BUG-001) - Severidade CRÍTICA
382
406
  ### Exemplo 2: Bug de UI (Baixa Severidade)
383
407
 
384
408
  ```
385
- User: /mcp-debug Botão de logout desalinhado no mobile
409
+ User: /corrigir-bug Botão de logout desalinhado no mobile
386
410
 
387
411
  AI: Severidade?
388
412
 
@@ -0,0 +1,59 @@
1
+ ---
2
+ description: Inicia novo projeto Maestro com classificação automática e setup inteligente
3
+ ---
4
+
5
+ # 🚀 Workflow de Iniciação - /iniciar-projeto
6
+
7
+ ## 1. Coleta de informações
8
+
9
+ Pergunte ao usuário (ou utilize argumentos) para obter:
10
+ - Nome do projeto
11
+ - Descrição curta (problema, público, solução)
12
+
13
+ ## 2. Classificação automática
14
+
15
+ 1. Carregue o template em `templates/estado-template.json` e os fluxos definidos em `src/src/flows/types.ts` (funções `getFluxo`, `getFluxoComStitch`).
16
+ 2. Use a função mental abaixo para sugerir configuração:
17
+
18
+ ```javascript
19
+ const analise = classificarProjeto({ nome, descricao });
20
+ const fluxo = getFluxoComStitch(analise.complexidade, analise.usarStitch);
21
+ /* Retorna:
22
+ * - complexidade (simples/medio/complexo)
23
+ * - tier (7/13/17 fases)
24
+ * - especialistaInicial (fase 1 do fluxo escolhido)
25
+ */
26
+ ```
27
+
28
+ Mostre a classificação e peça confirmação. Permita ajustes manuais caso o usuário solicite (ex.: "reclassificar para médio").
29
+
30
+ ## 3. Geração do estado inicial
31
+
32
+ - Copie o template de estado e popule as fases com base em `fluxo.fases`.
33
+ - Garanta que cada fase traga `especialista`, `entregavel_esperado`, `scoreMinimo` e `gate_checklist` do fluxo MCP.
34
+ - Registre em `historico` o evento `projeto_iniciado` com justificativa da classificação.
35
+ - Defina helpers mentais para leitura/escrita:
36
+ ```javascript
37
+ const estado = preencherTemplate(...);
38
+ function salvarEstado(state) {
39
+ escreverJson('.maestro/estado.json', state, { spaces: 2 });
40
+ }
41
+ salvarEstado(estado);
42
+ ```
43
+
44
+ ## 4. Setup do contexto
45
+
46
+ - Copiar templates necessários para `docs/<fase>/...`
47
+ - Registrar especialista inicial (`Gestão de Produto` para fase 1)
48
+ - Preparar prompts e skills relevantes
49
+
50
+ ## 5. Mensagem de saída
51
+
52
+ ```
53
+ ✅ Projeto iniciado!
54
+ - Fase 1/ {totalFases}: Produto
55
+ - Especialista: Gestão de Produto
56
+ - Entregável: docs/01-produto/PRD.md
57
+
58
+ Próximo passo: responda às perguntas do especialista para preencher o PRD.
59
+ ```
@@ -0,0 +1,77 @@
1
+ ---
2
+ description: Workflow universal inteligente que detecta estado e toma a próxima ação
3
+ ---
4
+
5
+ # 🤖 Workflow Universal - /maestro
6
+
7
+ ## Objetivo
8
+
9
+ Detectar automaticamente o estado do projeto Maestro, validar se o estado reflete os fluxos MCP (7/13/17 fases + Stitch) e decidir a ação adequada, respondendo no chat com contexto completo.
10
+
11
+ ## Sincronização com os fluxos MCP
12
+
13
+ Antes de qualquer decisão:
14
+
15
+ 1. Ler `.maestro/estado.json` **e** o template original em `packages/cli/content/templates/estado-template.json` para entender a estrutura completa.
16
+ 2. Ler `src/src/flows/types.ts` para conhecer `FLUXO_SIMPLES`, `FLUXO_MEDIO`, `FLUXO_COMPLEXO` e a inserção opcional de Stitch (`getFluxoComStitch`).
17
+ 3. Verificar se `estado.fases` segue a mesma ordem e quantidade de fases do fluxo correspondente. Se detectar divergências (fase faltando, numeração diferente), listar no resumo e sugerir ao usuário rodar `/iniciar-projeto` ou ajustar manualmente.
18
+
19
+ ## Como funciona
20
+
21
+ 1. **Ler estado** em `.maestro/estado.json` (se não existir, classificar como `novo_projeto`).
22
+ 2. **Validar consistência** comparando `estado.fases` com o fluxo MCP adequado.
23
+ 3. **Classificar estado** usando a função mental abaixo.
24
+ 4. **Mapear ação** (`/iniciar-projeto`, `/continuar-fase`, `/avancar-fase`).
25
+ 5. **Responder** com resumo e próxima ação sugerida.
26
+
27
+ ```javascript
28
+ const estado = lerJson('.maestro/estado.json');
29
+ const fluxo = estado?.projeto
30
+ ? getFluxoComStitch(estado.projeto.complexidade, estado.projeto.usarStitch)
31
+ : null;
32
+
33
+ if (!estado || !estado.projeto?.nome) {
34
+ return { status: 'novo_projeto', proximaAcao: '/iniciar-projeto' };
35
+ }
36
+
37
+ const faseAtual = estado.fases[estado.faseAtual];
38
+ if (!faseAtual || faseAtual.status !== 'concluida') {
39
+ return {
40
+ status: 'fase_incompleta',
41
+ proximaAcao: '/continuar-fase',
42
+ fase: estado.faseAtual,
43
+ arquivoFoco: faseAtual?.artefatos?.slice(-1)[0] || fluxo?.fases?.find(f => f.numero === estado.faseAtual)?.entregavel_esperado,
44
+ divergenciasFluxo: compararComFluxo(estado.fases, fluxo?.fases)
45
+ };
46
+ }
47
+
48
+ return {
49
+ status: 'pronto_para_avancar',
50
+ proximaAcao: '/avancar-fase',
51
+ fase: estado.faseAtual,
52
+ proximaFase: estado.faseAtual + 1,
53
+ divergenciasFluxo: compararComFluxo(estado.fases, fluxo?.fases)
54
+ };
55
+ ```
56
+
57
+ ## Template de resposta
58
+
59
+ ```
60
+ 📋 **Status Detectado:** {status}
61
+ - Projeto: {estado.projeto.nome}
62
+ - Fase atual: {estado.faseAtual}/{totalFases} - {faseAtual.nome}
63
+ - Especialista: {faseAtual.especialista}
64
+ - Arquivo foco: {arquivoFoco}
65
+
66
+ 🎯 **Próxima ação sugerida:** {proximaAcao}
67
+ ➡️ Execute o comando correspondente ou peça um ajuste específico.
68
+
69
+ {divergenciasFluxo?.length ? `⚠️ Divergências detectadas entre estado e fluxo MCP:
70
+ - ${divergenciasFluxo.join('\n- ')}` : ''}
71
+ ```
72
+
73
+ ## Regras rápidas
74
+
75
+ - Sempre verificar se há bloqueios (`faseAtual.status === 'bloqueado'`) e destacar no resumo.
76
+ - Se detectar `novo_projeto`, **não** tentar gerar estado: apenas orientar o usuário a rodar `/iniciar-projeto`.
77
+ - Se o usuário preferir outra ação, respeitar e registrar no histórico (se aplicável).
@@ -2,12 +2,27 @@
2
2
  description: Adicionar nova feature com fluxo estruturado (Análise → Implementação → Deploy)
3
3
  ---
4
4
 
5
- # /mcp-feature - Nova Feature MCP
5
+ # /nova-feature - Nova Feature Maestro
6
6
 
7
7
  $ARGUMENTS
8
8
 
9
9
  ---
10
10
 
11
+ ## Pré-requisitos e integração com o Maestro
12
+
13
+ 1. Execute `/maestro` para garantir que o estado esteja sincronizado com os fluxos MCP (7/13/17 + Stitch).
14
+ 2. Carregue o estado antes de qualquer tool:
15
+ ```javascript
16
+ const estado = lerJson('.maestro/estado.json');
17
+ function salvarEstado(novoEstado) {
18
+ escreverJson('.maestro/estado.json', novoEstado, { spaces: 2 });
19
+ }
20
+ ```
21
+ 3. Use `content/guides/fases-mapeamento.md` para alinhar especialistas, prompts e templates de suporte a features.
22
+ 4. Todos os artefatos criados devem ficar dentro de `docs/features/FEATURE-ID/` e ser registrados em `estado.historico`.
23
+
24
+ ---
25
+
11
26
  ## Objetivo
12
27
 
13
28
  Adicionar nova funcionalidade em projeto existente usando fluxo estruturado de 6 fases do MCP Maestro.
@@ -21,9 +36,9 @@ Adicionar nova funcionalidade em projeto existente usando fluxo estruturado de 6
21
36
  - Feature que precisa de análise de impacto
22
37
 
23
38
  **NÃO usar para:**
24
- - Correção de bugs → Use `/mcp-debug`
25
- - Melhorias de código → Use `/mcp-refactor`
26
- - Novo projeto → Use `/mcp-start`
39
+ - Correção de bugs → Use `/corrigir-bug`
40
+ - Melhorias de código → Use `/refatorar-codigo`
41
+ - Novo projeto → Use `/iniciar-projeto`
27
42
 
28
43
  ---
29
44
 
@@ -68,7 +83,7 @@ Adicionar nova funcionalidade em projeto existente usando fluxo estruturado de 6
68
83
  **Se forneceu argumentos:**
69
84
 
70
85
  ```bash
71
- /mcp-feature Sistema de notificações push
86
+ /nova-feature Sistema de notificações push
72
87
  ```
73
88
 
74
89
  → Usar como descrição, pedir apenas impacto
@@ -77,13 +92,22 @@ Adicionar nova funcionalidade em projeto existente usando fluxo estruturado de 6
77
92
 
78
93
  ### Passo 2: Iniciar Fluxo de Feature
79
94
 
95
+ > [!IMPORTANT]
96
+ > **Protocolo stateless:** sempre envie `estado_json` carregado do disco para os tools MCP.
97
+
80
98
  ```typescript
99
+ const estadoJson = lerArquivo('.maestro/estado.json');
100
+
81
101
  await mcp_maestro_nova_feature({
82
102
  descricao: "[descrição fornecida]",
83
- impacto_estimado: "[baixo/médio/alto]"
103
+ impacto_estimado: "[baixo/médio/alto]",
104
+ estado_json: estadoJson,
105
+ diretorio: process.cwd()
84
106
  });
85
107
  ```
86
108
 
109
+ Após a resposta, atualize `estado.historico` com `acao: "feature_iniciada"`, registrando `feature_id` e impacto.
110
+
87
111
  **MCP cria contexto separado para a feature e retorna:**
88
112
 
89
113
  ```json
@@ -146,25 +170,42 @@ Vamos começar. Que **entidades** ou **tabelas** serão afetadas?
146
170
 
147
171
  ### Passo 4: Avançar Entre Fases (Frontend-First)
148
172
 
149
- **Usar `/mcp-next` para cada fase:**
173
+ **Usar `/avancar-fase` (via `/maestro`) para conectar com o fluxo principal**
174
+
175
+ Quando estiver trabalhando dentro da feature, o acompanhamento das fases internas segue o mesmo padrão do Maestro. Utilize:
150
176
 
151
177
  ```
152
178
  Fase 1: Análise ✅
153
- ↓ /mcp-next
179
+ ↓ /avancar-fase (passando o artefato docs/features/FEATURE-ID/01-impacto.md)
154
180
  Fase 2: Requisitos ✅
155
- ↓ /mcp-next
156
- Fase 3: Design ✅
157
- ✓ Gera: Contrato de API (OpenAPI)
158
- ↓ /mcp-next
181
+ ↓ /avancar-fase
182
+ ...
183
+ ```
184
+
185
+ Caso precise apenas retomar o trabalho da feature antes de avançar, use `/continuar-fase` com o arquivo da subfase correspondente.
186
+
187
+ ---
188
+
189
+ ### Passo 4: Avançar Entre Fases (Frontend-First)
190
+
191
+ **Mapeie especialistas e templates** usando `guides/fases-mapeamento.md` para cada etapa abaixo e carregue os prompts adequados (ex.: Contrato API → especialista "Contrato de API").
192
+
193
+ ```
194
+ Fase 1: Análise ✅
195
+ ↓ /avancar-fase (ou `/maestro` → sugere avanço)
196
+ Fase 2: Requisitos ✅
197
+ ↓ /avancar-fase
198
+ Fase 3: Design ✅ (gera contrato OpenAPI)
199
+ ↓ /avancar-fase
159
200
  Fase 4: Implementação
160
201
  ├─ US-001-CONT (Contrato) ✅
161
202
  ├─ US-001-FE (Frontend) 🔄 ← Paralelo
162
- ├─ US-001-BE (Backend) 🔄 ← Paralelo
203
+ ├─ US-001-BE (Backend) 🔄 ← Paralelo
163
204
  └─ INT-001 (Integração) ⏳ ← Após FE+BE
164
- ↓ /mcp-next
205
+ ↓ /avancar-fase
165
206
  Fase 5: Testes ✅
166
- ↓ /mcp-next
167
- Fase 6: Deploy ✅
207
+ ↓ /avancar-fase
208
+ Fase 6: Deploy ✅ (encerra feature e atualiza estado)
168
209
  ```
169
210
 
170
211
  **Protocolo Frontend-First:**
@@ -191,29 +232,41 @@ Fase 6: Deploy ✅
191
232
  **Na Fase 4 (Implementação):**
192
233
 
193
234
  ```typescript
235
+ const estadoJson = lerArquivo('.maestro/estado.json');
236
+
194
237
  // Contrato
195
238
  await mcp_maestro_implementar_historia({
196
239
  historia_id: "US-001-CONT",
197
- modo: "iniciar"
240
+ modo: "iniciar",
241
+ estado_json: estadoJson,
242
+ diretorio: process.cwd()
198
243
  });
199
244
 
200
245
  // Frontend (pode iniciar em paralelo após contrato)
201
246
  await mcp_maestro_implementar_historia({
202
247
  historia_id: "US-001-FE",
203
- modo: "iniciar"
248
+ modo: "iniciar",
249
+ estado_json: estadoJson,
250
+ diretorio: process.cwd()
204
251
  });
205
252
 
206
253
  // Backend (pode iniciar em paralelo após contrato)
207
254
  await mcp_maestro_implementar_historia({
208
255
  historia_id: "US-001-BE",
209
- modo: "iniciar"
256
+ modo: "iniciar",
257
+ estado_json: estadoJson,
258
+ diretorio: process.cwd()
210
259
  });
211
260
 
212
261
  // Integração (somente após FE e BE finalizados)
213
262
  await mcp_maestro_implementar_historia({
214
263
  historia_id: "INT-001",
215
- modo: "iniciar"
264
+ modo: "iniciar",
265
+ estado_json: estadoJson,
266
+ diretorio: process.cwd()
216
267
  });
268
+
269
+ salvarEstado(atualizarHistorico(estado, { acao: 'feature_historia_iniciada', historia: 'INT-001' }));
217
270
  ```
218
271
 
219
272
  ---
@@ -223,7 +276,7 @@ await mcp_maestro_implementar_historia({
223
276
  ### Exemplo 1: Feature Simples (Impacto Baixo)
224
277
 
225
278
  ```
226
- User: /mcp-feature Adicionar filtro de data na listagem de pedidos
279
+ User: /nova-feature Adicionar filtro de data na listagem de pedidos
227
280
 
228
281
  AI: Qual o impacto estimado? (baixo/médio/alto)
229
282
 
@@ -244,13 +297,13 @@ AI: ✅ Fluxo de Feature Iniciado (FEAT-001)
244
297
 
245
298
  User: Sim
246
299
 
247
- AI: [Avança para Fase 2 com /mcp-next]
300
+ AI: [Avança para Fase 2 executando `/maestro` → `/avancar-fase`]
248
301
  ```
249
302
 
250
303
  ### Exemplo 2: Feature Complexa (Impacto Alto)
251
304
 
252
305
  ```
253
- User: /mcp-feature Sistema de notificações push em tempo real
306
+ User: /nova-feature Sistema de notificações push em tempo real
254
307
 
255
308
  AI: Qual o impacto estimado?
256
309
 
@@ -290,10 +343,10 @@ AI: ✅ Fluxo de Feature Iniciado (FEAT-002)
290
343
  ## Comandos Relacionados
291
344
 
292
345
  ```
293
- /mcp-feature [descrição] → Inicia fluxo de feature
294
- /mcp-next Avança entre fases
295
- /mcp-status Ver status da feature
296
- /mcp-debug → Se bug aparecer durante feature
346
+ /nova-feature [descrição] → Inicia fluxo de feature alinhado ao estado
347
+ /continuar-fase Retoma etapa corrente da feature
348
+ /avancar-fase Valida gate e registra próxima fase
349
+ /corrigir-bug → Se surgir bug durante a feature
297
350
  ```
298
351
 
299
352
  ---
@@ -369,7 +422,7 @@ FEAT-001: Sistema de Notificações (Épico)
369
422
  ├─ FEAT-001-B: Frontend (UI)
370
423
  └─ FEAT-001-C: Integração (Push)
371
424
 
372
- Implementar um por vez com /mcp-feature
425
+ Implementar um por vez com `/nova-feature`
373
426
  ```
374
427
 
375
428
  ### Conflito com Feature em Andamento
@@ -2,12 +2,28 @@
2
2
  description: Refatoração estruturada de código (Análise → Testes → Refactor → Validação)
3
3
  ---
4
4
 
5
- # /mcp-refactor - Refatoração MCP
5
+ # /refatorar-codigo - Refatoração Maestro
6
6
 
7
7
  $ARGUMENTS
8
8
 
9
9
  ---
10
10
 
11
+ ## Integração obrigatória com o Maestro
12
+
13
+ 1. **Sincronize o estado** executando `/maestro` antes de começar. Garanta que não há gates bloqueados.
14
+ 2. **Carregue o estado e defina helpers**:
15
+ ```javascript
16
+ const estado = lerJson('.maestro/estado.json');
17
+ function salvarEstado(novoEstado) {
18
+ escreverJson('.maestro/estado.json', novoEstado, { spaces: 2 });
19
+ }
20
+ ```
21
+ 3. Sempre passe `estado_json` ao chamar qualquer tool MCP (`mcp_maestro_refatorar`, `mcp_maestro_avancar_refatoracao`, etc.).
22
+ 4. Atualize `estado.historico` com eventos como `refatoracao_iniciada`, `refatoracao_passo_concluido` e `refatoracao_finalizada`, armazenando `refactor_id` e arquivos afetados.
23
+ 5. Use `content/guides/fases-mapeamento.md` para escolher especialistas de apoio (Arquitetura, Performance, Testes) conforme o foco da refatoração.
24
+
25
+ ---
26
+
11
27
  ## Objetivo
12
28
 
13
29
  Refatorar código de forma segura e estruturada usando fluxo de 5 fases do MCP Maestro, com testes de caracterização e validação contínua.
@@ -22,8 +38,8 @@ Refatorar código de forma segura e estruturada usando fluxo de 5 fases do MCP M
22
38
  - Migrar para novo padrão ou arquitetura
23
39
 
24
40
  **NÃO usar para:**
25
- - Adicionar funcionalidade → Use `/mcp-feature`
26
- - Corrigir bugs → Use `/mcp-debug`
41
+ - Adicionar funcionalidade → Use `/nova-feature`
42
+ - Corrigir bugs → Use `/corrigir-bug`
27
43
 
28
44
  ---
29
45
 
@@ -75,10 +91,16 @@ Refatorar código de forma segura e estruturada usando fluxo de 5 fases do MCP M
75
91
  ### Passo 2: Iniciar Fluxo de Refatoração
76
92
 
77
93
  ```typescript
94
+ const estadoJson = lerArquivo('.maestro/estado.json');
95
+
78
96
  await mcp_maestro_refatorar({
79
97
  area: "[área fornecida]",
80
- motivo: "[motivo]"
98
+ motivo: "[motivo]",
99
+ estado_json: estadoJson,
100
+ diretorio: process.cwd()
81
101
  });
102
+
103
+ salvarEstado(registrarHistorico(estado, { acao: 'refatoracao_iniciada', area, motivo }));
82
104
  ```
83
105
 
84
106
  **MCP cria contexto e retorna:**
@@ -397,7 +419,7 @@ Use: `/deploy production`
397
419
  ### Exemplo 1: Refatorar Serviço Complexo
398
420
 
399
421
  ```
400
- User: /mcp-refactor
422
+ User: /refatorar-codigo
401
423
 
402
424
  AI: Qual área deseja refatorar?
403
425
 
@@ -435,7 +457,7 @@ AI: [Fase 2: Cria testes de caracterização]
435
457
 
436
458
  Todos passando. Pronto para refatorar!
437
459
 
438
- User: /mcp-next
460
+ User: /avancar-fase (ou `/maestro` para validar e avançar)
439
461
 
440
462
  AI: [Fase 3: Refatoração]
441
463
 
@@ -463,7 +485,7 @@ AI: [Fase 3: Refatoração]
463
485
  ### Exemplo 2: Migração de Padrão
464
486
 
465
487
  ```
466
- User: /mcp-refactor Migrar de callback para async/await
488
+ User: /refatorar-codigo Migrar de callback para async/await
467
489
 
468
490
  AI: Motivo?
469
491
 
@@ -496,9 +518,10 @@ AI: ✅ Refactor initiated
496
518
  ## Comandos Relacionados
497
519
 
498
520
  ```
499
- /mcp-refactor [área] → Inicia refatoração
500
- /mcp-next Avança entre fases/passos
501
- /mcp-status Ver progresso da refatoração
521
+ /refatorar-codigo [área] → Inicia refatoração integrada ao estado
522
+ /continuar-fase Retoma passo atual (usa análise do artefato)
523
+ /avancar-fase Valida gate pós-refatoração
524
+ /status-projeto → Ver progresso e métricas
502
525
  ```
503
526
 
504
527
  ---