@mocoto/mahoraga 0.14.6 → 0.14.7

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.
package/README.md CHANGED
@@ -1,135 +1,156 @@
1
1
  ---
2
- Proveniência e Autoria: Este documento integra o projeto Mahoraga (licença MIT-0).
2
+ Proveniência e Autoria: Este documento integra o projeto @mocoto/mahoraga (licença MIT-0).
3
3
  ---
4
4
 
5
5
  <div align="center">
6
6
 
7
- <p><b>CLI modular para análise, diagnóstico e manutenção de projetos JavaScript/TypeScript com suporte multi-linguagem</b><p>
7
+ <p><b>@mocoto/mahoraga</b>: CLI modular para análise, diagnóstico e manutenção de projetos JavaScript/TypeScript com suporte multi-linguagem<p>
8
8
 
9
9
  </div>
10
10
 
11
- <p> Desisti de desistir do projeto, até parece que vou aceitar perder pra vocês ...</p>
11
+ > Este projeto não está mais no GitHub. Publicado exclusivamente no npm como `@mocoto/mahoraga`.
12
12
 
13
- <p> caso tenha interesse em ajudar no projeto o E-mail é esse ai em baixo o **lint que me aguarde 😜 </p>
13
+ <p> Desisti de desistir do projeto, até parece que vou aceitar perder pra vocês 🤪 </p>
14
+ <p> Caso tenha receio em ajudar com codigo você pode me ajudar ao usar e encontrar falsos postivos/negativos e me mandar relatorios por meio desse e-mail ai em baixo, me ajudaria muito, pois nem todos os erros e bugs eu consigo resolver em ambiente de desenvolvimento sendo preciso uso em produção para serem encontrados</p>
14
15
 
15
16
  [Gmail](mailto:mocoto.persona@gmail.com)
16
17
 
17
- <h5> Alias!! ignora o sugestoes-00*.json ainda esta em ajustes.</h5>
18
+ ---
18
19
 
19
20
  ## Começar Rápido (30 segundos)
20
21
 
21
22
  ```bash
22
- # 1. Instalar
23
+ # 1. Instalar globalmente
23
24
  npm install -g @mocoto/mahoraga
24
25
 
25
26
  # 2. Analisar seu projeto
26
27
  cd meu-projeto
27
28
  mahoraga diagnosticar
28
29
 
29
- # 3. Ver problemas críticos
30
- mahoraga diagnosticar --gravidade critic
31
-
32
- # 4. Exportar relatório
33
- mahoraga diagnosticar --relatorio json --saida relatorio.json
34
- ```
35
-
36
- **Próximos passos imediatos:**
37
-
38
- ```bash
39
- # Revisar correções disponíveis
40
- mahoraga corrigir --revisar
41
-
42
- # Aplicar correções automáticas seguras
43
- mahoraga corrigir --auto
44
-
45
- # Estabelecer baseline de saúde (assinatura GPG)
46
- mahoraga guardian --accept-baseline
30
+ # 3. Ver análise completa
31
+ mahoraga diagnosticar --full
47
32
 
48
- # Verificar mudanças
49
- mahoraga guardian
33
+ # 4. Exportar relatório em JSON
34
+ mahoraga diagnosticar --json > relatorio.json
50
35
  ```
51
36
 
52
37
  ---
53
38
 
54
- ## Fluxo Passo a Passo
55
-
56
- O Mahoraga foi projetado para guiar você por um fluxo completo de análise e manutenção do seu projeto:
39
+ ## Comandos da CLI
57
40
 
58
- ### Passo 1: Diagnóstico Inicial
41
+ ### Comandos Principais
59
42
 
60
- Analise todo o projeto para identificar problemas de qualidade, segurança e arquitetura:
43
+ | Comando | Descrição | Exemplo |
44
+ |---------|-----------|---------|
45
+ | `diagnosticar` (ou `diag`) | Análise completa do projeto | `mahoraga diagnosticar --full` |
46
+ | `guardian` | Monitoramento de integridade com GPG | `mahoraga guardian --accept-baseline` |
47
+ | `fix-types` | Corrigir tipos inseguros (`any`/`unknown`) | `mahoraga fix-types --target src` |
48
+ | `formatar` | Formatação automática de código | `mahoraga formatar --write` |
49
+ | `podar` | Remover arquivos órfãos e código morto | `mahoraga podar` |
50
+ | `names` | Extração e renomeação em massa de variáveis | `mahoraga names --scan` |
51
+ | `imports` | Gerenciar aliases de import (`@/`) | `mahoraga imports --scan` |
52
+ | `barrels` | Gerenciar barrels (`index.ts`) | `mahoraga barrels --generate` |
53
+ | `analistas` | Listar analistas e detectores disponíveis | `mahoraga analistas --json` |
54
+ | `metricas` | Ver métricas de execução | `mahoraga metricas --analistas` |
55
+ | `perf` | Snapshots e comparação de performance | `mahoraga perf baseline` |
56
+ | `atualizar` | Auto-update do Mahoraga | `mahoraga atualizar --global` |
57
+ | `convert` (ou `conv`) | Converter CI/CD templates | `mahoraga convert --from github --to gitlab` |
58
+ | `reverter` | Reverter movimentações de arquivos | `mahoraga reverter listar` |
59
+ | `compliance` | Relatórios de compliance | `mahoraga compliance report iso-27001` |
60
+
61
+ ### Diagnóstico
61
62
 
62
63
  ```bash
63
- # Análise completa
64
- mahoraga diagnosticar
65
-
66
- # Mais detalhes
67
- mahoraga diagnosticar --verbose
68
-
69
- # Apenas críticos
70
- mahoraga diagnosticar --gravidade critic
71
-
72
- # Exportar resultados
73
- mahoraga diagnosticar --relatorio json --saida analise.json
74
- mahoraga diagnosticar --relatorio markdown --saida RELATORIO.md
64
+ mahoraga diagnosticar # análise padrão
65
+ mahoraga diagnosticar --full # análise completa
66
+ mahoraga diagnosticar --fast # modo rápido
67
+ mahoraga diagnosticar --compact # saída compacta
68
+ mahoraga diagnosticar --json # saída JSON
69
+ mahoraga diagnosticar --detalhado # saída detalhada
70
+ mahoraga diagnosticar --executive # relatório executivo
71
+ mahoraga diagnosticar --monorepo # análise de monorepo
72
+ mahoraga diagnosticar --guardian-check # verificar Guardian junto
73
+ mahoraga diagnosticar --stream # streaming para projetos grandes
74
+ mahoraga diagnosticar --verbose # log detalhado
75
+ mahoraga diagnosticar --debug # modo debug
76
+ mahoraga diagnosticar --include "src/**" --exclude "**/*.test.ts"
77
+ mahoraga diagnosticar --path ./frontend --path ./backend
78
+ mahoraga diagnosticar --auto-fix # corrigir automaticamente
75
79
  ```
76
80
 
77
- ### Passo 2: Estabelecer Baseline
81
+ ### Guardian (Integridade com GPG)
78
82
 
79
- Crie um baseline criptográfico com assinaturas GPG do projeto para monitorar mudanças:
83
+ O Guardian utiliza **assinatura GPG (Ed25519)** em vez de hashes convencionais para garantir a integridade dos arquivos.
80
84
 
81
85
  ```bash
82
- mahoraga guardian --accept-baseline
86
+ mahoraga guardian # verificar integridade
87
+ mahoraga guardian --accept-baseline # aceitar estado atual como baseline
88
+ mahoraga guardian --diff # mostrar diferenças
89
+ mahoraga guardian --full-scan # scan completo
90
+ mahoraga guardian --json # saída JSON estruturada
83
91
  ```
84
92
 
85
- ### Passo 3: Corrigir Problemas
86
-
87
- Aplique correções automáticas com segurança:
93
+ ### CI/CD
88
94
 
89
95
  ```bash
90
- # Revisar o que pode ser corrigido
91
- mahoraga corrigir
92
-
93
- # Aplicar correções automáticas
94
- mahoraga corrigir --auto
95
-
96
- # Corrigir tipos inseguros
97
- mahoraga fix-types --auto
96
+ mahoraga github-actions scan # GitHub Actions
97
+ mahoraga github-actions gate --threshold 80 # quality gate
98
+ mahoraga github-actions app --port 3000 # servidor GitHub App
99
+ mahoraga gitlab-ci scan # GitLab CI
100
+ mahoraga circleci scan # CircleCI
101
+ mahoraga jenkins scan # Jenkins
102
+ mahoraga azure scan # Azure Pipelines
103
+ mahoraga convert --from github --to gitlab # converter templates
98
104
  ```
99
105
 
100
- ### Passo 4: Organizar com Sugestões e Barrels
101
-
102
- Revise sugestões estruturais e organize os barrels do projeto:
106
+ ### Licenças e Compliance
103
107
 
104
108
  ```bash
105
- # Ver sugestões de reorganização (apenas sugestões, sem modificações)
106
- mahoraga diagnosticar --export --export-to ./sugestoes
109
+ mahoraga licencas scan # scan de dependências
110
+ mahoraga licencas notices generate # gerar THIRD-PARTY-NOTICES
111
+ mahoraga licencas disclaimer add # adicionar disclaimer
112
+ mahoraga licencas disclaimer verify # verificar disclaimers
113
+ mahoraga compliance report iso-27001 # relatório ISO 27001
114
+ mahoraga compliance report soc2 --json # relatório SOC 2
115
+ ```
107
116
 
108
- # Gerar barrels estruturados (index.ts)
109
- mahoraga barrels --scan # preview do que será criado
110
- mahoraga barrels --generate # criar/atualizar barrels
117
+ ### Manutenção
111
118
 
112
- # Remover arquivos órfãos
113
- mahoraga podar
119
+ ```bash
120
+ mahoraga fix-types --target src # corrigir tipos inseguros
121
+ mahoraga fix-types --dry-run # simular correção
122
+ mahoraga fix-types --interactive # modo interativo
123
+ mahoraga formatar --write # formatar código
124
+ mahoraga formatar --check # apenas verificar
125
+ mahoraga podar # remover arquivos órfãos
126
+ mahoraga names --scan # extrair nomes de variáveis
127
+ mahoraga names --apply # aplicar renomeações
128
+ mahoraga reverter listar # listar reversões disponíveis
129
+ mahoraga reverter move <id> # reverter movimento específico
114
130
  ```
115
131
 
116
- ### Passo 5: Monitoramento Contínuo
117
-
118
- Mantenha a saúde do projeto ao longo do tempo:
132
+ ### Plugins e Marketplace
119
133
 
120
134
  ```bash
121
- # Verificar integridade contra baseline
122
- mahoraga guardian
123
-
124
- # Mostrar diferenças detalhadas
125
- mahoraga guardian --diff
135
+ mahoraga plugins list # listar plugins instalados
136
+ mahoraga plugins install <pacote> # instalar plugin
137
+ mahoraga plugins remove <pacote> # remover plugin
138
+ mahoraga marketplace search <termo> # buscar analistas
139
+ mahoraga marketplace install <nome> # instalar do marketplace
140
+ mahoraga marketplace list # listar instalados
141
+ ```
126
142
 
127
- # Comparar performance
128
- mahoraga perf snapshot --baseline
129
- mahoraga perf compare
143
+ ### Utilitários
130
144
 
131
- # Ver histórico de métricas
132
- mahoraga metricas
145
+ ```bash
146
+ mahoraga otimizar-svg --write # otimizar SVGs
147
+ mahoraga imports --scan # escanear aliases de import
148
+ mahoraga imports --apply # aplicar correções de import
149
+ mahoraga barrels --scan # preview de barrels
150
+ mahoraga barrels --generate # gerar barrels
151
+ mahoraga metricas --json # métricas em JSON
152
+ mahoraga vulnerabilidades scan # scan de vulnerabilidades
153
+ mahoraga atualizar --global # auto-update
133
154
  ```
134
155
 
135
156
  ---
@@ -138,48 +159,44 @@ mahoraga metricas
138
159
 
139
160
  ### Análise Inteligente
140
161
 
141
- - **Diagnóstico completo** qualidade, segurança e arquitetura
142
- - **15+ detectores especializados** código frágil, duplicação, complexidade, performance, vazamentos de memória, tipos inseguros
143
- - **18+ plugins multi-linguagem** React, CSS, HTML, Python, Shell, SQL, Tailwind, XML, SVG
144
- - **Detecção de bugs via ML** 8 padrões com pontuação Bayesiana (v0.10.0)
145
- - **Registro inteligente** descoberta automática de analistas built-in e customizados
146
- - **Análise de monorepos** pnpm-workspace, lerna, nx, turbo (v0.10.0)
162
+ - **Diagnóstico completo**: qualidade, segurança e arquitetura
163
+ - **15+ detectores especializados**: código frágil, duplicação, complexidade, performance, vazamentos de memória, tipos inseguros
164
+ - **18+ plugins multi-linguagem**: React, CSS, HTML, Python, Shell, SQL, Tailwind, XML, SVG
165
+ - **Detecção de bugs via ML**: 8 padrões com pontuação Bayesiana
166
+ - **Registro inteligente**: descoberta automática de analistas built-in e customizados
167
+ - **Análise de monorepos**: pnpm-workspace, lerna, nx, turbo
147
168
 
148
169
  ### Manutenção Assistida
149
170
 
150
- - **Auto-fix seguro** correções automáticas com validação (`corrigir`)
151
- - **Guardian** monitoramento contínuo com assinatura GPG, baselines criptográficos e verificação de integridade
152
- - **Reestruturação** reorganização automática seguindo padrões arquiteturais
153
- - **Poda inteligente** identificação e remoção de arquivos órfãos e código morto
154
- - **Fix Types** correção automática de `any` e `unknown`
155
- - **Formatação** formatação automática do código
156
- - **Names/Rename** extração e renomeação em massa de variáveis
157
- - **Reverter** — rollback de movimentações aplicadas
171
+ - **Guardian**: monitoramento contínuo com assinatura GPG (Ed25519), baselines criptográficos e verificação de integridade
172
+ - **Fix Types**: correção automática de `any` e `unknown`
173
+ - **Poda inteligente**: identificação e remoção de arquivos órfãos e código morto
174
+ - **Formatação**: formatação automática do código
175
+ - **Names/Rename**: extração e renomeação em massa de variáveis
176
+ - **Reverter**: rollback de movimentações aplicadas
177
+ - **Imports**: gerenciamento de aliases de import
158
178
 
159
179
  ### Relatórios Profissionais
160
180
 
161
- - **Múltiplos formatos** JSON, Markdown, HTML, CSV com sharded export
162
- - **Métricas detalhadas** complexidade ciclomática, duplicação, cobertura, performance com histórico
163
- - **Baseline de performance** snapshots e comparação ao longo do tempo
164
- - **Scan de licenças** verificação de dependências e geração de THIRD-PARTY-NOTICES
165
- - **Relatórios de compliance** ISO 27001, SOC 2
166
- - **Streaming** NDJSON sharded com gzip para projetos grandes (v0.10.0)
181
+ - **Múltiplos formatos**: JSON, Markdown
182
+ - **Métricas detalhadas**: complexidade ciclomática, duplicação, cobertura, performance com histórico
183
+ - **Baseline de performance**: snapshots e comparação ao longo do tempo
184
+ - **Scan de licenças**: verificação de dependências e geração de THIRD-PARTY-NOTICES
185
+ - **Relatórios de compliance**: ISO 27001, SOC 2
186
+ - **Streaming**: NDJSON para projetos grandes
167
187
 
168
- ### Extensível
188
+ ### Integrações CI/CD
169
189
 
170
- - **Plugin system** crie analistas customizados com autodiscovery
171
- - **API modular** use como biblioteca (`mahoraga/sdk`)
172
- - **REST API** servidor HTTP com Swagger UI
173
- - **Worker pool** processamento paralelo para projetos grandes
174
- - **Marketplace** — analistas comunitários
190
+ - **GitHub Actions**: scan de workflows, score 0-100, check runs, quality gate
191
+ - **GitHub App**: análise automática em PRs e pushes
192
+ - **GitLab CI / CircleCI / Jenkins / Azure Pipelines**: análise de pipelines
193
+ - **Conversão** entre plataformas de CI/CD
175
194
 
176
- ### Integrações
195
+ ### Extensível
177
196
 
178
- - **GitHub App** análise automática de workflows em PRs e pushes
179
- - **GitHub Actions** scan de workflows, score 0-100, check runs
180
- - **GitLab CI / CircleCI / Jenkins / Azure Pipelines** — análise de pipelines
181
- - **LSP** — diagnóstico em tempo real para editores
182
- - **VSCode Extension** — análise ao salvar/abrir arquivos
197
+ - **Plugin system**: crie analistas customizados com autodiscovery
198
+ - **API modular**: use como biblioteca (`@mocoto/mahoraga`)
199
+ - **Marketplace**: analistas comunitários
183
200
 
184
201
  ---
185
202
 
@@ -199,27 +216,19 @@ npm install --save-dev @mocoto/mahoraga
199
216
  npx mahoraga --help
200
217
  ```
201
218
 
202
-
203
- ### Docker
204
-
205
- ```bash
206
- docker build -t mahoraga .
207
- docker run --rm -v $(pwd):/project mahoraga diagnosticar
208
- ```
209
-
210
219
  ### Verificar Instalação
211
220
 
212
221
  ```bash
213
- mahoraga --version # v0.10.2
214
- mahoraga --help # lista todos os comandos
215
- mahoraga analistas --listar # analistas disponíveis
222
+ mahoraga --version # v0.14.6
223
+ mahoraga --help # lista todos os comandos
224
+ mahoraga analistas --json # analistas disponíveis
216
225
  ```
217
226
 
218
227
  ---
219
228
 
220
229
  ## Configuração
221
230
 
222
- O Mahoraga lê um arquivo `mahoraga.config.json` na raiz do seu projeto. Se não existir, usa configurações padrão sensatas.
231
+ O Mahoraga lê um arquivo `mahoraga.config.json` na raiz do seu projeto (ou variáveis de ambiente).
223
232
 
224
233
  ### Configuração Mínima
225
234
 
@@ -237,325 +246,38 @@ O Mahoraga lê um arquivo `mahoraga.config.json` na raiz do seu projeto. Se não
237
246
  }
238
247
  ```
239
248
 
240
- ### Blocos Principais
241
-
242
- | Bloco | Descrição |
243
- |-------|-----------|
244
- | `locale` | Idioma (`pt`, `en`, `zh`, `ja`) |
245
- | `verbose` | Saída detalhada |
246
- | `logLevel` | Nível de log (`debug`, `info`, `warn`, `error`) |
247
- | `safeMode` | Modo seguro (sem operações destrutivas) |
248
- | `exclude` | Glob patterns para exclusão |
249
- | `INCLUDE_EXCLUDE_RULES` | Regras globais de inclusão/exclusão |
250
- | `languageSupport` | Configuração por linguagem |
251
- | `rules` | Customização de severidade por regra |
252
- | `suppress` | Supressão de avisos por regra/caminho |
253
- | `testPatterns` | Padrões para detecção de testes |
254
- | `analystsExclude` | Analistas a desabilitar |
255
- | `GUARDIAN_*` | Configurações do Guardian (assinatura GPG) |
256
- | `REPORT_*` | Configurações de relatórios |
257
- | `WORKER_POOL_*` | Pool de workers paralelos |
258
- | `PLUGINS` | Sistema de plugins |
259
- | `CACHE_STRATEGY` | Estratégia de cache |
260
-
261
249
  ### Variáveis de Ambiente
262
250
 
263
251
  | Variável | Descrição | Padrão |
264
252
  |----------|-----------|--------|
265
- | `SUKUNA_API_PORT` | Porta da API | `3100` |
266
- | `SUKUNA_API_CORS_ORIGINS` | Origens CORS | `localhost: 00` |
267
253
  | `LOG_LEVEL` | Nível de log | `info` |
268
254
  | `LOG_ESTRUTURADO` | Logs em JSON | `false` |
269
- | `SUKUNA_DEBUG` | Modo debug | |
270
- | `GITHUB_APP_ID` | ID do GitHub App | |
271
- | `GITHUB_PRIVATE_KEY` | Chave RSA do GitHub App | |
272
- | `GITHUB_WEBHOOK_SECRET` | Webhook secret | |
273
-
274
- > [BOOK] [Guia de Configuração Completo →](./docs/guias/GUIA-CONFIGURACAO.md)
275
-
276
- ---
277
-
278
- ## Comandos da CLI
279
-
280
- ### Comandos Principais
281
-
282
- | Comando | Descrição | Exemplo |
283
- |---------|-----------|---------|
284
- | `diagnosticar` | Análise completa do projeto | `mahoraga diagnosticar --verbose` |
285
- | `corrigir` | Auto-fix com validação | `mahoraga corrigir --auto` |
286
- | `guardian` | Monitoramento contínuo | `mahoraga guardian --baseline` |
287
- | `reestruturar` | Reorganizar estrutura do código | `mahoraga reestruturar --auto` |
288
- | `podar` | Remover código morto | `mahoraga podar` |
289
- | `fix-types` | Corrigir tipos inseguros | `mahoraga fix-types --auto` |
290
- | `formatar` | Formatação automática | `mahoraga formatar --write` |
291
- | `analistas` | Listar analistas | `mahoraga analistas --listar` |
292
-
293
- ### Diagnóstico Avançado
294
-
295
- ```bash
296
- mahoraga diagnosticar --full # análise completa
297
- mahoraga diagnosticar --fast # modo rápido
298
- mahoraga diagnosticar --compact # saída compacta
299
- mahoraga diagnosticar --json # saída JSON
300
- mahoraga diagnosticar --stream # streaming para projetos grandes
301
- mahoraga diagnosticar --executive # relatório executivo
302
- mahoraga diagnosticar --monorepo # análise de monorepo
303
- mahoraga diagnosticar --guardian-check # verificar Guardian
304
- mahoraga diagnosticar --include "src/**" # incluir padrão
305
- mahoraga diagnosticar --exclude "**/*.test.ts" # excluir padrão
306
- mahoraga diagnosticar --path ./frontend --path ./backend # múltiplos diretórios
307
- ```
308
-
309
- ### Correção e Manutenção
310
-
311
- ```bash
312
- mahoraga corrigir --revisar # revisar antes de aplicar
313
- mahoraga corrigir --auto # aplicar automaticamente
314
- mahoraga corrigir --tipo variavel-nao-usada # tipo específico
315
- mahoraga fix-types --dry-run # simular correção
316
- mahoraga fix-types --target src # diretório alvo
317
- ```
318
-
319
- ### Guardian (Monitoramento com GPG)
320
-
321
- O Guardian utiliza **assinatura GPG** (Ed25519) em vez de hashes convencionais para garantir a integridade dos arquivos. Cada baseline armazena assinaturas criptográficas individuais, permitindo autenticação e não-repúdio.
322
-
323
- ```bash
324
- mahoraga guardian # verificar integridade
325
- mahoraga guardian --accept-baseline # aceitar estado atual como baseline
326
- mahoraga guardian --diff # mostrar diferenças
327
- mahoraga guardian --full-scan # scan completo sem ignorar padrões
328
- mahoraga guardian --json # saída JSON estruturada
329
- ```
330
-
331
- **Como funciona:**
332
- 1. **Chaves** — um par de chaves GPG (Ed25519) é gerado automaticamente em `.mahoraga/`
333
- 2. **Baseline** — cada arquivo é assinado com a chave privada; a assinatura é armazenada no baseline
334
- 3. **Verificação** — a assinatura armazenada é verificada contra o conteúdo atual usando a chave pública
335
- 4. **Drift** — arquivos adicionados, removidos ou com assinatura inválida são detectados
336
-
337
- > As chaves GPG ficam em `.mahoraga/` e são automaticamente excluídas do versionamento (`.gitignore`).
338
-
339
- ### Nomes e Renomeação
340
-
341
- ```bash
342
- mahoraga names # extrair nomes de variáveis
343
- mahoraga rename --apply # aplicar renomeações
344
- mahoraga reverter listar # listar reversões
345
- mahoraga reverter move <id> # reverter movimento específico
346
- ```
347
-
348
- ### Licenças e Compliance
349
-
350
- ```bash
351
- mahoraga licencas scan # scan de licenças
352
- mahoraga licencas notices generate # gerar THIRD-PARTY-NOTICES
353
- mahoraga licencas disclaimer add # adicionar disclaimer
354
- mahoraga licencas disclaimer verify # verificar disclaimers
355
- mahoraga compliance report iso-27001 # relatório ISO 27001
356
- mahoraga compliance report soc2 --json # relatório SOC 2
357
- ```
358
-
359
- ### CI/CD
360
-
361
- ```bash
362
- mahoraga github-actions scan # scan de workflows
363
- mahoraga github-actions report --format html # relatório HTML
364
- mahoraga github-actions gate --threshold 80 # quality gate
365
- mahoraga gitlab-ci scan # scan GitLab CI
366
- mahoraga circleci scan # scan CircleCI
367
- mahoraga jenkins scan # scan Jenkins
368
- mahoraga azure scan # scan Azure Pipelines
369
- ```
370
-
371
- ### Métricas e Performance
372
-
373
- ```bash
374
- mahoraga metricas # histórico de métricas
375
- mahoraga metricas --analistas # métricas por analista
376
- mahoraga perf snapshot --baseline # baseline de performance
377
- mahoraga perf compare # comparar performance
378
- ```
379
-
380
- ### Utilitários
381
-
382
- ```bash
383
- mahoraga otimizar-svg --write # otimizar SVGs
384
- mahoraga atualizar # atualizar Mahoraga
385
- mahoraga plugins list # listar plugins
386
- mahoraga marketplace search # buscar analistas
387
- mahoraga vulnerabilidades scan # scan de vulnerabilidades
388
- mahoraga formatters list # listar formatadores
389
- mahoraga lsp # iniciar servidor LSP
390
- mahoraga serve --port 3100 # iniciar REST API
391
- mahoraga convert # converter projeto
392
- mahoraga imports --scan # gerenciar imports
393
- ```
394
-
395
- > [BOOK] [Guia de Comandos Completo →](./docs/guias/GUIA-COMANDOS.md)
396
-
397
- ---
398
-
399
- ## REST API
400
-
401
- O Mahoraga pode ser executado como um servidor HTTP RESTful para integração com outras ferramentas.
402
-
403
- ```bash
404
- # Iniciar servidor
405
- mahoraga serve --port 3100
406
- ```
407
-
408
- **Base URL:** `http://localhost:3100/api/v1`
409
- **Swagger UI:** `http://localhost:3100/api/docs`
410
-
411
- ### Endpoints
412
-
413
- | Endpoint | Método | Descrição |
414
- |----------|--------|-----------|
415
- | `/api/health` | GET | Health check |
416
- | `/api/v1/analistas` | GET | Listar analistas |
417
- | `/api/v1/analistas/stats` | GET | Estatísticas |
418
- | `/api/v1/diagnosticar` | POST | Executar diagnóstico |
419
- | `/api/v1/diagnosticar/jobs` | GET | Listar jobs |
420
- | `/api/v1/diagnosticar/jobs/:id` | GET | Status do job |
421
- | `/api/v1/guardian` | GET | Status do Guardian |
422
- | `/api/v1/guardian/baseline` | POST | Criar baseline |
423
- | `/api/v1/guardian/diff` | GET | Comparar baseline |
424
- | `/api/v1/metricas` | GET | Métricas históricas |
425
-
426
- ### Exemplo
427
-
428
- ```bash
429
- # Diagnóstico assíncrono
430
- curl -X POST http://localhost:3100/api/v1/diagnosticar \
431
- -H "Content-Type: application/json" \
432
- -d '{"async": true, "fast": true}'
433
- ```
434
-
435
- > [BOOK] [Documentação da API →](./docs/api/REST-API.md)
436
-
437
- ---
438
-
439
- ## SDK Programático
440
-
441
- Use o Mahoraga como biblioteca no seu código:
442
-
443
- ```bash
444
- npm install mahoraga
445
- ```
446
-
447
- ```typescript
448
- import { analyzeFile, analyzeProject } from 'mahoraga/sdk'
449
-
450
- // Analisar um arquivo
451
- const result = await analyzeFile('/caminho/arquivo.ts', conteudo)
452
-
453
- // Analisar projeto inteiro
454
- const projeto = await analyzeProject('/caminho/projeto')
455
- ```
456
-
457
- ```typescript
458
- import { MahoragaSDK } from 'mahoraga/sdk'
459
-
460
- const sdk = new MahoragaSDK()
461
- await sdk.analisarGithubActions('./.github/workflows')
462
- sdk.registrarDetector('meu-detector', meuDetector)
463
- ```
464
-
465
- **Subpath exports:**
466
-
467
- | Import Path | Descrição |
468
- |-------------|-----------|
469
- | `mahoraga` | Entry principal |
470
- | `mahoraga/sdk` | SDK programático |
471
- | `mahoraga/api` | REST API server |
472
- | `mahoraga/types` | Typescript types |
473
- | `mahoraga/bin` | CLI binary |
474
-
475
- ---
476
-
477
- ## GitHub App
478
-
479
- O Mahoraga pode operar como um **GitHub App** que analisa automaticamente workflows do GitHub Actions em PRs, pushes e issues.
480
-
481
- ### Funcionalidades
482
-
483
- - **Análise automática** de workflows em PRs e pushes
484
- - **Score de qualidade** 0-100 para cada workflow
485
- - **Detecção** de script injection, secrets hardcoded, permissões excessivas
486
- - **Comentários automáticos** em PRs e issues
487
- - **Check runs** com annotations no código
488
- - **Análise sob demanda** via `@mahoraga analyze` em reviews
489
- - **Scan sob demanda** via `@mahoraga scan` em issues
490
-
491
- ### Eventos Suportados
492
-
493
- | Evento | Comportamento |
494
- |--------|---------------|
495
- | Check Suite | Cria check run com análise completa |
496
- | Pull Request | Posta comentário detalhado |
497
- | Push | Análise silenciosa |
498
- | Review | Responde a `@mahoraga analyze` |
499
- | Issues | Responde a `@mahoraga scan` |
500
-
501
- ### Comandos
502
-
503
- ```bash
504
- mahoraga github-actions scan # scan local
505
- mahoraga github-actions report --format html # relatório
506
- mahoraga github-actions gate --threshold 80 # quality gate
507
- mahoraga github-actions app --port 3000 # iniciar servidor
508
- ```
509
-
510
- > [BOOK] [Guia do GitHub App →](./docs/guias/GITHUB-APP.md)
511
-
512
- ---
513
-
514
- ## Editor (LSP / VSCode)
515
-
516
- ### LSP Server
517
-
518
- ```bash
519
- mahoraga lsp
520
- ```
521
-
522
- Suporta `textDocument/didOpen`, `didChange`, `didSave` para diagnóstico em tempo real.
523
-
524
- ### VSCode Extension
525
-
526
- Uma extensão VSCode está disponível em `extensions/vscode/` com:
527
- - Análise ao salvar (`mahoraga.runOnSave`)
528
- - Análise ao abrir (`mahoraga.runOnOpen`)
529
- - Painel de resultados
530
- - Comandos: Analyze File, Analyze Project, Show Panel, Clear Diagnostics
531
-
532
- > [BOOK] [Guia VSCode →](./docs/guias/GUIA-VSCODE.md)
255
+ | `SUKUNA_DEBUG` | Modo debug | não definido |
256
+ | `SUKUNA_STATE_DIR` | Diretório de estado | `.mahoraga` |
257
+ | `SUKUNA_API_PORT` | Porta do GitHub App | `3100` |
258
+ | `GITHUB_APP_ID` | ID do GitHub App | não definido |
259
+ | `GITHUB_PRIVATE_KEY` | Chave RSA do GitHub App | não definido |
260
+ | `GITHUB_WEBHOOK_SECRET` | Webhook secret | não definido |
533
261
 
534
262
  ---
535
263
 
536
- ## CI/CD
537
-
538
- O Mahoraga analisa pipelines de CI/CD para detectar problemas de segurança, performance e boas práticas.
539
-
540
- | Plataforma | Comando |
541
- |------------|---------|
542
- | GitHub Actions | `mahoraga github-actions scan` |
543
- | GitLab CI | `mahoraga gitlab-ci scan` |
544
- | CircleCI | `mahoraga circleci scan` |
545
- | Jenkins | `mahoraga jenkins scan` |
546
- | Azure Pipelines | `mahoraga azure scan` |
264
+ ## Scripts
547
265
 
548
266
  ```bash
549
- # Quality gate para CI (falha se score < 80)
550
- mahoraga github-actions gate --threshold 80 --fail-on erro
267
+ npm run build # compilar TypeScript (tsc nativo)
268
+ npm run typecheck # verificar tipos
269
+ npm run test # testes (Vitest)
270
+ npm run coverage # cobertura de testes
271
+ npm run diagnosticar # auto-análise
272
+ npm run lint # ESLint
551
273
  ```
552
274
 
553
275
  ---
554
276
 
555
277
  ## Linguagens Suportadas
556
278
 
557
- | Linguagem | Parser | Status |
558
- |-----------|--------|--------|
279
+ | Linguagem | Parser | Suporte |
280
+ |-----------|--------|---------|
559
281
  | JavaScript | Babel | Nativo |
560
282
  | TypeScript | Babel | Nativo |
561
283
  | HTML | htmlparser2 | Nativo |
@@ -563,101 +285,41 @@ mahoraga github-actions gate --threshold 80 --fail-on erro
563
285
  | XML | fast-xml-parser | Nativo |
564
286
  | Python | Heurístico | Nativo |
565
287
  | PHP | Heurístico | Nativo |
566
- | Shell | Heurístico | Plugin |
567
- | SQL | Heurístico | Plugin |
568
- | Go | Heurístico | Nativo (v0.8.0) |
569
- | Rust | Heurístico | Nativo (v0.8.0) |
288
+ | Shell | Heurístico | Nativo |
289
+ | SQL | Heurístico | Nativo |
290
+ | Go | Heurístico | Nativo |
291
+ | Rust | Heurístico | Nativo |
570
292
  | Java | java-parser | Disponível |
571
293
  | Kotlin | Heurístico | Disponível |
572
294
 
573
295
  ---
574
296
 
575
- ## Documentação Completa
576
-
577
- ### Guias
578
-
579
- - [Guia de Início Rápido](./docs/guias/GUIA-INICIO-RAPIDO.md) — tutorial de 10 minutos
580
- - [Guia de Configuração](./docs/guias/GUIA-CONFIGURACAO.md) — personalizar setup
581
- - [Guia de Comandos](./docs/guias/GUIA-COMANDOS.md) — referência completa
582
- - [Guia Marketplace](./docs/guias/GUIA-MARKETPLACE.md) — analistas comunitários
583
- - [Guia VSCode](./docs/guias/GUIA-VSCODE.md) — extensão VSCode
584
- - [Guia Compliance](./docs/guias/GUIA-COMPLIANCE.md) — ISO 27001, SOC 2
585
- - [Guia Formatters](./docs/guias/GUIA-FORMATTERS.md) — plugins de saída
297
+ ## Qualidade
586
298
 
587
- ### Arquitetura
588
-
589
- - [Árvore Arquitetural](./docs/arquitetura/ARVORE-ARQUITETURAL.md) estrutura visual
590
- - [Type Safety](./docs/arquitetura/TYPE-SAFETY.md) garantias de tipo
591
- - [Segurança](./docs/arquitetura/SEGURANCA.md) práticas de segurança
592
- - [Sistema de Erros](./docs/arquitetura/SISTEMA-ERROS.md) — tratamento de erros
593
-
594
- ### Desenvolvimento
595
-
596
- - [Criar Analistas](./docs/desenvolvimento/analistas/CRIAR-ANALISTA.md) — guia de 6 passos
597
- - [Estrutura do Código](./docs/desenvolvimento/estrutura-codigo/README.md) — mapa do src/
598
- - [Padrões de Desenvolvimento](./docs/desenvolvimento/PADROES.md) — convenções
599
- - [Sistema de Plugins](./docs/desenvolvimento/SISTEMA-PLUGINS.md) — como estender
600
-
601
- ### Referência
602
-
603
- - [REST API](./docs/api/REST-API.md) — documentação da API v1
604
- - [Exemplos de Uso](./docs/exemplos/EXEMPLOS-USO.md) — casos reais e CI/CD
605
- - [Roadmap](./docs/roadmap/ROADMAP.md) — futuro do projeto
606
- - [Índice Completo](./docs/INDICE.md) — navegação por tópico
607
-
608
- ---
609
-
610
- ### Scripts
611
-
612
- ```bash
613
- npm run build # compilar TypeScript
614
- npm run typecheck # verificar tipos
615
- npm run lint # ESLint
616
- npm run test # testes (Vitest)
617
- npm run coverage # cobertura de testes
618
- npm run start # executar Mahoraga
619
- npm run diagnosticar # auto-análise
620
- ```
621
-
622
- ### Qualidade
623
-
624
- - TypeScript 6.0+ — type-safe, sem `any` desnecessários
625
- - Testes com Vitest — cobertura target > 90%
626
- - ESLint 9.x — configuração strict
627
- - Worker Pool — processamento paralelo
628
- - Schema Versioning — relatórios versionados
629
- - i18n — PT, EN, ZH, JA
630
- - CodeQL — segurança auditada
631
-
632
- ### Padrões
633
-
634
- - TypeScript type-safe (sem `any` ou `unknown` sem necessidade)
635
- - Nomes descritivos em camelCase/PascalCase
636
- - Testes com cobertura > 90%
637
- - Sem `console.log` em produção (use sistema de mensagens)
638
- - Imports organizados e ordenados
639
- - Padrões arquiteturais (Registry, Strategy, Singleton)
299
+ - TypeScript 7.0+ (compilador nativo Go/Corsa): type-safe
300
+ - Testes com Vitest: cobertura target > 90%
301
+ - ESLint 10.x: configuração strict
302
+ - Worker pool: processamento paralelo
303
+ - i18n: PT, EN, ZH, JA
304
+ - Schema versioning: relatórios versionados
640
305
 
641
306
  ---
642
307
 
643
308
  ## Contribuir
644
309
 
645
- 1. Leia [CONTRIBUTING.md](./CONTRIBUTING.md)
646
- 2. Fork o repositório
647
- 3. Crie branch: `git checkout -b feature/sua-feature`
648
- 4. Commit: `git commit -m 'Add: sua feature'`
649
- 5. Push: `git push origin feature/sua-feature`
650
- 6. Abra Pull Request
310
+ Contribuições são bem-vindas! Como o projeto não está mais no GitHub:
651
311
 
652
- ### Áreas para Contribuir
312
+ 1. Entre em contato pelo e-mail: **mocoto.persona@gmail.com**
313
+ 2. Envie patches ou sugestões por e-mail
314
+ 3. Reporte bugs com descrição detalhada e exemplo mínimo
653
315
 
654
- - **Bug fixes** — reportar e corrigir bugs
655
- - **Novas features** — analistas, comandos, plugins
656
- - **Documentação** — guias, exemplos
657
- - **Testes** — aumentar cobertura
658
- - **Analisadores** — criar detectores e plugins
316
+ ### Áreas para Contribuir
659
317
 
660
- > [BOOK] [Guia: Como Criar Analistas →](./docs/desenvolvimento/analistas/CRIAR-ANALISTA.md)
318
+ - **Bug fixes**: reportar e corrigir bugs
319
+ - **Novas features**: analistas, comandos, plugins
320
+ - **Documentação**: guias, exemplos
321
+ - **Testes**: aumentar cobertura
322
+ - **Analisadores**: criar detectores e plugins
661
323
 
662
324
  ---
663
325
 
@@ -675,4 +337,4 @@ Dependências de terceiros listadas em [THIRD-PARTY-NOTICES.txt](./THIRD-PARTY-N
675
337
 
676
338
  **Feito para os iniciantes**
677
339
 
678
- </div>
340
+ **_Estou testando otypescript 7.0.2 Até o momento parece muito bom. o problema é que tive que remover o eslint porque ele nao roda com ts 7, vou esperar eles atualizar e voltar o eslint para o projeto._**