abm-ks 0.1.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 (154) hide show
  1. package/CHANGELOG.md +108 -0
  2. package/CONTRIBUTING.md +294 -0
  3. package/LICENSE +21 -0
  4. package/README.md +455 -0
  5. package/docs/guides/abm-concepts.md +239 -0
  6. package/docs/guides/getting-started.md +284 -0
  7. package/docs/reference/quick-reference.md +143 -0
  8. package/package.json +62 -0
  9. package/src/core/agents/abm-master.agent.yaml +172 -0
  10. package/src/core/config.yaml +123 -0
  11. package/src/core/module.yaml +77 -0
  12. package/src/core/workflows/browse-library/instructions.md +315 -0
  13. package/src/core/workflows/browse-library/workflow.yaml +54 -0
  14. package/src/core/workflows/help/instructions.md +645 -0
  15. package/src/core/workflows/help/workflow.yaml +60 -0
  16. package/src/core/workflows/list-models/instructions.md +149 -0
  17. package/src/core/workflows/list-models/workflow.yaml +67 -0
  18. package/src/core/workflows/use-template/instructions.md +214 -0
  19. package/src/core/workflows/use-template/workflow.yaml +98 -0
  20. package/src/core/workflows/workflow-init/checklist.md +98 -0
  21. package/src/core/workflows/workflow-init/instructions.md +451 -0
  22. package/src/core/workflows/workflow-init/project-context-template.md +141 -0
  23. package/src/core/workflows/workflow-init/questions.yaml +281 -0
  24. package/src/core/workflows/workflow-init/workflow.yaml +169 -0
  25. package/src/core/workflows/workflow-status/instructions.md +319 -0
  26. package/src/core/workflows/workflow-status/status-display.md +278 -0
  27. package/src/core/workflows/workflow-status/workflow.yaml +125 -0
  28. package/src/module-registry.yaml +48 -0
  29. package/src/modules/abm/agents/cpp-dev.agent.yaml +380 -0
  30. package/src/modules/abm/agents/experiment-designer.agent.yaml +358 -0
  31. package/src/modules/abm/agents/model-designer.agent.yaml +255 -0
  32. package/src/modules/abm/agents/netlogo-dev.agent.yaml +320 -0
  33. package/src/modules/abm/agents/odd-writer.agent.yaml +307 -0
  34. package/src/modules/abm/agents/python-dev.agent.yaml +330 -0
  35. package/src/modules/abm/agents/simulation-architect.agent.yaml +286 -0
  36. package/src/modules/abm/config.yaml +212 -0
  37. package/src/modules/abm/library/CONTRIBUTING.md +340 -0
  38. package/src/modules/abm/library/README.md +115 -0
  39. package/src/modules/abm/library/model-registry.yaml +195 -0
  40. package/src/modules/abm/library/model-template/MODEL-TEMPLATE.md +394 -0
  41. package/src/modules/abm/library/model-template/model-schema.yaml +330 -0
  42. package/src/modules/abm/library/model-template/submission-checklist.md +181 -0
  43. package/src/modules/abm/module.yaml +215 -0
  44. package/src/modules/abm/templates/models/cpp/README.md +29 -0
  45. package/src/modules/abm/templates/models/netlogo/predator-prey/README.md +28 -0
  46. package/src/modules/abm/templates/models/netlogo/predator-prey/predator-prey.nlogo +414 -0
  47. package/src/modules/abm/templates/models/netlogo/schelling-segregation/README.md +26 -0
  48. package/src/modules/abm/templates/models/netlogo/schelling-segregation/schelling.nlogo +330 -0
  49. package/src/modules/abm/templates/models/netlogo/sir-epidemic/README.md +28 -0
  50. package/src/modules/abm/templates/models/netlogo/sir-epidemic/sir-epidemic.nlogo +345 -0
  51. package/src/modules/abm/templates/models/python/predator-prey/README.md +118 -0
  52. package/src/modules/abm/templates/models/python/predator-prey/model-info.yaml +61 -0
  53. package/src/modules/abm/templates/models/python/predator-prey/src/__init__.py +0 -0
  54. package/src/modules/abm/templates/models/python/predator-prey/src/model.py +267 -0
  55. package/src/modules/abm/templates/models/python/predator-prey/src/run.py +87 -0
  56. package/src/modules/abm/templates/models/python/schelling-segregation/README.md +47 -0
  57. package/src/modules/abm/templates/models/python/schelling-segregation/model-info.yaml +48 -0
  58. package/src/modules/abm/templates/models/python/schelling-segregation/src/__init__.py +0 -0
  59. package/src/modules/abm/templates/models/python/schelling-segregation/src/model.py +109 -0
  60. package/src/modules/abm/templates/models/python/schelling-segregation/src/run.py +57 -0
  61. package/src/modules/abm/templates/models/python/sir-epidemic/README.md +41 -0
  62. package/src/modules/abm/templates/models/python/sir-epidemic/model-info.yaml +48 -0
  63. package/src/modules/abm/templates/models/python/sir-epidemic/src/__init__.py +0 -0
  64. package/src/modules/abm/templates/models/python/sir-epidemic/src/model.py +108 -0
  65. package/src/modules/abm/templates/models/python/sir-epidemic/src/run.py +48 -0
  66. package/src/modules/abm/workflows/1-conceptualization/model-brief/instructions.md +354 -0
  67. package/src/modules/abm/workflows/1-conceptualization/model-brief/model-brief-template.md +204 -0
  68. package/src/modules/abm/workflows/1-conceptualization/model-brief/workflow.yaml +152 -0
  69. package/src/modules/abm/workflows/1-conceptualization/pattern-identification/instructions.md +384 -0
  70. package/src/modules/abm/workflows/1-conceptualization/pattern-identification/patterns-template.md +149 -0
  71. package/src/modules/abm/workflows/1-conceptualization/pattern-identification/workflow.yaml +136 -0
  72. package/src/modules/abm/workflows/2-design/behavior-rules/behavior-spec-template.md +187 -0
  73. package/src/modules/abm/workflows/2-design/behavior-rules/instructions.md +307 -0
  74. package/src/modules/abm/workflows/2-design/behavior-rules/workflow.yaml +100 -0
  75. package/src/modules/abm/workflows/2-design/entity-design/entity-spec-template.md +169 -0
  76. package/src/modules/abm/workflows/2-design/entity-design/instructions.md +276 -0
  77. package/src/modules/abm/workflows/2-design/entity-design/workflow.yaml +104 -0
  78. package/src/modules/abm/workflows/2-design/environment-setup/environment-spec-template.md +215 -0
  79. package/src/modules/abm/workflows/2-design/environment-setup/instructions.md +287 -0
  80. package/src/modules/abm/workflows/2-design/environment-setup/workflow.yaml +104 -0
  81. package/src/modules/abm/workflows/2-design/process-scheduling/instructions.md +267 -0
  82. package/src/modules/abm/workflows/2-design/process-scheduling/scheduling-spec-template.md +243 -0
  83. package/src/modules/abm/workflows/2-design/process-scheduling/workflow.yaml +91 -0
  84. package/src/modules/abm/workflows/3-implementation/code-generation/code-templates.md +396 -0
  85. package/src/modules/abm/workflows/3-implementation/code-generation/instructions.md +434 -0
  86. package/src/modules/abm/workflows/3-implementation/code-generation/workflow.yaml +165 -0
  87. package/src/modules/abm/workflows/3-implementation/experiment-setup/experiment-templates.md +349 -0
  88. package/src/modules/abm/workflows/3-implementation/experiment-setup/instructions.md +367 -0
  89. package/src/modules/abm/workflows/3-implementation/experiment-setup/workflow.yaml +124 -0
  90. package/src/modules/abm/workflows/3-implementation/model-testing/instructions.md +419 -0
  91. package/src/modules/abm/workflows/3-implementation/model-testing/test-report-template.md +244 -0
  92. package/src/modules/abm/workflows/3-implementation/model-testing/workflow.yaml +132 -0
  93. package/src/modules/abm/workflows/4-documentation/generate-odd/instructions.md +415 -0
  94. package/src/modules/abm/workflows/4-documentation/generate-odd/odd-template.md +240 -0
  95. package/src/modules/abm/workflows/4-documentation/generate-odd/workflow.yaml +151 -0
  96. package/src/modules/abm/workflows/4-documentation/readme-generation/instructions.md +347 -0
  97. package/src/modules/abm/workflows/4-documentation/readme-generation/readme-template.md +261 -0
  98. package/src/modules/abm/workflows/4-documentation/readme-generation/workflow.yaml +137 -0
  99. package/src/modules/brainstorm/agents/creative-thinker.agent.yaml +11 -0
  100. package/src/modules/brainstorm/agents/critic.agent.yaml +120 -0
  101. package/src/modules/brainstorm/agents/critical-analyst.agent.yaml +11 -0
  102. package/src/modules/brainstorm/agents/domain-expert.agent.yaml +12 -0
  103. package/src/modules/brainstorm/agents/facilitator.agent.yaml +95 -0
  104. package/src/modules/brainstorm/agents/researcher.agent.yaml +115 -0
  105. package/src/modules/brainstorm/agents/synthesizer.agent.yaml +74 -0
  106. package/src/modules/brainstorm/agents/visionary.agent.yaml +122 -0
  107. package/src/modules/brainstorm/config.yaml +46 -0
  108. package/src/modules/brainstorm/module.yaml +104 -0
  109. package/src/modules/brainstorm/workflows/brainstorm-session/instructions.md +7 -0
  110. package/src/modules/brainstorm/workflows/brainstorm-session/workflow.yaml +14 -0
  111. package/src/modules/brainstorm/workflows/concept-validation/workflow.yaml +5 -0
  112. package/src/modules/brainstorm/workflows/hypothesis-generation/workflow.yaml +108 -0
  113. package/src/modules/brainstorm/workflows/idea-exploration/workflow.yaml +5 -0
  114. package/src/modules/brainstorm/workflows/ideation-session/workflow.yaml +138 -0
  115. package/src/modules/brainstorm/workflows/literature-review/workflow.yaml +106 -0
  116. package/src/modules/brainstorm/workflows/model-scoping/workflow.yaml +120 -0
  117. package/src/modules/brainstorm/workflows/problem-definition/workflow.yaml +108 -0
  118. package/src/modules/documentation/agents/communicator.agent.yaml +142 -0
  119. package/src/modules/documentation/agents/data-analyst.agent.yaml +140 -0
  120. package/src/modules/documentation/agents/reviewer.agent.yaml +131 -0
  121. package/src/modules/documentation/agents/scientific-editor.agent.yaml +120 -0
  122. package/src/modules/documentation/agents/technical-writer.agent.yaml +122 -0
  123. package/src/modules/documentation/config.yaml +73 -0
  124. package/src/modules/documentation/module.yaml +100 -0
  125. package/src/modules/documentation/workflows/academic-paper/workflow.yaml +159 -0
  126. package/src/modules/documentation/workflows/analysis-protocol/workflow.yaml +161 -0
  127. package/src/modules/documentation/workflows/data-collection-guide/workflow.yaml +165 -0
  128. package/src/modules/documentation/workflows/documentation-review/workflow.yaml +114 -0
  129. package/src/modules/documentation/workflows/technical-manual/workflow.yaml +133 -0
  130. package/src/test-modules.js +572 -0
  131. package/tests/e2e/flow-tests.cjs +339 -0
  132. package/tests/integration/integration-tests.cjs +562 -0
  133. package/tests/run-all-tests.cjs +175 -0
  134. package/tests/validation/yaml-validator.cjs +345 -0
  135. package/tools/abm-ks-npx-wrapper.js +17 -0
  136. package/tools/cli/abm-ks-cli.js +133 -0
  137. package/tools/cli/commands/help.js +43 -0
  138. package/tools/cli/commands/index.js +17 -0
  139. package/tools/cli/commands/install.js +53 -0
  140. package/tools/cli/commands/version.js +17 -0
  141. package/tools/installer/lib/config-collector.js +322 -0
  142. package/tools/installer/lib/defaults.js +204 -0
  143. package/tools/installer/lib/file-copier.js +248 -0
  144. package/tools/installer/lib/index.js +18 -0
  145. package/tools/installer/lib/installer.js +492 -0
  146. package/tools/installer/lib/logger.js +233 -0
  147. package/tools/installer/lib/module-manager.js +222 -0
  148. package/tools/installer/lib/team-selector.js +238 -0
  149. package/tools/installer/lib/ui.js +197 -0
  150. package/tools/installer/lib/utils.js +239 -0
  151. package/tools/installer/test-config.js +99 -0
  152. package/tools/installer/test-installer.js +172 -0
  153. package/tools/installer/test-ui.js +138 -0
  154. package/tools/scripts/prepare.js +37 -0
package/CHANGELOG.md ADDED
@@ -0,0 +1,108 @@
1
+ # Changelog
2
+
3
+ Todas as mudanças notáveis neste projeto serão documentadas neste arquivo.
4
+
5
+ O formato é baseado em [Keep a Changelog](https://keepachangelog.com/pt-BR/1.0.0/),
6
+ e este projeto adere ao [Versionamento Semântico](https://semver.org/lang/pt-BR/).
7
+
8
+ ## [0.1.0] - 2025-01-15
9
+
10
+ ### 🎉 Release Inicial
11
+
12
+ Primeira versão pública do ABM-KS (Agent-Based Modeling Knowledge System).
13
+
14
+ ### Adicionado
15
+
16
+ #### Core
17
+ - Sistema modular com arquitetura extensível
18
+ - Agente ABM Master para coordenação geral
19
+ - Workflows de inicialização (`*init`) e status (`*status`)
20
+ - Sistema de help contextual com 8 tópicos
21
+
22
+ #### Equipe de Desenvolvimento ABM (7 agentes)
23
+ - Model Designer - Design conceitual de modelos
24
+ - Simulation Architect - Arquitetura técnica
25
+ - Python Developer - Implementação Python/Mesa
26
+ - NetLogo Developer - Implementação NetLogo
27
+ - C++ Developer - Implementação C++ de alta performance
28
+ - ODD Writer - Documentação ODD Protocol
29
+ - Experiment Designer - Design de experimentos
30
+
31
+ #### Workflows ABM (11 workflows em 4 fases)
32
+ - **Fase 1**: model-brief, pattern-identification
33
+ - **Fase 2**: entity-design, behavior-rules, environment-setup, process-scheduling
34
+ - **Fase 3**: code-generation, model-testing, experiment-setup
35
+ - **Fase 4**: generate-odd, readme-generation
36
+
37
+ #### Equipe de Brainstorming (5 agentes) - Opcional
38
+ - Facilitador - Coordenação de sessões
39
+ - Pesquisador - Revisão de literatura
40
+ - Crítico - Análise crítica
41
+ - Visionário - Ideação criativa
42
+ - Sintetizador - Consolidação de documentos
43
+
44
+ #### Workflows de Brainstorming (5 workflows)
45
+ - ideation-session, literature-review, problem-definition
46
+ - hypothesis-generation, model-scoping
47
+
48
+ #### Equipe de Documentação (5 agentes) - Opcional
49
+ - Editor Científico - Escrita acadêmica
50
+ - Documentador Técnico - Manuais técnicos
51
+ - Analista de Dados - Protocolos de análise
52
+ - Revisor - Controle de qualidade
53
+ - Comunicador - Adaptação para públicos
54
+
55
+ #### Workflows de Documentação (5 workflows)
56
+ - academic-paper, technical-manual, data-collection-guide
57
+ - analysis-protocol, documentation-review
58
+
59
+ #### Biblioteca de Modelos
60
+ - Sistema de biblioteca com registry YAML
61
+ - 6 templates prontos:
62
+ - Predator-Prey (Python + NetLogo)
63
+ - SIR Epidemic (Python + NetLogo)
64
+ - Schelling Segregation (Python + NetLogo)
65
+ - Comandos: `*list-models`, `*use-template`, `*browse-library`
66
+ - Framework para contribuições da comunidade
67
+
68
+ #### Documentação
69
+ - Guia Getting Started
70
+ - Guia de Conceitos ABM
71
+ - Cartão de Referência Rápida
72
+ - Sistema de help integrado
73
+
74
+ #### Infraestrutura
75
+ - CLI para instalação via npx
76
+ - Sistema de seleção de equipes
77
+ - 331 testes automatizados
78
+ - Validação de YAML e integridade
79
+
80
+ ### Estatísticas
81
+
82
+ | Componente | Quantidade |
83
+ |------------|------------|
84
+ | Agentes | 18 |
85
+ | Workflows | 27 |
86
+ | Templates | 6 |
87
+ | Testes | 331 |
88
+ | Arquivos | 235 |
89
+
90
+ ---
91
+
92
+ ## Versões Futuras
93
+
94
+ ### [0.2.0] - Planejado
95
+ - [ ] Mais templates de modelos
96
+ - [ ] Suporte a Repast Simphony
97
+ - [ ] Integração com Git
98
+ - [ ] Dashboard de progresso visual
99
+
100
+ ### [0.3.0] - Planejado
101
+ - [ ] Biblioteca comunitária online
102
+ - [ ] Validação automática de ODD
103
+ - [ ] Export para LaTeX
104
+ - [ ] Internacionalização (i18n)
105
+
106
+ ---
107
+
108
+ [0.1.0]: https://github.com/abm-ks/abm-ks/releases/tag/v0.1.0
@@ -0,0 +1,294 @@
1
+ # Contribuindo para o ABM-KS
2
+
3
+ Obrigado por considerar contribuir com o ABM-KS! 🎉
4
+
5
+ Este documento fornece diretrizes para contribuições ao projeto.
6
+
7
+ ## 📋 Índice
8
+
9
+ - [Código de Conduta](#código-de-conduta)
10
+ - [Como Posso Contribuir?](#como-posso-contribuir)
11
+ - [Reportando Bugs](#reportando-bugs)
12
+ - [Sugerindo Melhorias](#sugerindo-melhorias)
13
+ - [Contribuindo com Código](#contribuindo-com-código)
14
+ - [Adicionando Templates](#adicionando-templates)
15
+ - [Guia de Estilo](#guia-de-estilo)
16
+ - [Processo de Review](#processo-de-review)
17
+
18
+ ---
19
+
20
+ ## Código de Conduta
21
+
22
+ Este projeto adota um código de conduta para garantir um ambiente acolhedor para todos. Ao participar, você concorda em manter um ambiente respeitoso e inclusivo.
23
+
24
+ ### Nossos Padrões
25
+
26
+ ✅ **Comportamentos esperados:**
27
+ - Usar linguagem acolhedora e inclusiva
28
+ - Respeitar diferentes pontos de vista
29
+ - Aceitar críticas construtivas
30
+ - Focar no que é melhor para a comunidade
31
+
32
+ ❌ **Comportamentos inaceitáveis:**
33
+ - Linguagem ou imagens ofensivas
34
+ - Assédio de qualquer tipo
35
+ - Ataques pessoais ou políticos
36
+ - Publicar informações privadas de outros
37
+
38
+ ---
39
+
40
+ ## Como Posso Contribuir?
41
+
42
+ ### 🐛 Reportando Bugs
43
+
44
+ Antes de reportar um bug:
45
+ 1. Verifique se já não foi reportado
46
+ 2. Teste com a versão mais recente
47
+ 3. Colete informações relevantes
48
+
49
+ **Inclua no seu report:**
50
+ - Versão do ABM-KS
51
+ - Sistema operacional
52
+ - Passos para reproduzir
53
+ - Comportamento esperado vs atual
54
+ - Screenshots/logs se aplicável
55
+
56
+ ### 💡 Sugerindo Melhorias
57
+
58
+ Sugestões são bem-vindas! Abra uma issue descrevendo:
59
+ - O problema que a melhoria resolve
60
+ - Como você imagina a solução
61
+ - Alternativas consideradas
62
+ - Contexto adicional
63
+
64
+ ### 📝 Melhorando Documentação
65
+
66
+ Documentação é crucial! Você pode:
67
+ - Corrigir erros de digitação
68
+ - Esclarecer seções confusas
69
+ - Adicionar exemplos
70
+ - Traduzir para outros idiomas
71
+
72
+ ---
73
+
74
+ ## Contribuindo com Código
75
+
76
+ ### Setup do Ambiente
77
+
78
+ ```bash
79
+ # Clone seu fork
80
+ git clone https://github.com/seu-usuario/abm-ks.git
81
+ cd abm-ks
82
+
83
+ # Instale dependências
84
+ npm install
85
+
86
+ # Execute testes
87
+ node tests/run-all-tests.cjs
88
+ ```
89
+
90
+ ### Fluxo de Trabalho
91
+
92
+ 1. **Fork** o repositório
93
+ 2. **Clone** seu fork localmente
94
+ 3. **Crie uma branch** para sua feature
95
+ ```bash
96
+ git checkout -b feature/minha-feature
97
+ ```
98
+ 4. **Faça commits** com mensagens claras
99
+ 5. **Execute testes** antes de submeter
100
+ 6. **Abra um Pull Request**
101
+
102
+ ### Estrutura de Commits
103
+
104
+ Use mensagens de commit claras e descritivas:
105
+
106
+ ```
107
+ tipo(escopo): descrição curta
108
+
109
+ Descrição mais detalhada se necessário.
110
+
111
+ Fixes #123
112
+ ```
113
+
114
+ **Tipos de commit:**
115
+ - `feat`: Nova feature
116
+ - `fix`: Correção de bug
117
+ - `docs`: Documentação
118
+ - `style`: Formatação
119
+ - `refactor`: Refatoração
120
+ - `test`: Testes
121
+ - `chore`: Manutenção
122
+
123
+ ### Executando Testes
124
+
125
+ ```bash
126
+ # Todos os testes
127
+ node tests/run-all-tests.cjs
128
+
129
+ # Testes específicos
130
+ node src/test-modules.js # Estrutura
131
+ node tests/validation/yaml-validator.cjs # YAML
132
+ node tests/integration/integration-tests.cjs # Integração
133
+ node tests/e2e/flow-tests.cjs # E2E
134
+ ```
135
+
136
+ **Importante:** Todos os testes devem passar antes do PR ser aceito.
137
+
138
+ ---
139
+
140
+ ## Adicionando Templates
141
+
142
+ Templates de modelos são muito bem-vindos!
143
+
144
+ ### Requisitos
145
+
146
+ 1. Modelo deve ser funcional e testado
147
+ 2. Código bem documentado
148
+ 3. README explicativo
149
+ 4. Seguir a estrutura padrão
150
+
151
+ ### Estrutura do Template
152
+
153
+ ```
154
+ templates/models/{plataforma}/{nome-do-modelo}/
155
+ ├── model-info.yaml # Metadados do modelo
156
+ ├── README.md # Documentação
157
+ └── src/ # Código fonte
158
+ ├── model.py # (Python)
159
+ └── model.nlogo # (NetLogo)
160
+ ```
161
+
162
+ ### model-info.yaml
163
+
164
+ ```yaml
165
+ model:
166
+ id: nome-do-modelo
167
+ name: "Nome Exibição"
168
+ version: 1.0.0
169
+ description: "Descrição breve"
170
+
171
+ metadata:
172
+ author: "Seu Nome"
173
+ domain: ecology|epidemiology|economics|social|other
174
+ complexity: beginner|intermediate|advanced
175
+
176
+ technical:
177
+ platform: python|netlogo|cpp
178
+ requirements:
179
+ - mesa>=2.0.0
180
+
181
+ tags:
182
+ - tag1
183
+ - tag2
184
+ ```
185
+
186
+ ### Processo de Submissão
187
+
188
+ 1. Crie o modelo seguindo a estrutura
189
+ 2. Adicione ao registry em `library/model-registry.yaml`
190
+ 3. Execute `node src/test-modules.js` para validar
191
+ 4. Abra um PR com a categoria `template`
192
+
193
+ Veja também: [library/CONTRIBUTING.md](src/modules/abm/library/CONTRIBUTING.md)
194
+
195
+ ---
196
+
197
+ ## Guia de Estilo
198
+
199
+ ### YAML
200
+
201
+ ```yaml
202
+ # Use 2 espaços para indentação
203
+ # Strings com caracteres especiais entre aspas
204
+ # Listas com hífen e espaço
205
+
206
+ workflow:
207
+ id: meu-workflow
208
+ name: "Meu Workflow"
209
+ description: >
210
+ Descrição multilinha usando
211
+ folded scalar.
212
+
213
+ steps:
214
+ - id: step-1
215
+ name: "Primeiro Passo"
216
+ ```
217
+
218
+ ### Markdown
219
+
220
+ - Use headers hierárquicos (#, ##, ###)
221
+ - Inclua índice para docs longos
222
+ - Use tabelas para informações estruturadas
223
+ - Adicione exemplos de código com syntax highlighting
224
+
225
+ ### JavaScript
226
+
227
+ ```javascript
228
+ // Use const/let, nunca var
229
+ // Funções com nomes descritivos
230
+ // Comente código complexo
231
+ // Siga o estilo existente no projeto
232
+
233
+ const colors = {
234
+ green: '\x1b[32m',
235
+ reset: '\x1b[0m'
236
+ };
237
+
238
+ function validateSchema(filePath, schemaType) {
239
+ // Implementação...
240
+ }
241
+ ```
242
+
243
+ ---
244
+
245
+ ## Processo de Review
246
+
247
+ ### O que esperamos
248
+
249
+ 1. **Código limpo** - Legível e bem estruturado
250
+ 2. **Testes passando** - Todos os 331+ testes
251
+ 3. **Documentação** - Atualizada conforme mudanças
252
+ 4. **Commits claros** - Histórico compreensível
253
+
254
+ ### Timeline
255
+
256
+ - PRs são revisados em até 7 dias
257
+ - Feedback será dado via comentários
258
+ - Iterações podem ser necessárias
259
+ - Merge após aprovação
260
+
261
+ ### Labels
262
+
263
+ - `bug` - Correção de bug
264
+ - `enhancement` - Nova feature
265
+ - `documentation` - Docs
266
+ - `template` - Novo template
267
+ - `good first issue` - Bom para iniciantes
268
+
269
+ ---
270
+
271
+ ## Reconhecimento
272
+
273
+ Todos os contribuidores serão reconhecidos no projeto:
274
+ - Lista de Contributors no README
275
+ - Changelog com créditos
276
+ - Releases com agradecimentos
277
+
278
+ ---
279
+
280
+ ## Dúvidas?
281
+
282
+ - Abra uma issue com label `question`
283
+ - Participe das discussões no GitHub
284
+ - Entre em contato via email
285
+
286
+ **Obrigado por contribuir!** 🙏
287
+
288
+ ---
289
+
290
+ <div align="center">
291
+
292
+ [↑ Voltar ao topo](#contribuindo-para-o-abm-ks)
293
+
294
+ </div>
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 ABM-KS Contributors
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.