@koalarx/nest 1.18.21 → 1.19.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.
@@ -0,0 +1,437 @@
1
+ # 🤖 Extensão MCP para VS Code
2
+
3
+ A extensão **Koala Nest Documentation MCP** integra toda a documentação do Koala Nest diretamente no GitHub Copilot através do Model Context Protocol (MCP).
4
+
5
+ ## 📦 Duas Formas de Usar
6
+
7
+ Você pode usar o MCP server de **duas formas diferentes**:
8
+
9
+ ### 1️⃣ Via Extensão VS Code (Recomendado - Mais Fácil)
10
+
11
+ ✅ Instalação com 1 clique
12
+ ✅ Funciona em qualquer workspace
13
+ ✅ Atualização automática via Marketplace
14
+ ✅ Zero configuração necessária
15
+
16
+ **[📦 Instalar Extensão](https://marketplace.visualstudio.com/items?itemName=koalarx.koala-libs-mcp-docs)**
17
+
18
+ ### 2️⃣ Via Arquivo de Configuração (Avançado)
19
+
20
+ ✅ Controle total sobre a configuração
21
+ ✅ Sem dependência de extensão
22
+ ✅ Ideal para projetos específicos
23
+ ✅ Pode usar versão customizada do server
24
+
25
+ Crie um arquivo `.vscode/mcp.json` no seu projeto (veja detalhes abaixo).
26
+
27
+ ---
28
+
29
+ ## 📦 Instalação - Método 1: Extensão VS Code
30
+
31
+ ### Via VS Code Marketplace
32
+
33
+ 1. Abra o VS Code
34
+ 2. Vá até a aba de extensões (`Ctrl+Shift+X` ou `Cmd+Shift+X`)
35
+ 3. Busque por **"Koala Nest Documentation MCP"**
36
+ 4. Clique em **Instalar**
37
+
38
+ ### Via Arquivo VSIX (Desenvolvimento)
39
+
40
+ Se você estiver testando uma versão em desenvolvimento:
41
+
42
+ ```bash
43
+ # Clone o repositório
44
+ git clone https://github.com/igordrangel/koala-nest
45
+ cd koala-nest
46
+
47
+ # Instale as dependências
48
+ bun install
49
+
50
+ # Build e empacote a extensão
51
+ bun run build:mcp-all
52
+ bun run package:vscode-extension
53
+
54
+ # Instale manualmente
55
+ code --install-extension apps/mcp-vscode-extension/koala-libs-mcp-docs-*.vsix
56
+ ```
57
+
58
+ ---
59
+
60
+ ## 📦 Instalação - Método 2: Arquivo de Configuração
61
+
62
+ Esta abordagem permite usar o MCP server sem instalar a extensão, através de um arquivo `.vscode/mcp.json`.
63
+
64
+ ### Passo 1: Instalar o Koala Nest
65
+
66
+ ```bash
67
+ npm install @koalarx/nest
68
+ # ou
69
+ bun add @koalarx/nest
70
+ ```
71
+
72
+ ### Passo 2: Criar arquivo `.vscode/mcp.json`
73
+
74
+ Crie o arquivo `.vscode/mcp.json` na raiz do seu projeto:
75
+
76
+ ```json
77
+ {
78
+ "mcpServers": {
79
+ "koala-nest-docs": {
80
+ "command": "node",
81
+ "args": [
82
+ "${workspaceFolder}/node_modules/@koalarx/nest/mcp-server/server.js"
83
+ ],
84
+ "env": {}
85
+ }
86
+ }
87
+ }
88
+ ```
89
+
90
+ ### Passo 3: Reiniciar o VS Code
91
+
92
+ ```bash
93
+ # Ou use o Command Palette
94
+ Ctrl+Shift+P → "Developer: Reload Window"
95
+ ```
96
+
97
+ ### Alternativa: Configuração Global
98
+
99
+ Se você quer o MCP server disponível em **todos os seus projetos**, adicione ao settings do VS Code:
100
+
101
+ 1. Abra Settings (`Ctrl+,`)
102
+ 2. Busque por "MCP Servers"
103
+ 3. Ou edite diretamente `settings.json`:
104
+
105
+ ```json
106
+ {
107
+ "mcp.servers": {
108
+ "koala-nest-docs": {
109
+ "command": "node",
110
+ "args": [
111
+ "/caminho/absoluto/para/node_modules/@koalarx/nest/mcp-server/server.js"
112
+ ]
113
+ }
114
+ }
115
+ }
116
+ ```
117
+
118
+ ### Arquivo de Exemplo
119
+
120
+ O pacote `@koalarx/nest` inclui um arquivo de exemplo em:
121
+ ```
122
+ node_modules/@koalarx/nest/mcp-server/mcp.json.example
123
+ ```
124
+
125
+ Você pode copiá-lo e ajustar conforme necessário.
126
+
127
+ ---
128
+
129
+ ## ⚙️ Configuração
130
+
131
+ ### Ativação Automática
132
+
133
+ A extensão é ativada automaticamente ao iniciar o VS Code. Você verá uma notificação confirmando que está ativa:
134
+
135
+ > 🚀 Koala Nest Documentation MCP extension is ready!
136
+
137
+ ### Verificação
138
+
139
+ Para verificar se a extensão está funcionando:
140
+
141
+ 1. Abra o **Output Panel** (`Ctrl+Shift+U` ou `View > Output`)
142
+ 2. Selecione **"Koala Nest Documentation"** no dropdown
143
+ 3. Você verá logs como:
144
+ ```
145
+ 🚀 Extension "Koala Nest Documentation MCP" is now active!
146
+ MCP Server path: /path/to/extension/dist/server.js
147
+ ```
148
+
149
+ ### Comando Manual
150
+
151
+ Você também pode ativar manualmente via Command Palette:
152
+
153
+ 1. Abra o Command Palette (`Ctrl+Shift+P` ou `Cmd+Shift+P`)
154
+ 2. Digite: **"Koala Nest: Open Documentation"**
155
+ 3. Pressione Enter
156
+
157
+ ## 🎯 Como Utilizar
158
+
159
+ ### Com GitHub Copilot
160
+
161
+ A extensão funciona integrada ao GitHub Copilot. Basta fazer perguntas relacionadas ao Koala Nest:
162
+
163
+ #### Exemplos de Prompts
164
+
165
+ **Instalação e Configuração:**
166
+ ```
167
+ Como instalar o Koala Nest?
168
+ Como configurar o Prisma no Koala Nest?
169
+ Mostre a configuração inicial do Koala Nest
170
+ ```
171
+
172
+ **Criando Controllers:**
173
+ ```
174
+ Como criar um controller no Koala Nest?
175
+ Exemplo de controller CRUD com Koala Nest
176
+ Como usar decoradores customizados no Koala Nest?
177
+ ```
178
+
179
+ **Handlers e Validação:**
180
+ ```
181
+ Como criar um request handler no Koala Nest?
182
+ Exemplo de validação com Zod no Koala Nest
183
+ Como fazer validação customizada?
184
+ ```
185
+
186
+ **Repository e Database:**
187
+ ```
188
+ Como criar um repository com Koala Nest?
189
+ Exemplo de repository com Prisma
190
+ Como fazer transações no Koala Nest?
191
+ Como usar o KoalaEntityBase?
192
+ ```
193
+
194
+ **Jobs e Eventos:**
195
+ ```
196
+ Como criar cron jobs no Koala Nest?
197
+ Exemplo de event handler
198
+ Como disparar eventos no Koala Nest?
199
+ ```
200
+
201
+ **Tratamento de Erros:**
202
+ ```
203
+ Quais são os erros disponíveis no Koala Nest?
204
+ Como criar erros customizados?
205
+ Como tratar exceções no Koala Nest?
206
+ ```
207
+
208
+ **Features Avançadas:**
209
+ ```
210
+ Como usar Redis no Koala Nest?
211
+ Como implementar RedLock?
212
+ Como fazer auto-mapping?
213
+ Como usar paginação?
214
+ ```
215
+
216
+ ### Documentação Disponível
217
+
218
+ O MCP Server expõe toda a documentação do Koala Nest:
219
+
220
+ - **00-cli-reference.md** - Referência da CLI
221
+ - **01-guia-instalacao.md** - Guia de instalação
222
+ - **02-configuracao-inicial.md** - Configuração inicial
223
+ - **04-tratamento-erros.md** - Tratamento de erros
224
+ - **05-features-avancadas.md** - Features avançadas (Redis, RedLock, Mapping, etc.)
225
+ - **06-decoradores.md** - Decoradores customizados
226
+ - **07-guia-bun.md** - Guia do Bun
227
+ - **08-prisma-client.md** - Prisma Client customizado
228
+ - **EXAMPLE.md** - Exemplo prático completo com CRUD
229
+
230
+ ## 🔍 Verificando a Integração
231
+
232
+ ### Output Channel
233
+
234
+ Para ver os logs do MCP Server:
235
+
236
+ 1. Abra o Output Panel (`Ctrl+Shift+U`)
237
+ 2. Selecione **"Koala Nest Documentation"**
238
+ 3. Verifique se há mensagens de ativação
239
+
240
+ ### GitHub Copilot
241
+
242
+ Quando você faz uma pergunta ao Copilot sobre Koala Nest:
243
+
244
+ 1. O MCP Server é consultado automaticamente
245
+ 2. A resposta incluirá informações da documentação oficial
246
+ 3. Você receberá exemplos de código atualizados
247
+
248
+ ## 🛠️ Desenvolvimento Local
249
+
250
+ ### Estrutura do Projeto
251
+
252
+ ```
253
+ koala-nest/
254
+ ├── apps/
255
+ │ ├── mcp-server/ # MCP Server (Node.js)
256
+ │ │ ├── server.ts # Servidor MCP principal
257
+ │ │ └── tsconfig.json
258
+ │ └── mcp-vscode-extension/ # Extensão VS Code
259
+ │ ├── src/
260
+ │ │ └── extension.ts # Código da extensão
261
+ │ ├── package.json
262
+ │ └── tsconfig.json
263
+ └── docs/ # Documentação servida pelo MCP
264
+ ```
265
+
266
+ ### Build e Teste Local
267
+
268
+ ```bash
269
+ # Build do MCP Server
270
+ bun run build:mcp
271
+
272
+ # Build da extensão
273
+ bun run build:mcp-extension
274
+
275
+ # Build completo (server + extension)
276
+ bun run build:mcp-all
277
+
278
+ # Empacotar extensão
279
+ bun run package:vscode-extension
280
+ ```
281
+
282
+ ### Debug no VS Code
283
+
284
+ 1. Abra o projeto no VS Code
285
+ 2. Vá até o painel de Debug (`Ctrl+Shift+D`)
286
+ 3. Selecione **"Extension (MCP Docs)"**
287
+ 4. Pressione `F5`
288
+
289
+ Isso abrirá uma nova janela do VS Code com a extensão em modo de desenvolvimento.
290
+
291
+ ### Testar o MCP Server Diretamente
292
+
293
+ ```bash
294
+ # Executar o servidor MCP standalone
295
+ bun run start:mcp
296
+ ```
297
+
298
+ ## 📊 Recursos do MCP Server
299
+
300
+ O servidor MCP expõe os seguintes recursos:
301
+
302
+ ### Tools (Ferramentas)
303
+
304
+ - **`get_documentation`** - Recupera documentação específica
305
+ - Parâmetros: `topic` (string)
306
+ - Retorna: Conteúdo markdown do documento
307
+
308
+ - **`search_documentation`** - Busca na documentação
309
+ - Parâmetros: `query` (string)
310
+ - Retorna: Resultados relevantes
311
+
312
+ - **`list_topics`** - Lista todos os tópicos disponíveis
313
+ - Retorna: Array de tópicos da documentação
314
+
315
+ ### Resources (Recursos)
316
+
317
+ Todos os arquivos markdown da pasta `/docs`:
318
+
319
+ - `docs://00-cli-reference`
320
+ - `docs://01-guia-instalacao`
321
+ - `docs://02-configuracao-inicial`
322
+ - `docs://04-tratamento-erros`
323
+ - `docs://05-features-avancadas`
324
+ - `docs://06-decoradores`
325
+ - `docs://07-guia-bun`
326
+ - `docs://08-prisma-client`
327
+ - `docs://EXAMPLE`
328
+ - `docs://README`
329
+
330
+ ## 🐛 Troubleshooting
331
+
332
+ ### Método 1: Problemas com Extensão
333
+
334
+ **Extensão não está ativa:**
335
+ 1. Verifique se está instalada: `code --list-extensions | grep koala`
336
+ 2. Reinstale: `code --install-extension koalarx.koala-libs-mcp-docs --force`
337
+ 3. Recarregue: `Ctrl+Shift+P` → "Developer: Reload Window"
338
+ 4. Verifique o Output Channel: `Ctrl+Shift+U` → "Koala Nest Documentation"
339
+
340
+ **MCP Server não responde:**
341
+ 1. Verifique erros no Output Channel
342
+ 2. Reinstale a extensão
343
+ 3. Verifique se `dist/server.js` existe na pasta da extensão
344
+
345
+ ### Método 2: Problemas com mcp.json
346
+
347
+ **Arquivo não é detectado:**
348
+ 1. Verifique se o arquivo está em `.vscode/mcp.json` (não `vscode/mcp.json`)
349
+ 2. Confirme que o caminho para `server.js` está correto
350
+ 3. Verifique se `@koalarx/nest` está instalado: `ls node_modules/@koalarx/nest/mcp-server/`
351
+ 4. Tente usar caminho absoluto ao invés de `${workspaceFolder}`
352
+ 5. Verifique erros no Output Panel: `Ctrl+Shift+U` → selecione "MCP"
353
+ 6. Reinicie completamente o VS Code (feche e abra)
354
+
355
+ **Exemplo de debug:**
356
+ ```bash
357
+ # Verificar se o arquivo existe
358
+ ls -la .vscode/mcp.json
359
+
360
+ # Verificar se o server existe
361
+ ls -la node_modules/@koalarx/nest/mcp-server/server.js
362
+
363
+ # Testar o server manualmente
364
+ node node_modules/@koalarx/nest/mcp-server/server.js
365
+ ```
366
+
367
+ ### Qual método usar?
368
+
369
+ | Critério | Extensão | mcp.json |
370
+ |----------|----------|----------|
371
+ | **Facilidade** | ⭐⭐⭐⭐⭐ (1 clique) | ⭐⭐⭐ (requer configuração) |
372
+ | **Atualizações** | ⭐⭐⭐⭐⭐ (automáticas) | ⭐⭐ (manual) |
373
+ | **Controle** | ⭐⭐⭐ | ⭐⭐⭐⭐⭐ (controle total) |
374
+ | **Multi-projeto** | ⭐⭐⭐⭐⭐ (funciona em todos) | ⭐⭐⭐ (por projeto) |
375
+ | **Customização** | ⭐⭐ | ⭐⭐⭐⭐⭐ (totalmente customizável) |
376
+
377
+ **Recomendação:**
378
+ - 👉 **Use Extensão** para uso geral e simplicidade
379
+ - 👉 **Use mcp.json** para controle fino ou testes de desenvolvimento
380
+
381
+ ### Erro ao instalar VSIX
382
+
383
+ **Problema:** `Error: ENOENT: no such file or directory`
384
+
385
+ **Solução:**
386
+ ```bash
387
+ # Rebuild completo
388
+ bun run build:mcp-all
389
+ bun run package:vscode-extension
390
+
391
+ # Instale novamente
392
+ code --install-extension apps/mcp-vscode-extension/*.vsix --force
393
+ ```
394
+
395
+ ### GitHub Copilot não está integrado
396
+
397
+ **Problema:** O Copilot não consulta o MCP
398
+
399
+ **Solução:**
400
+ 1. Certifique-se de ter o GitHub Copilot instalado e ativo
401
+ 2. Verifique se você tem uma assinatura válida do Copilot
402
+ 3. Reinicie o VS Code
403
+ 4. A integração MCP requer VS Code versão 1.90.0 ou superior
404
+
405
+ ## 📝 Contribuindo
406
+
407
+ Para contribuir com a extensão:
408
+
409
+ 1. Fork o repositório
410
+ 2. Crie uma branch para sua feature
411
+ 3. Faça suas alterações
412
+ 4. Teste localmente com `F5`
413
+ 5. Crie um Pull Request
414
+
415
+ ### Adicionando Nova Documentação
416
+
417
+ Para adicionar novos documentos ao MCP:
418
+
419
+ 1. Crie o arquivo markdown em `/docs`
420
+ 2. O MCP Server automaticamente o detectará
421
+ 3. Rebuild o projeto: `bun run build:mcp-all`
422
+ 4. Teste com o Copilot
423
+
424
+ ## 🔗 Links Úteis
425
+
426
+ - [Repositório GitHub](https://github.com/igordrangel/koala-nest)
427
+ - [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=koalarx.koala-libs-mcp-docs)
428
+ - [Model Context Protocol](https://modelcontextprotocol.io/)
429
+ - [GitHub Copilot](https://github.com/features/copilot)
430
+
431
+ ## 📄 Licença
432
+
433
+ Esta extensão é parte do projeto Koala Nest e usa a mesma licença do projeto principal.
434
+
435
+ ---
436
+
437
+ **💡 Dica:** Use o MCP para acelerar seu desenvolvimento! O Copilot terá acesso a toda a documentação oficial do Koala Nest, fornecendo respostas mais precisas e exemplos atualizados.