legacy-squad 1.0.0-beta.1

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/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Legacy Squad Team
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,401 @@
1
+ # Legacy Squad Framework
2
+
3
+ **AI-Powered Legacy Modernization Platform**
4
+
5
+ > **Understand. Plan. Modernize.**
6
+
7
+ Legacy Squad é um framework open-source que se instala dentro do seu projeto legado com um único comando, analisa automaticamente o código-fonte, e disponibiliza agentes de IA especializados na sua IDE para produzir um diagnóstico completo — sem alterar uma linha de código.
8
+
9
+ ```bash
10
+ npx legacy-squad install
11
+ ```
12
+
13
+ ---
14
+
15
+ ## O Problema
16
+
17
+ Sistemas legados sustentam processos críticos, mas frequentemente apresentam:
18
+
19
+ - Documentação inexistente ou desatualizada
20
+ - Credenciais hardcoded em código-fonte
21
+ - Regras de negócio escondidas em condicionais que ninguém documentou
22
+ - Acoplamento que torna qualquer mudança arriscada
23
+ - Medo de alterar código em produção
24
+ - Dependência de 1-2 desenvolvedores que "conhecem o sistema"
25
+
26
+ Abordagens tradicionais (reescrita total, refatoração sem governança) são caras, lentas e arriscadas.
27
+
28
+ ## A Solução
29
+
30
+ Legacy Squad combina **análise determinística** (scanner + compliance engine com regras OWASP/CWE) com **agentes de IA especializados** que rodam na sua IDE (Claude Code, Codex, Cursor) para produzir:
31
+
32
+ | Artefato | O que faz |
33
+ |----------|-----------|
34
+ | **Repo Index** | Inventário completo: stack, módulos, dependências, integrações, hotspots |
35
+ | **Findings** | Achados de segurança com evidência, impacto, referência OWASP e recomendação |
36
+ | **Security Assessment** | Análise profunda de autenticação, secrets, LGPD, API security |
37
+ | **Architecture Assessment** | Mapeamento C4, acoplamento, riscos estruturais, arquitetura alvo |
38
+ | **Legacy Code Assessment** | Hotspots, migração JS→TS, duplicação, cobertura de testes |
39
+ | **Business Rules Assessment** | 60+ regras extraídas do código, preservation checklist |
40
+ | **Modernization Plan** | Roadmap incremental em fases com rollback e scores |
41
+ | **PRS** | Product Refactor Specification — documento consolidado para decision makers |
42
+
43
+ ---
44
+
45
+ ## Quick Start
46
+
47
+ ### Pré-requisitos
48
+
49
+ - Node.js ≥ 18
50
+ - Uma IDE com IA: [Claude Code](https://docs.anthropic.com/en/docs/claude-code), [Codex CLI](https://github.com/openai/codex), ou [Cursor](https://cursor.sh)
51
+
52
+ ### Instalação
53
+
54
+ ```bash
55
+ cd seu-projeto-legado
56
+ npx legacy-squad install
57
+ ```
58
+
59
+ O comando:
60
+ 1. Detecta a stack (React Native, PHP, .NET, Java, Node — por manifesto)
61
+ 2. Escaneia o repositório e gera o inventário
62
+ 3. Roda o Compliance Engine (regras OWASP/CWE)
63
+ 4. Gera Context Packs por módulo
64
+ 5. Instala agentes como slash commands na IDE
65
+ 6. Verifica a instalação (8 checks)
66
+
67
+ ### Uso com Claude Code
68
+
69
+ ```bash
70
+ claude # Abre Claude Code no projeto
71
+ /legacy-squad-security # Roda o Security Agent
72
+ /legacy-squad-architecture # Roda o Architecture Agent
73
+ /legacy-squad-legacy-code # Roda o Legacy Code Agent
74
+ /legacy-squad-business-rules # Roda o Business Rules Agent
75
+ /legacy-squad-modernization # Roda o Modernization Agent
76
+ /legacy-squad-generate-prs # Consolida tudo no PRS final
77
+ ```
78
+
79
+ ### Uso com Codex CLI
80
+
81
+ ```bash
82
+ codex # Abre Codex no projeto
83
+ # O AGENTS.md na raiz define os agentes disponíveis
84
+ @legacy-squad-security # Ativa o Security Agent
85
+ ```
86
+
87
+ ### Outros Comandos
88
+
89
+ ```bash
90
+ npx legacy-squad scan # Re-escaneia sem reinstalar agentes
91
+ npx legacy-squad doctor # Verifica saúde da instalação
92
+ ```
93
+
94
+ ---
95
+
96
+ ## Como Funciona
97
+
98
+ ```
99
+ ┌─────────────────────┐
100
+ │ npx legacy-squad │
101
+ │ install │
102
+ └─────────┬───────────┘
103
+
104
+ ┌───────────────┼───────────────┐
105
+ ▼ ▼ ▼
106
+ ┌──────────┐ ┌────────────┐ ┌────────────┐
107
+ │ Scanner │ │ Compliance │ │ Context │
108
+ │ (stack, │ │ Engine │ │ Manager │
109
+ │ modules) │ │ (OWASP) │ │ (packs) │
110
+ └────┬─────┘ └─────┬──────┘ └─────┬──────┘
111
+ │ │ │
112
+ ▼ ▼ ▼
113
+ ┌──────────────────────────────────────────┐
114
+ │ .legacy-squad/memory/ │
115
+ │ repo-index.json | findings.json | │
116
+ │ context-packs.json │
117
+ └──────────────────┬───────────────────────┘
118
+
119
+ ┌────────────┼────────────┐
120
+ ▼ ▼ ▼
121
+ ┌──────────┐ ┌──────────┐ ┌──────────┐
122
+ │ .claude/ │ │ AGENTS.md│ │ .cursor/ │
123
+ │ commands/│ │ (Codex) │ │ rules/ │
124
+ │ (Claude) │ │ │ │ (Cursor) │
125
+ └────┬─────┘ └────┬─────┘ └────┬─────┘
126
+ │ │ │
127
+ └─────────────┼─────────────┘
128
+
129
+ ┌──────▼──────┐
130
+ │ IDE + IA │
131
+ │ (Claude Code│
132
+ │ Codex, │
133
+ │ Cursor) │
134
+ └──────┬──────┘
135
+
136
+ ┌──────▼──────┐
137
+ │ Assessments │
138
+ │ + PRS final │
139
+ └─────────────┘
140
+ ```
141
+
142
+ **O framework prepara os dados e instala os agentes. A IA é executada pela IDE do dev.**
143
+
144
+ Zero API key necessária. Zero chamada a servidor externo. Tudo local.
145
+
146
+ ---
147
+
148
+ ## Estrutura Instalada no Projeto
149
+
150
+ Após `npx legacy-squad install`:
151
+
152
+ ```
153
+ seu-projeto/
154
+ ├── .legacy-squad/
155
+ │ ├── config/
156
+ │ │ └── project.yaml # Configuração detectada
157
+ │ ├── memory/
158
+ │ │ ├── repo-index.json # Inventário do repositório
159
+ │ │ ├── findings.json # Achados do compliance engine
160
+ │ │ └── context-packs.json # Contexto por módulo
161
+ │ ├── outputs/
162
+ │ │ ├── assessments/ # Assessments dos agentes
163
+ │ │ └── reports/ # PRS consolidado
164
+ │ └── logs/
165
+ │ └── install.log
166
+ ├── .claude/
167
+ │ └── commands/
168
+ │ └── legacy-squad/
169
+ │ ├── security.md # /legacy-squad-security
170
+ │ ├── architecture.md # /legacy-squad-architecture
171
+ │ ├── legacy-code.md # /legacy-squad-legacy-code
172
+ │ ├── business-rules.md # /legacy-squad-business-rules
173
+ │ ├── modernization.md # /legacy-squad-modernization
174
+ │ ├── generate-prs.md # /legacy-squad-generate-prs
175
+ │ └── scan.md # /legacy-squad-scan
176
+ └── AGENTS.md # Codex compatibility
177
+ ```
178
+
179
+ ---
180
+
181
+ ## Agentes
182
+
183
+ ### Security Agent (`/legacy-squad-security`)
184
+
185
+ Analisa autenticação, secrets, armazenamento inseguro, exposição de PII e conformidade LGPD.
186
+
187
+ **Referências:** OWASP MASVS V2, OWASP ASVS, CWE Top 25, LGPD, NIST SSDF
188
+
189
+ ### Architecture Agent (`/legacy-squad-architecture`)
190
+
191
+ Mapeia arquitetura atual com diagramas C4, identifica acoplamento, riscos estruturais e propõe arquitetura alvo incremental.
192
+
193
+ **Referências:** C4 Model, Clean Architecture, arc42, ADR
194
+
195
+ ### Legacy Code Agent (`/legacy-squad-legacy-code`)
196
+
197
+ Identifica hotspots, duplicação, progresso de migração JS→TS, cobertura de testes e prioridades de refatoração.
198
+
199
+ **Referências:** Clean Code, Sonar Rules, Cognitive Complexity
200
+
201
+ ### Business Rules Agent (`/legacy-squad-business-rules`)
202
+
203
+ Extrai regras de negócio escondidas no código — validações, permissões, fluxos, magic numbers, regras implícitas em catch blocks.
204
+
205
+ **Referências:** DDD, Event Storming
206
+
207
+ ### Modernization Agent (`/legacy-squad-modernization`)
208
+
209
+ Sintetiza todos os assessments em um plano incremental com fases, rollback, Deployability Score (1-10) e Execution Readiness Score (0-100).
210
+
211
+ **Referências:** Strangler Fig, Branch by Abstraction, Progressive Delivery
212
+
213
+ ### PRS Generator (`/legacy-squad-generate-prs`)
214
+
215
+ Consolida todos os assessments no PRS (Product Refactor Specification) — o documento final para decision makers.
216
+
217
+ ---
218
+
219
+ ## Stacks Suportadas
220
+
221
+ ### Detecção por Manifesto (Layer 1 — determinística)
222
+
223
+ | Manifesto | Stack |
224
+ |-----------|-------|
225
+ | `package.json` | Node.js, React, React Native, Expo, Next.js |
226
+ | `composer.json` | PHP, Laravel |
227
+ | `.csproj` | C#, .NET |
228
+ | `pom.xml` | Java, Spring Boot |
229
+
230
+ ### Detecção por Extensão (Layer 2 — heurística)
231
+
232
+ TypeScript, JavaScript, PHP, C#, Java, Python, Dart
233
+
234
+ ---
235
+
236
+ ## Compliance Engine
237
+
238
+ O scanner roda automaticamente regras determinísticas baseadas em OWASP e CWE:
239
+
240
+ | Regra | Detecta | Referência |
241
+ |-------|---------|------------|
242
+ | SEC-CRED-001 | Credenciais hardcoded | OWASP MASVS, CWE-798 |
243
+ | SEC-CRED-002 | Keystores/certificados no repositório | OWASP MASVS, CWE-312 |
244
+ | SEC-LOG-001 | Console.log ativo em produção | CWE-532 |
245
+ | SEC-LOG-002 | PII (CPF) em logs/external services | CWE-532, LGPD |
246
+ | SEC-ERR-001 | Catch blocks vazios | CWE-390 |
247
+ | SEC-STORE-001 | Token em AsyncStorage | OWASP MASVS |
248
+ | CQ-MIX-001 | JS e TS misturados | Clean Code |
249
+ | CQ-DEP-001 | Dependências transitivas | Clean Code |
250
+
251
+ Todo achado inclui: evidência (arquivo, linha, snippet), impacto, referência técnica e recomendação.
252
+
253
+ ---
254
+
255
+ ## Princípios
256
+
257
+ | Princípio | Descrição |
258
+ |-----------|-----------|
259
+ | **Install-First** | Um comando instala tudo no projeto. Sem configuração manual. |
260
+ | **IDE-Native** | Agentes são slash commands da IDE. A IA vem do ambiente do dev. |
261
+ | **Evidence-Driven** | Todo achado tem evidência concreta (arquivo, linha, snippet). |
262
+ | **Context-First** | Nenhum LLM recebe o repositório inteiro — apenas context packs. |
263
+ | **Read-Only** | O framework não altera código. Apenas lê e gera relatórios. |
264
+ | **Production-First** | Toda recomendação assume que o sistema está em produção. |
265
+ | **Incremental** | Toda modernização é incremental, reversível e deployável. |
266
+
267
+ ---
268
+
269
+ ## Caso de Uso Real
270
+
271
+ O framework foi validado contra um **app mobile React Native em produção** (cooperativa de saúde, 18k+ linhas, 98 dependências, transações financeiras reais):
272
+
273
+ **Compliance Engine (determinístico):** 7 findings por pattern matching
274
+
275
+ **Agentes (IA via Claude Code):** +43 findings adicionais, incluindo:
276
+ - Credenciais de service account decodificadas (OAuth Base64 → client:secret)
277
+ - Flag no Firebase que bypassa 100% da autenticação em produção
278
+ - Senha de cooperado gravada em texto plano no Firebase Realtime Database
279
+ - CPF usado como chave primária no Firebase (enumerável)
280
+ - Session recording capturando dados financeiros e médicos sem consentimento
281
+ - 63 regras de negócio extraídas (11 implícitas)
282
+ - Bug potencial em cálculo de vencimento de boleto
283
+ - Roadmap de 36 semanas com scores: Deployability 3→9/10, Readiness 22→87/100
284
+
285
+ ---
286
+
287
+ ## Open Core
288
+
289
+ ### Community Edition (V1) — Open Source
290
+
291
+ Foco: **Understand + Plan**
292
+
293
+ - Scanner, Compliance Engine, Context Manager
294
+ - 7 agentes como slash commands
295
+ - PRS, assessments, modernization plan
296
+ - Suporte a Claude Code, Codex, Cursor
297
+
298
+ ### Enterprise Edition (V2) — Em desenvolvimento
299
+
300
+ Foco: **Modernize**
301
+
302
+ - Execution Engine (refatoração assistida)
303
+ - Pull Request Engine
304
+ - QA Gates
305
+ - CI/CD Integration
306
+ - Custom Rule Packs
307
+ - Dashboard + Team Collaboration
308
+
309
+ ---
310
+
311
+ ## Roadmap
312
+
313
+ - [x] Sprint 1 — Scanner + Compliance Engine
314
+ - [x] Sprint 2 — Install command + IDE integration
315
+ - [x] Sprint 3 — Context Manager (básico)
316
+ - [x] Sprint 4 — Validação end-to-end com projeto real
317
+ - [ ] Sprint 5 — Multi-IDE (Cursor, Gemini CLI)
318
+ - [ ] Sprint 6 — Regras para PHP, .NET, Java
319
+ - [ ] Sprint 7 — SDD + MMP agents
320
+ - [ ] Sprint 8 — Execution Specs agent + npm publish
321
+
322
+ ---
323
+
324
+ ## Desenvolvimento
325
+
326
+ ```bash
327
+ git clone https://github.com/hrpimenta/legacy-squad.git
328
+ cd legacy-squad
329
+ pnpm install
330
+ pnpm approve-builds esbuild
331
+
332
+ # Testes
333
+ npx vitest run
334
+
335
+ # Dev mode (sem build)
336
+ npx tsx apps/cli/src/index.ts install -p /caminho/do/projeto
337
+
338
+ # Build
339
+ node build.mjs
340
+
341
+ # Testar versão bundled
342
+ node dist/cli.mjs install -p /caminho/do/projeto
343
+ ```
344
+
345
+ ### Estrutura do Monorepo
346
+
347
+ ```
348
+ legacy-squad/
349
+ ├── packages/
350
+ │ ├── core/ # Domain types, ports (Clean Architecture)
351
+ │ ├── scanner/ # Stack detection, repo index generation
352
+ │ ├── context/ # Context packs builder
353
+ │ ├── rules/ # Compliance engine, rule catalog
354
+ │ ├── agents/ # Agent definitions, installer, doctor
355
+ │ └── output/ # PRS generator
356
+ ├── apps/
357
+ │ └── cli/ # CLI entry point (Commander.js)
358
+ ├── templates/
359
+ │ └── claude-commands/ # Slash command templates
360
+ └── docs/
361
+ └── plans/ # Architecture decisions, plans
362
+ ```
363
+
364
+ ### Testes
365
+
366
+ ```bash
367
+ npx vitest run # 28 testes (domain, scanner, compliance, agents)
368
+ npx vitest --watch # Watch mode
369
+ ```
370
+
371
+ ---
372
+
373
+ ## Contribuindo
374
+
375
+ 1. Fork o repositório
376
+ 2. Crie uma branch (`git checkout -b feature/minha-feature`)
377
+ 3. Siga os padrões: TDD (Red→Green→Refactor), SOLID, Clean Architecture
378
+ 4. Rode os testes (`npx vitest run`)
379
+ 5. Abra um PR
380
+
381
+ ### Formas de contribuir
382
+
383
+ - Novas regras para o Compliance Engine (PHP, .NET, Java)
384
+ - Melhorias nos templates de agentes
385
+ - Suporte a novas IDEs
386
+ - Documentação e tradução
387
+ - Testes e fixtures para outras stacks
388
+
389
+ ---
390
+
391
+ ## Licença
392
+
393
+ MIT — veja [LICENSE](LICENSE) para detalhes.
394
+
395
+ ---
396
+
397
+ <p align="center">
398
+ <strong>Understand. Plan. Modernize.</strong>
399
+ <br>
400
+ <em>Legacy Squad Framework</em>
401
+ </p>