@maestro-ai/cli 1.0.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 (38) hide show
  1. package/README.md +161 -29
  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/GEMINI.md +841 -0
  6. package/content/rules/RULES.md +835 -0
  7. package/content/rules/adapters/copilot.md +10 -0
  8. package/content/rules/adapters/cursor.md +10 -0
  9. package/content/rules/adapters/gemini.md +13 -0
  10. package/content/rules/adapters/windsurf.md +10 -0
  11. package/content/rules/quality-gates.md +43 -0
  12. package/content/rules/validation-rules.md +97 -0
  13. package/content/templates/estado-template.json +73 -0
  14. package/content/workflows/avancar-fase.md +84 -0
  15. package/content/workflows/brainstorm.md +22 -8
  16. package/content/workflows/continuar-fase.md +64 -0
  17. package/content/workflows/{mcp-debug.md → corrigir-bug.md} +30 -6
  18. package/content/workflows/iniciar-projeto.md +59 -0
  19. package/content/workflows/maestro.md +77 -0
  20. package/content/workflows/{mcp-feature.md → nova-feature.md} +81 -28
  21. package/content/workflows/{mcp-refactor.md → refatorar-codigo.md} +33 -10
  22. package/content/workflows/status-projeto.md +54 -0
  23. package/dist/commands/init.d.ts +2 -1
  24. package/dist/commands/init.js +99 -55
  25. package/dist/index.js +100 -3
  26. package/package.json +10 -4
  27. package/content/workflows/README-MCP.md +0 -363
  28. package/content/workflows/debug.md +0 -103
  29. package/content/workflows/mcp-next.md +0 -388
  30. package/content/workflows/mcp-start.md +0 -304
  31. package/content/workflows/mcp-status.md +0 -400
  32. package/content/workflows/preview.md +0 -81
  33. package/content/workflows/status.md +0 -86
  34. /package/content/workflows/{create.md → create-app.md} +0 -0
  35. /package/content/workflows/{enhance.md → melhorar-feature.md} +0 -0
  36. /package/content/workflows/{test.md → testar.md} +0 -0
  37. /package/content/workflows/{ui-ux-pro-max.md → ux-avancado.md} +0 -0
  38. /package/content/workflows/{mcp-gate.md → validar-gate.md} +0 -0
@@ -0,0 +1,10 @@
1
+ ---
2
+ description: Adapter for GitHub Copilot
3
+ target_path: .github/copilot-instructions.md
4
+ ---
5
+
6
+ # GitHub Copilot Adapter
7
+
8
+ Este adaptador formata as regras para o GitHub Copilot.
9
+
10
+ O conteúdo de `RULES.md` será inserido automaticamente pelo CLI.
@@ -0,0 +1,10 @@
1
+ ---
2
+ description: Adapter for Cursor IDE
3
+ target_path: .cursorrules
4
+ ---
5
+
6
+ # Cursor Adapter
7
+
8
+ Este adaptador formata as regras para o Cursor IDE.
9
+
10
+ O conteúdo de `RULES.md` será inserido automaticamente pelo CLI.
@@ -0,0 +1,13 @@
1
+ ---
2
+ trigger: always_on
3
+ system: maestro
4
+ version: 1.0.0
5
+ description: Adapter for Gemini/Antigravity IDE
6
+ target_path: .gemini/GEMINI.md
7
+ ---
8
+
9
+ # Gemini Adapter
10
+
11
+ Este adaptador adiciona o frontmatter específico para Gemini/Antigravity.
12
+
13
+ O conteúdo de `RULES.md` será inserido automaticamente pelo CLI.
@@ -0,0 +1,10 @@
1
+ ---
2
+ description: Adapter for Windsurf IDE
3
+ target_path: .windsurfrules
4
+ ---
5
+
6
+ # Windsurf Adapter
7
+
8
+ Este adaptador formata as regras para o Windsurf IDE.
9
+
10
+ O conteúdo de `RULES.md` será inserido automaticamente pelo CLI.
@@ -0,0 +1,43 @@
1
+ # 🔐 Quality Gates por Transição
2
+
3
+ | De → Para | Checklist Obrigatória | Validadores sugeridos |
4
+ |-----------|----------------------|------------------------|
5
+ | Produto → Requisitos | MVP 100% coberto nos requisitos; personas refletidas | `validarCoberturaMVP(PRD, requisitos)` |
6
+ | Requisitos → UX Design | Fluxos/jornadas definidos; critérios de aceite aprovados | `analisarFluxosUsuarios(requisitos)` |
7
+ | UX Design → Prototipagem (Stitch) | Wireframes completos; estilo aprovado | `validarWireframes(designDoc)` |
8
+ | Prototipagem → Arquitetura | Feedback aplicado; requisitos atualizados | `verificarConsistencia(designDoc, requisitos)` |
9
+ | Arquitetura → Modelo de Domínio | Stack confirmada; contexto alinhado | `compararModelagem(arquitetura, modeloDominio)` |
10
+ | Modelo de Domínio → Banco de Dados | Entidades → tabelas; regras documentadas | `validarModeloDominio(modeloDominio, designBanco)` |
11
+ | Banco → Segurança | Dados sensíveis catalogados; políticas definidas | `analisarSensibilidade(designBanco)` |
12
+ | Segurança → Testes | Controles críticos definidos; riscos registrados | `validarChecklistSeguranca(checklist)` |
13
+ | Testes → Backlog | Estratégia de testes aprovada; cobertura planejada | `verificarPlanoTestes(plano)` |
14
+ | Backlog → Contrato API | Stories/radar de integrações aprovados | `compararBacklogContrato(backlog, openapi)` |
15
+ | Contrato API → Frontend | OpenAPI completo; mocks disponíveis | `validarContrato(openapi)` |
16
+ | Frontend → Backend | Componentes integrados a mocks; testes passando | `executarSuite('frontend-tests')` |
17
+ | Backend → Integração/Deploy | Testes unitários/integração/contrato passando | `executarSuite('backend-tests')` |
18
+ | Integração → Observabilidade (fluxo complexo) | Pipelines verdes; monitoração básica configurada | `validarPipeline(ciCdConfig)` |
19
+ | Observabilidade → Performance | Dashboards + alertas definidos | `validarObservabilidade(config)` |
20
+ | Performance → Deploy Final | Testes de carga concluídos; tuning aplicado | `executarLoadTest(plan)` |
21
+
22
+ ## Exemplo de validação cruzada (Produto → Requisitos)
23
+
24
+ ```javascript
25
+ function validarCoberturaMVP(prdPath, requisitosPath) {
26
+ const prd = lerArquivo(prdPath);
27
+ const requisitos = lerArquivo(requisitosPath);
28
+ const mvpItems = extrairItens('MVP', prd);
29
+ const faltantes = mvpItems.filter(item => !requisitos.includes(item));
30
+
31
+ return {
32
+ percentual: ((mvpItems.length - faltantes.length) / mvpItems.length) * 100,
33
+ faltantes
34
+ };
35
+ }
36
+ ```
37
+
38
+ ## Uso no /avancar-fase
39
+
40
+ 1. Determine a transição atual (fase `N` → `N+1`).
41
+ 2. Carregue o checklist correspondente na tabela acima.
42
+ 3. Execute as funções auxiliares indicadas (ou use lógica equivalente).
43
+ 4. Só permita avanço quando **todos** os itens estiverem `true` e o score da fase atingir o mínimo definido em `validation-rules.md`.
@@ -0,0 +1,97 @@
1
+ # 🛡️ Regras de Validação por Fase
2
+
3
+ ## Fase 1 - Produto
4
+ - Problema central definido
5
+ - Público-alvo/personas
6
+ - MVP listado e priorizado
7
+ - Métricas de sucesso (North Star + KPIs)
8
+ - Score mínimo: **75/100**
9
+
10
+ ## Fase 2 - Requisitos
11
+ - Cobertura 100% do MVP
12
+ - Requisitos funcionais em formato testável
13
+ - Requisitos não funcionais (performance, segurança)
14
+ - Critérios de aceite (Given-When-Then)
15
+ - Score mínimo: **70/100**
16
+
17
+ ## Fase 3 - UX Design
18
+ - Wireframes para todas as telas principais
19
+ - Jornadas/fluxos de usuário descritos
20
+ - Navegação coerente
21
+ - Consistência visual e de componentes
22
+ - Score mínimo: **70/100**
23
+
24
+ ## Fase 4 - Prototipagem / Stitch (quando aplicável)
25
+ - Protótipo navegável validado com stakeholders
26
+ - Feedback registrado e aplicado
27
+ - Export pronto para handoff ou Stitch output salvo
28
+ - Score mínimo: **75/100**
29
+
30
+ ## Fase 5 - Arquitetura
31
+ - Stack definida
32
+ - Diagrama C4 nível 2 ou 3
33
+ - ADRs para decisões críticas
34
+ - Requisitos não funcionais endereçados
35
+ - Score mínimo: **80/100**
36
+
37
+ ## Fase 6 - Modelo de Domínio
38
+ - Entidades e relacionamentos definidos
39
+ - Regras de negócio documentadas
40
+ - Eventos e agregados identificados (quando necessário)
41
+ - Score mínimo: **75/100**
42
+
43
+ ## Fase 7 - Banco de Dados
44
+ - Modelo relacional ou NoSQL definido
45
+ - Índices/partições planejados
46
+ - Estratégia de migração descrita
47
+ - Score mínimo: **75/100**
48
+
49
+ ## Fase 8 - Segurança
50
+ - OWASP Top 10 avaliado
51
+ - Autenticação/autorização descritas
52
+ - Dados sensíveis mapeados e protegidos
53
+ - Score mínimo: **80/100**
54
+
55
+ ## Fase 9 - Testes
56
+ - Estratégia (pirâmide) definida
57
+ - Casos de teste críticos descritos
58
+ - Ferramentas e ambientes definidos
59
+ - Score mínimo: **75/100**
60
+
61
+ ## Fase 10 - Backlog
62
+ - Épicos e features priorizados
63
+ - Histórias com critérios de aceite claros
64
+ - Dependências mapeadas
65
+ - Score mínimo: **75/100**
66
+
67
+ ## Fase 11 - Contrato de API
68
+ - Esquema OpenAPI completo
69
+ - Versionamento/documentação definidas
70
+ - Mocks ou client SDK disponíveis
71
+ - Score mínimo: **80/100**
72
+
73
+ ## Fase 12 - Frontend
74
+ - Componentes implementados conforme design
75
+ - Testes de componente ou integração passando
76
+ - Responsividade e acessibilidade verificadas
77
+ - Score mínimo: **80/100**
78
+
79
+ ## Fase 13 - Backend
80
+ - Endpoints implementados conforme contrato
81
+ - Testes unitários e de integração passando
82
+ - Migrações e jobs documentados
83
+ - Score mínimo: **80/100**
84
+
85
+ ## Fase 14 - Performance / Observabilidade (fluxo complexo)
86
+ - Métricas e alertas configurados
87
+ - Estratégia de cache/performance definida
88
+ - Testes de carga planejados
89
+ - Score mínimo: **80/100**
90
+
91
+ ## Fase 15 - Integração / Deploy
92
+ - Pipeline CI/CD verde
93
+ - Testes E2E executados
94
+ - Plano de rollback/documentação de release
95
+ - Score mínimo: **85/100**
96
+
97
+ > Use essas regras para preencher `fase.validacoes` e justificar o `score` atribuído no estado.
@@ -0,0 +1,73 @@
1
+ {
2
+ "projeto": {
3
+ "nome": "[Nome do Projeto]",
4
+ "descricao": "[Resumo do projeto]",
5
+ "tipo": "[poc|script|internal|product]",
6
+ "complexidade": "[simples|medio|complexo]",
7
+ "tier": "[essencial|base|avancado]",
8
+ "usarStitch": false,
9
+ "criadoEm": "[ISO datetime]",
10
+ "atualizadoEm": "[ISO datetime]"
11
+ },
12
+ "faseAtual": {
13
+ "numero": 1,
14
+ "nome": "Produto",
15
+ "status": "in_progress",
16
+ "especialista": "Gestão de Produto",
17
+ "score": null,
18
+ "scoreMinimo": 75,
19
+ "iniciadoEm": "[ISO datetime]",
20
+ "ultimoUpdate": "[ISO datetime]"
21
+ },
22
+ "fases": {
23
+ "1": {
24
+ "numero": 1,
25
+ "nome": "Produto",
26
+ "especialista": "Gestão de Produto",
27
+ "status": "pending",
28
+ "score": null,
29
+ "scoreMinimo": 75,
30
+ "artefatos": ["docs/01-produto/PRD.md"],
31
+ "validacoes": {
32
+ "problema_definido": false,
33
+ "personas": false,
34
+ "mvp_listado": false,
35
+ "metricas": false
36
+ }
37
+ },
38
+ "2": {
39
+ "numero": 2,
40
+ "nome": "Requisitos",
41
+ "especialista": "Engenharia de Requisitos",
42
+ "status": "pending",
43
+ "score": null,
44
+ "scoreMinimo": 70,
45
+ "artefatos": ["docs/02-requisitos/requisitos.md"],
46
+ "validacoes": {
47
+ "requisitos_funcionais": false,
48
+ "requisitos_nao_funcionais": false,
49
+ "criterios_aceite": false,
50
+ "cobertura_mvp": false
51
+ }
52
+ }
53
+ },
54
+ "qualityGates": {
55
+ "1_para_2": {
56
+ "validado": false,
57
+ "score": null,
58
+ "checks": ["mvp_100_coberto"]
59
+ }
60
+ },
61
+ "historico": [
62
+ {
63
+ "acao": "projeto_iniciado",
64
+ "detalhes": "Projeto criado a partir do template",
65
+ "timestamp": "[ISO datetime]"
66
+ }
67
+ ],
68
+ "metrica": {
69
+ "fasesConcluidas": 0,
70
+ "ultimoComando": null,
71
+ "tempoPorFase": {}
72
+ }
73
+ }
@@ -0,0 +1,84 @@
1
+ ---
2
+ description: Valida fase atual com quality gates e prepara a próxima fase
3
+ ---
4
+
5
+ # 🔄 Workflow de Avanço - /avancar-fase
6
+
7
+ ## 1. Ler estado e fase 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 existe');
13
+
14
+ function salvarEstado(state) {
15
+ escreverJson('.maestro/estado.json', state, { spaces: 2 });
16
+ }
17
+ ```
18
+
19
+ ## 2. Checklist obrigatório
20
+
21
+ - `faseAtual.status` deve ser `concluida`.
22
+ - `faseAtual.score >= faseAtual.scoreMinimo`.
23
+ - Todos os itens de `faseAtual.validacoes` precisam estar `true`.
24
+ - Verificar bloqueios pendentes.
25
+
26
+ Se algum critério falhar, listar o motivo e encerrar sem avançar.
27
+
28
+ ## 3. Validação cruzada
29
+
30
+ Use regras específicas da transição (ver `content/rules/quality-gates.md`). Exemplo:
31
+
32
+ ```javascript
33
+ if (estado.faseAtual === 1) {
34
+ const prd = lerArquivo('docs/01-produto/PRD.md');
35
+ const requisitos = lerArquivo('docs/02-requisitos/requisitos.md');
36
+ const cobertura = validarCoberturaMVP(prd, requisitos);
37
+ if (cobertura.percentual < 100) throw new Error('MVP não está 100% coberto nos requisitos');
38
+ }
39
+ ```
40
+
41
+ ## 4. Determinar próxima fase
42
+
43
+ ```javascript
44
+ const PROGRESSAO = {
45
+ 1: { numero: 2, nome: 'Requisitos', especialista: 'Engenharia de Requisitos', entregavel: 'docs/02-requisitos/requisitos.md' },
46
+ 2: { numero: 3, nome: 'UX Design', especialista: 'UX Designer', entregavel: 'docs/03-ux/design-doc.md' },
47
+ // ... completar até o tier máximo
48
+ };
49
+
50
+ const proxima = PROGRESSAO[estado.faseAtual];
51
+ if (!proxima) return 'Projeto já está na última fase';
52
+ ```
53
+
54
+ Depois de obter `proxima`, consulte `content/guides/fases-mapeamento.md` para descobrir:
55
+
56
+ - **Especialista** em `content/specialists/` que atuará na próxima fase
57
+ - **Prompt principal** em `content/prompts/`
58
+ - **Templates** que devem ser carregados/atualizados
59
+ - **Skills** sugeridas em `content/skills/`
60
+
61
+ Inclua essas referências na resposta final para orientar o usuário sobre o contexto que será carregado quando `/continuar-fase` for executado.
62
+
63
+ ## 5. Atualizar estado
64
+
65
+ - Marcar `faseAtual.dataConclusao`.
66
+ - Incrementar `estado.faseAtual` para `proxima.numero`.
67
+ - Preparar entrada vazia para a próxima fase (`status: 'in_progress'`).
68
+ - Registrar evento no histórico (`fase_avancada`).
69
+ - Atualizar `estado.metrica.fasesConcluidas` e `estado.metrica.ultimoComando = '/avancar-fase'`.
70
+ - Chamar `salvarEstado(estado)` após todas as alterações.
71
+
72
+ ## 6. Mensagem de saída
73
+
74
+ ```
75
+ ✅ **Fase {faseAtual.numero} - {faseAtual.nome} concluída!**
76
+ 📊 Score: {faseAtual.score}/{faseAtual.scoreMinimo}
77
+ 🔍 Validações: {lista de validações confirmadas}
78
+
79
+ 🎯 **Próxima fase:** {proxima.nome}
80
+ 👤 Especialista: {proxima.especialista}
81
+ 📁 Arquivo inicial: {proxima.entregavel}
82
+
83
+ Execute `/continuar-fase` para começar imediatamente.
84
+ ```
@@ -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
+ ```