@maestro-ai/cli 1.2.0 → 1.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (44) hide show
  1. package/content/guides/fases-mapeamento.md +31 -32
  2. package/content/guides/guide-brainstorm.md +38 -0
  3. package/content/guides/guide-orquestracao.md +45 -0
  4. package/content/guides/guide-testes.md +51 -0
  5. package/content/guides/guide-troubleshooting.md +43 -0
  6. package/content/guides/guide-validacao.md +50 -0
  7. package/content/guides/internal/automated-events.md +27 -0
  8. package/content/guides/internal/automated-map.md +56 -0
  9. package/content/guides/internal/automated-stitch.md +51 -0
  10. package/content/guides/internal/automated-system.md +46 -0
  11. package/content/guides/mapa-sistema.md +86 -0
  12. package/content/guides/workflows-avancados.md +62 -0
  13. package/content/rules/GEMINI.md +70 -762
  14. package/content/rules/RULES.md +71 -761
  15. package/content/rules/complexity-rules.md +43 -0
  16. package/content/rules/quality-gates.md +55 -43
  17. package/content/rules/security-rules.md +40 -0
  18. package/content/rules/structure-rules.md +63 -0
  19. package/content/rules/validation-rules.md +56 -97
  20. package/content/workflows/{maestro.md → 00-maestro.md} +7 -6
  21. package/content/workflows/01-iniciar-projeto.md +59 -0
  22. package/content/workflows/02-avancar-fase.md +72 -0
  23. package/content/workflows/04-implementar-historia.md +64 -0
  24. package/content/workflows/05-nova-feature.md +39 -0
  25. package/content/workflows/06-corrigir-bug.md +34 -0
  26. package/content/workflows/07-refatorar-codigo.md +34 -0
  27. package/dist/commands/init.js +17 -16
  28. package/package.json +1 -1
  29. package/content/workflows/avancar-fase.md +0 -84
  30. package/content/workflows/brainstorm.md +0 -127
  31. package/content/workflows/corrigir-bug.md +0 -530
  32. package/content/workflows/create-app.md +0 -59
  33. package/content/workflows/iniciar-projeto.md +0 -59
  34. package/content/workflows/melhorar-feature.md +0 -63
  35. package/content/workflows/nova-feature.md +0 -438
  36. package/content/workflows/orchestrate.md +0 -237
  37. package/content/workflows/plan.md +0 -89
  38. package/content/workflows/refatorar-codigo.md +0 -623
  39. package/content/workflows/status-projeto.md +0 -54
  40. package/content/workflows/testar.md +0 -144
  41. package/content/workflows/ux-avancado.md +0 -296
  42. package/content/workflows/validar-gate.md +0 -413
  43. /package/content/workflows/{continuar-fase.md → 03-continuar-fase.md} +0 -0
  44. /package/content/workflows/{deploy.md → 08-deploy-projeto.md} +0 -0
@@ -0,0 +1,39 @@
1
+ ---
2
+ description: Adicionar nova feature com fluxo estruturado (Análise → Implementação → Deploy)
3
+ ---
4
+
5
+ # 🆕 /nova-feature - Workflow de Nova Feature
6
+
7
+ ## 1. Preparação (Análise de Impacto)
8
+
9
+ * **Estratégia:** Verifique a complexidade. Se envolver múltiplos domínios ou alto risco, consulte `guides/guide-orquestracao.md` para ativar o **Modo Squad**.
10
+ * **Ação:** Pergunte ao usuário a descrição da feature e o impacto estimado (baixo/médio/alto).
11
+ * **Ação:** Crie o diretório `docs/features/{FEATURE-ID}/`.
12
+ * **Ação:** Crie o arquivo `docs/features/{FEATURE-ID}/01-analise.md` com a análise inicial:
13
+ * Tabelas afetadas
14
+ * Novos Endpoints
15
+ * Componentes de UI necessários
16
+
17
+ ## 2. Refinamento e Design
18
+
19
+ * **Instrução:** Use o workflow padrão `/02-avancar-fase` para mover a feature para Design.
20
+ * **Entregável Esperado:** Contrato de Interface (OpenAPI) e Mockups/Wireframes se necessário.
21
+
22
+ ## 3. Implementação (O "Core")
23
+
24
+ > Aqui usamos o workflow especializado de granularidade fina.
25
+
26
+ * **Ação:** Quebre a feature em Histórias de Usuário (ex: `US-01: Criar API`, `US-02: Tela de Listagem`).
27
+ * **Para cada História:**
28
+ * Execute o workflow: **`/04-implementar-historia`**
29
+ * Siga ordenadamente: Types -> Mocks -> Frontend -> Backend -> Integração.
30
+
31
+ ## 4. Testes e Validação
32
+
33
+ * **Verificação de Segurança:** Antes de finalizar, leia `rules/security-rules.md` e revise o código.
34
+ * **Testes:** Garanta que os testes criados na fase de implementação estão passando.
35
+
36
+ ## 5. Deploy e Encerramento
37
+
38
+ * **Ação:** Atualize o `estado.json` (ou use `/02-avancar-fase`) para marcar a feature como CONCLUÍDA.
39
+ * **Resumo:** Atualize `.maestro/resumo.json` adicionando a feature ao histórico.
@@ -0,0 +1,34 @@
1
+ ---
2
+ description: Workflow para correção de bugs com análise de causa raiz e segurança
3
+ ---
4
+
5
+ # 🐛 /corrigir-bug - Workflow de Correção
6
+
7
+ ## 1. Reprodução e Análise
8
+
9
+ * **Estratégia:** Se o bug for crítico, arquitetural ou envolver múltiplos serviços, consulte `guides/guide-orquestracao.md` para ativar o **Modo Squad**.
10
+ * **Ação:** Crie um caso de teste que reproduza o erro (se possível).
11
+ * **Ação:** Analise a causa raiz.
12
+
13
+ ## 2. Classificação de Segurança
14
+
15
+ * **Ação:** O bug é uma vulnerabilidade de segurança?
16
+ * **Sim:** Leia imediatamente `rules/security-rules.md` para entender a categoria (ex: SQL Injection, XSS).
17
+ * **Não:** Prossiga normalmente.
18
+
19
+ ## 3. Implementação da Correção
20
+
21
+ * **Ação:** Implemente o fix.
22
+ * **Regra:** Não altere comportamento não relacionado (escopo fechado).
23
+
24
+ ## 4. Verificação
25
+
26
+ * **Ação:** Rode o teste de reprodução (deve passar).
27
+ * **Ação:** Rode testes de regressão (não deve quebrar nada existente).
28
+ * **Revisão (Self-Code-Review):**
29
+ * Verifique se não deixou `console.log` (Regra `SEC-LOG`).
30
+ * Verifique se não hardcodou credenciais (Regra `A02-SECRET`).
31
+
32
+ ## 5. Finalização
33
+
34
+ * **Ação:** Atualize o histórico em `.maestro/resumo.json` registrando o bug fix.
@@ -0,0 +1,34 @@
1
+ ---
2
+ description: Workflow para refatoração segura de código existente
3
+ ---
4
+
5
+ # 🧹 /refatorar-codigo - Workflow de Refatoração
6
+
7
+ ## 1. Análise Prévia
8
+
9
+ * **Estratégia:** Se a refatoração for estrutural ou de alto risco, consulte `guides/guide-orquestracao.md` para ativar o **Modo Squad**.
10
+ * **Ação:** Identifique a área a ser refatorada (arquivo, função, módulo).
11
+ * **Ação:** Entenda o "Motivo" (Legibilidade, Performance, Segurança, Estrutura).
12
+ * **Ação:** **Importante**: Garanta que existem testes cobrindo essa área. Se não houver, crie um "Teste de Caracterização" (Snapshot/Unitário) antes de tocar no código.
13
+
14
+ ## 2. Consulta de Regras
15
+
16
+ * **Ação:** Se for refatoração de Segurança, leia `rules/security-rules.md`.
17
+ * **Ação:** Se for refatoração de Estrutura, consulte `.maestro/mapa.md` para entender dependências.
18
+
19
+ ## 3. Execução (Ciclo Red-Green-Refactor)
20
+
21
+ * **Passo 1:** Rode os testes (Devem passar: 🟢).
22
+ * **Passo 2:** Aplique uma pequena mudança de refatoração.
23
+ * **Passo 3:** Rode os testes (Devem passar: 🟢).
24
+ * **Passo 4:** Repita.
25
+
26
+ ## 4. Atualização de Mapa
27
+
28
+ * **Ação:** Se você alterou nomes de classes, arquivos ou assinaturas de API:
29
+ * Execute `guides/internal/automated-map.md`.
30
+ * **Ação:** Registre o evento de refatoração via `guides/internal/automated-events.md`.
31
+
32
+ ## 5. Registro
33
+
34
+ * **Ação:** Registre a refatoração no `.maestro/resumo.json`.
@@ -43,7 +43,7 @@ export async function init(options) {
43
43
  await fse.ensureDir(join(cwd, '.maestro'));
44
44
  await fse.ensureDir(join(cwd, '.maestro', 'history'));
45
45
  await fse.writeJSON(join(cwd, '.maestro', 'config.json'), {
46
- version: '1.0.0',
46
+ version: '1.3.0',
47
47
  initialized: new Date().toISOString(),
48
48
  ide: options.ide || 'windsurf',
49
49
  mcpFree: true
@@ -131,37 +131,38 @@ function generateDefaultRules() {
131
131
 
132
132
  ## Como Usar
133
133
 
134
- 1. **Iniciar projeto**: Use \`/iniciar-projeto\` para começar
135
- 2. **Avançar fases**: Use \`/avancar-fase\` para avançar
136
- 3. **Ver status**: Use \`/status-projeto\` para ver progresso
137
- 4. **Continuar**: Use \`/continuar\` para retomar trabalho
134
+ 1. **Ver status**: Use \`/00-maestro\` para ver progresso
135
+ 2. **Iniciar projeto**: Use \`/01-iniciar-projeto\` para começar
136
+ 3. **Avançar fases**: Use \`/02-avancar-fase\` para avançar
137
+ 4. **Continuar**: Use \`/03-continuar-fase\` para retomar trabalho
138
138
 
139
139
  ## Estrutura Local
140
140
 
141
141
  | Pasta | Conteúdo |
142
142
  |-------|----------|
143
143
  | \`.maestro/estado.json\` | Estado do projeto (fonte da verdade) |
144
- | \`.maestro/content/\` | Especialistas, templates, prompts |
144
+ | \`.maestro/content/\` | Especialistas, templates, guides |
145
145
  | \`.windsurf/workflows/\` | Workflows para Windsurf |
146
146
  | \`.windsurf/skills/\` | Skills especializadas |
147
147
  | \`.cursor/commands/\` | Commands para Cursor |
148
148
  | \`.cursor/skills/\` | Skills especializadas |
149
- | \`.agent/workflows/\` | Workflows para Antigravity |
149
+ | \`.agent/workflows/\` | Workflows Principais (00-08) |
150
150
  | \`.agent/skills/\` | Skills especializadas |
151
151
 
152
152
  ## Comandos Disponíveis
153
153
 
154
- ### Gerenciamento de Projeto
155
- - \`/maestro\` - Comando universal inteligente
156
- - \`/iniciar-projeto\` - Iniciar novo projeto
157
- - \`/avancar-fase\` - Avançar para próxima fase
158
- - \`/status-projeto\` - Ver status e progresso
159
- - \`/continuar\` - Continuar fase atual
154
+ ### Gestão de Projeto
155
+ - \`/00-maestro\` - Router Inteligente (Status)
156
+ - \`/01-iniciar-projeto\` - Setup Inicial
157
+ - \`/02-avancar-fase\` - Transição de Fase (com automações)
158
+ - \`/03-continuar-fase\` - Retomada de Trabalho
159
+ - \`/08-deploy-projeto\` - Deploy e Encerramento
160
160
 
161
161
  ### Desenvolvimento
162
- - \`/nova-feature\` - Criar nova funcionalidade
163
- - \`/corrigir-bug\` - Debugging estruturado
164
- - \`/refatorar-codigo\` - Refatoração segura
162
+ - \`/04-implementar-historia\` - Frontend-First Dev
163
+ - \`/05-nova-feature\` - Grandes Funcionalidades
164
+ - \`/06-corrigir-bug\` - Fix com análise de causa
165
+ - \`/07-refatorar-codigo\` - Melhoria técnica segura
165
166
 
166
167
  ## Especialistas IA
167
168
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@maestro-ai/cli",
3
- "version": "1.2.0",
3
+ "version": "1.3.0",
4
4
  "description": "CLI para inicializar projetos Maestro File System - Orquestrador chat-first com workflows inteligentes",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -1,84 +0,0 @@
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,127 +0,0 @@
1
- ---
2
- description: Exploração estruturada de ideias, integrada ao estado do Maestro.
3
- ---
4
-
5
- # /brainstorm - Exploração Estruturada de Ideias
6
-
7
- $ARGUMENTS
8
-
9
- ---
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
-
24
- ## Purpose
25
-
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.
27
-
28
- ---
29
-
30
- ## Behavior
31
-
32
- When `/brainstorm` is triggered:
33
-
34
- 1. **Understand the goal**
35
- - What problem are we solving?
36
- - Who is the user?
37
- - What constraints exist?
38
- - Relacione com `faseAtual.nome` e `faseAtual.especialista` para manter alinhamento.
39
-
40
- 2. **Generate options**
41
- - Provide at least 3 different approaches
42
- - Each with pros and cons
43
- - Consider unconventional solutions
44
-
45
- 3. **Compare and recommend**
46
- - Summarize tradeoffs
47
- - Give a recommendation with reasoning
48
-
49
- ---
50
-
51
- ## Output Format (registrar em `docs/brainstorm/<slug>.md` e anexar ao estado)
52
-
53
- ```markdown
54
- ## 🧠 Brainstorm: [Topic]
55
-
56
- ### Context
57
- [Brief problem statement]
58
-
59
- ---
60
-
61
- ### Option A: [Name]
62
- [Description]
63
-
64
- ✅ **Pros:**
65
- - [benefit 1]
66
- - [benefit 2]
67
-
68
- ❌ **Cons:**
69
- - [drawback 1]
70
-
71
- 📊 **Effort:** Low | Medium | High
72
-
73
- ---
74
-
75
- ### Option B: [Name]
76
- [Description]
77
-
78
- ✅ **Pros:**
79
- - [benefit 1]
80
-
81
- ❌ **Cons:**
82
- - [drawback 1]
83
- - [drawback 2]
84
-
85
- 📊 **Effort:** Low | Medium | High
86
-
87
- ---
88
-
89
- ### Option C: [Name]
90
- [Description]
91
-
92
- ✅ **Pros:**
93
- - [benefit 1]
94
-
95
- ❌ **Cons:**
96
- - [drawback 1]
97
-
98
- 📊 **Effort:** Low | Medium | High
99
-
100
- ---
101
-
102
- ## 💡 Recommendation
103
-
104
- **Option [X]** because [reasoning].
105
-
106
- What direction would you like to explore?
107
- ```
108
-
109
- ---
110
-
111
- ## Examples
112
-
113
- ```
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
118
- ```
119
-
120
- ---
121
-
122
- ## Key Principles
123
-
124
- - **No code** - this is about ideas, not implementation
125
- - **Visual when helpful** - use diagrams for architecture
126
- - **Honest tradeoffs** - don't hide complexity
127
- - **Defer to user** - present options, let them decide