@andrebuzeli/git-mcp 4.0.4 → 4.0.5

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.
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAwLA;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAS;;IAavB;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,aAAa;IAuZrB;;;;;;;;;;;;;;;;;;OAkBG;IACG,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IA8D1B;;;;;;;;;;;;OAYG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"AAmKA;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAS;;IAavB;;;;;;;;;;;;;;;;;OAiBG;IACH,OAAO,CAAC,aAAa;IAuhBrB;;;;;;;;;;;;;;;;;;OAkBG;IACG,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;IA8D1B;;;;;;;;;;;;OAYG;IACG,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B"}
package/dist/server.js CHANGED
@@ -138,41 +138,20 @@ const tools = [
138
138
  * Recursos MCP disponíveis
139
139
  *
140
140
  * RESOURCES DISPONÍVEIS:
141
- * - tools-reference: Documentação completa de todas as tools, actions e parâmetros
141
+ * - instructions: Instruções completas de uso de cada tool, action e parâmetro
142
142
  * - examples: Exemplos práticos de uso das ferramentas
143
- * - prompts: Templates de prompts para diferentes cenários
144
- * - configuration: Informações de configuração e setup
145
- * - architecture: Detalhes da arquitetura e design decisions
146
143
  */
147
144
  const resources = [
148
145
  {
149
- uri: 'mcp-git://tools-reference',
150
- name: 'Ferramentas MCP Git - Referência Completa',
151
- description: 'Documentação detalhada de todas as 18 ferramentas, suas actions, parâmetros obrigatórios/opcionais e funcionalidades',
146
+ uri: 'mcp-git://instructions',
147
+ name: 'Instruções de Uso - Todas as Tools',
148
+ description: 'Guia completo de uso de cada ferramenta, suas actions, parâmetros obrigatórios/opcionais e funcionalidades',
152
149
  mimeType: 'application/json'
153
150
  },
154
151
  {
155
152
  uri: 'mcp-git://examples',
156
- name: 'Exemplos Práticos de Uso',
157
- description: 'Exemplos reais de workflows completos, casos de uso comuns e melhores práticas',
158
- mimeType: 'application/json'
159
- },
160
- {
161
- uri: 'mcp-git://prompts',
162
- name: 'Templates de Prompts',
163
- description: 'Prompts otimizados para diferentes cenários de desenvolvimento e uso das ferramentas',
164
- mimeType: 'application/json'
165
- },
166
- {
167
- uri: 'mcp-git://configuration',
168
- name: 'Configuração e Setup',
169
- description: 'Informações completas sobre configuração de ambiente, variáveis obrigatórias e opcionais',
170
- mimeType: 'application/json'
171
- },
172
- {
173
- uri: 'mcp-git://architecture',
174
- name: 'Arquitetura e Design',
175
- description: 'Detalhes da arquitetura unificada, decisões de design e princípios implementados',
153
+ name: 'Exemplos Práticos',
154
+ description: 'Exemplos reais de workflows, casos de uso comuns e melhores práticas de uso das ferramentas',
176
155
  mimeType: 'application/json'
177
156
  }
178
157
  ];
@@ -282,321 +261,436 @@ class GiteaMCPServer {
282
261
  const { uri } = request.params;
283
262
  let content = '';
284
263
  switch (uri) {
285
- case 'mcp-git://tools-reference':
264
+ case 'mcp-git://instructions':
286
265
  content = JSON.stringify({
287
- title: 'MCP Git Tools - Referência Completa',
288
- version: '4.0.3',
266
+ title: 'INSTRUÇÕES DE USO - MCP Git Tools',
267
+ version: '4.0.4',
289
268
  totalTools: 18,
290
- architecture: {
291
- coreUnified: 6,
292
- advanced: 6,
293
- specialized: 6
294
- },
269
+ description: 'Guia completo de todas as ferramentas, suas actions e parâmetros',
295
270
  tools: {
296
271
  'git-workflow': {
297
272
  description: 'Workflow unificado completo',
298
273
  actions: {
299
274
  init: {
300
275
  description: 'Inicialização completa do projeto',
301
- parameters: {
302
- required: ['action', 'projectPath'],
303
- optional: ['message']
304
- },
305
- example: { action: 'init', projectPath: '/path/to/project', message: 'Initial commit' }
276
+ required: ['action', 'projectPath'],
277
+ optional: ['message'],
278
+ example: '{ "action": "init", "projectPath": "/path/to/project" }'
306
279
  },
307
280
  commit: {
308
281
  description: 'Commit com push automático',
309
- parameters: {
310
- required: ['action', 'projectPath', 'message'],
311
- optional: []
312
- },
313
- example: { action: 'commit', projectPath: '/path/to/project', message: 'feat: new feature' }
282
+ required: ['action', 'projectPath', 'message'],
283
+ optional: [],
284
+ example: '{ "action": "commit", "projectPath": "/path/to/project", "message": "feat: new feature" }'
314
285
  },
315
286
  sync: {
316
- description: 'Sincronização completa',
317
- parameters: {
318
- required: ['action', 'projectPath'],
319
- optional: ['message']
320
- }
287
+ description: 'Sincronização completa (pull + commit + push)',
288
+ required: ['action', 'projectPath'],
289
+ optional: ['message'],
290
+ example: '{ "action": "sync", "projectPath": "/path/to/project" }'
321
291
  },
322
292
  status: {
323
293
  description: 'Status completo do projeto',
324
- parameters: {
325
- required: ['action', 'projectPath'],
326
- optional: ['detailed']
327
- }
294
+ required: ['action', 'projectPath'],
295
+ optional: ['detailed'],
296
+ example: '{ "action": "status", "projectPath": "/path/to/project", "detailed": true }'
328
297
  },
329
298
  backup: {
330
- description: 'Backup completo',
331
- parameters: {
332
- required: ['action', 'projectPath'],
333
- optional: ['description']
334
- }
299
+ description: 'Backup completo do estado atual',
300
+ required: ['action', 'projectPath'],
301
+ optional: ['description'],
302
+ example: '{ "action": "backup", "projectPath": "/path/to/project", "description": "Backup antes de mudanças" }'
335
303
  }
336
304
  }
337
305
  },
338
306
  'git-files': {
339
307
  description: 'Gerenciamento inteligente de arquivos',
340
308
  actions: {
341
- read: { description: 'Ler arquivo', parameters: { required: ['action', 'projectPath', 'filePath'] } },
342
- write: { description: 'Escrever arquivo', parameters: { required: ['action', 'projectPath', 'filePath', 'content'] } },
343
- search: { description: 'Buscar no código', parameters: { required: ['action', 'projectPath', 'query'], optional: ['path', 'caseSensitive'] } },
344
- update: { description: 'Atualizar arquivo', parameters: { required: ['action', 'projectPath', 'filePath', 'content'] } },
345
- 'backup-files': { description: 'Backup seletivo', parameters: { required: ['action', 'projectPath'], optional: ['patterns'] } }
309
+ read: {
310
+ description: 'Ler conteúdo de arquivo',
311
+ required: ['action', 'projectPath', 'filePath'],
312
+ optional: [],
313
+ example: '{ "action": "read", "projectPath": "/path/to/project", "filePath": "src/index.ts" }'
314
+ },
315
+ write: {
316
+ description: 'Escrever arquivo com backup automático',
317
+ required: ['action', 'projectPath', 'filePath', 'content'],
318
+ optional: [],
319
+ example: '{ "action": "write", "projectPath": "/path/to/project", "filePath": "src/newfile.ts", "content": "export const hello = \'world\';" }'
320
+ },
321
+ search: {
322
+ description: 'Buscar texto no código',
323
+ required: ['action', 'projectPath', 'query'],
324
+ optional: ['path', 'caseSensitive'],
325
+ example: '{ "action": "search", "projectPath": "/path/to/project", "query": "function.*login" }'
326
+ },
327
+ update: {
328
+ description: 'Atualizar arquivo existente',
329
+ required: ['action', 'projectPath', 'filePath', 'content'],
330
+ optional: [],
331
+ example: '{ "action": "update", "projectPath": "/path/to/project", "filePath": "src/existing.ts", "content": "updated content" }'
332
+ },
333
+ 'backup-files': {
334
+ description: 'Backup seletivo de arquivos',
335
+ required: ['action', 'projectPath'],
336
+ optional: ['patterns', 'description'],
337
+ example: '{ "action": "backup-files", "projectPath": "/path/to/project", "patterns": ["*.json", "*.config.*"] }'
338
+ }
346
339
  }
347
340
  },
348
341
  'git-release': {
349
342
  description: 'Sistema de release automatizado',
350
343
  actions: {
351
- create: { description: 'Criar release', parameters: { required: ['action', 'projectPath'], optional: ['version', 'changelog'] } },
352
- version: { description: 'Bump versão', parameters: { required: ['action', 'projectPath'], optional: ['type'] } },
353
- publish: { description: 'Publicar release', parameters: { required: ['action', 'projectPath'] } },
354
- history: { description: 'Histórico', parameters: { required: ['action', 'projectPath'], optional: ['limit'] } },
355
- rollback: { description: 'Rollback', parameters: { required: ['action', 'projectPath'] } }
344
+ create: {
345
+ description: 'Criar release com changelog automático',
346
+ required: ['action', 'projectPath'],
347
+ optional: ['version', 'changelog', 'draft', 'prerelease', 'assets', 'notes'],
348
+ example: '{ "action": "create", "projectPath": "/path/to/project", "changelog": true }'
349
+ },
350
+ version: {
351
+ description: 'Incrementar versão semântica',
352
+ required: ['action', 'projectPath'],
353
+ optional: ['type'],
354
+ example: '{ "action": "version", "projectPath": "/path/to/project", "type": "minor" }'
355
+ },
356
+ publish: {
357
+ description: 'Publicar release',
358
+ required: ['action', 'projectPath'],
359
+ optional: ['providers'],
360
+ example: '{ "action": "publish", "projectPath": "/path/to/project" }'
361
+ },
362
+ history: {
363
+ description: 'Histórico de releases',
364
+ required: ['action', 'projectPath'],
365
+ optional: ['limit', 'includeDrafts'],
366
+ example: '{ "action": "history", "projectPath": "/path/to/project", "limit": 10 }'
367
+ },
368
+ rollback: {
369
+ description: 'Rollback de release',
370
+ required: ['action', 'projectPath'],
371
+ optional: ['createBackup'],
372
+ example: '{ "action": "rollback", "projectPath": "/path/to/project", "createBackup": true }'
373
+ }
356
374
  }
357
375
  },
358
376
  'git-monitor': {
359
- description: 'Monitoramento avançado',
377
+ description: 'Monitoramento e analytics',
360
378
  actions: {
361
- status: { description: 'Status detalhado', parameters: { required: ['action', 'projectPath'], optional: ['includeMetrics'] } },
362
- history: { description: 'Histórico', parameters: { required: ['action', 'projectPath'], optional: ['since', 'limit'] } },
363
- metrics: { description: 'Métricas', parameters: { required: ['action', 'projectPath'], optional: ['period'] } },
364
- health: { description: 'Análise saúde', parameters: { required: ['action', 'projectPath'], optional: ['deep'] } },
365
- activity: { description: 'Atividade recente', parameters: { required: ['action', 'projectPath'], optional: ['hours'] } }
379
+ status: {
380
+ description: 'Status detalhado com métricas',
381
+ required: ['action', 'projectPath'],
382
+ optional: ['includeMetrics', 'detailed'],
383
+ example: '{ "action": "status", "projectPath": "/path/to/project", "includeMetrics": true }'
384
+ },
385
+ history: {
386
+ description: 'Histórico de atividades',
387
+ required: ['action', 'projectPath'],
388
+ optional: ['since', 'limit', 'type'],
389
+ example: '{ "action": "history", "projectPath": "/path/to/project", "since": "2024-01-01" }'
390
+ },
391
+ metrics: {
392
+ description: 'Métricas de produtividade',
393
+ required: ['action', 'projectPath'],
394
+ optional: ['period', 'includeCharts'],
395
+ example: '{ "action": "metrics", "projectPath": "/path/to/project", "period": "30d" }'
396
+ },
397
+ health: {
398
+ description: 'Análise de saúde do projeto',
399
+ required: ['action', 'projectPath'],
400
+ optional: ['deep', 'suggestions'],
401
+ example: '{ "action": "health", "projectPath": "/path/to/project", "deep": true }'
402
+ },
403
+ activity: {
404
+ description: 'Atividade recente',
405
+ required: ['action', 'projectPath'],
406
+ optional: ['hours', 'includeRemote'],
407
+ example: '{ "action": "activity", "projectPath": "/path/to/project", "hours": 24 }'
408
+ }
366
409
  }
367
410
  },
368
411
  'git-backup': {
369
412
  description: 'Sistema de backup inteligente',
370
413
  actions: {
371
- create: { description: 'Criar backup', parameters: { required: ['action', 'projectPath'], optional: ['type', 'name'] } },
372
- restore: { description: 'Restaurar', parameters: { required: ['action', 'projectPath', 'backupId'], optional: ['preview'] } },
373
- list: { description: 'Listar backups', parameters: { required: ['action', 'projectPath'], optional: ['filter'] } },
374
- auto: { description: 'Backup automático', parameters: { required: ['action', 'projectPath'], optional: ['enabled'] } },
375
- verify: { description: 'Verificar integridade', parameters: { required: ['action', 'projectPath', 'backupId'] } }
414
+ create: {
415
+ description: 'Criar backup',
416
+ required: ['action', 'projectPath'],
417
+ optional: ['type', 'name', 'includeUntracked', 'compress'],
418
+ example: '{ "action": "create", "projectPath": "/path/to/project", "type": "full" }'
419
+ },
420
+ restore: {
421
+ description: 'Restaurar backup',
422
+ required: ['action', 'projectPath', 'backupId'],
423
+ optional: ['preview', 'force', 'targetPath'],
424
+ example: '{ "action": "restore", "projectPath": "/path/to/project", "backupId": "backup-2024-01-01", "preview": true }'
425
+ },
426
+ list: {
427
+ description: 'Listar backups',
428
+ required: ['action', 'projectPath'],
429
+ optional: ['filter', 'limit', 'sortBy'],
430
+ example: '{ "action": "list", "projectPath": "/path/to/project", "filter": "full" }'
431
+ },
432
+ auto: {
433
+ description: 'Backup automático',
434
+ required: ['action', 'projectPath'],
435
+ optional: ['enabled', 'schedule', 'retention', 'maxBackups'],
436
+ example: '{ "action": "auto", "projectPath": "/path/to/project", "enabled": true, "schedule": "daily" }'
437
+ },
438
+ verify: {
439
+ description: 'Verificar integridade',
440
+ required: ['action', 'projectPath', 'backupId'],
441
+ optional: ['deep'],
442
+ example: '{ "action": "verify", "projectPath": "/path/to/project", "backupId": "backup-2024-01-01" }'
443
+ }
376
444
  }
377
445
  },
378
446
  'git-branches': {
379
447
  description: 'Gerenciamento de branches',
380
448
  actions: {
381
- create: { description: 'Criar branch', parameters: { required: ['action', 'projectPath', 'name'], optional: ['from'] } },
382
- list: { description: 'Listar branches', parameters: { required: ['action', 'projectPath'], optional: ['remote'] } },
383
- switch: { description: 'Trocar branch', parameters: { required: ['action', 'projectPath', 'name'], optional: ['create'] } },
384
- delete: { description: 'Remover branch', parameters: { required: ['action', 'projectPath', 'name'], optional: ['force'] } },
385
- merge: { description: 'Merge', parameters: { required: ['action', 'projectPath', 'branch'], optional: ['strategy'] } },
386
- compare: { description: 'Comparar', parameters: { required: ['action', 'projectPath', 'base', 'head'] } }
387
- }
388
- },
389
- 'git-remote': {
390
- description: 'Gerenciamento de remotos',
391
- actions: {
392
- add: { description: 'Adicionar remote', parameters: { required: ['action', 'projectPath', 'name', 'url'], optional: ['provider'] } },
393
- remove: { description: 'Remover remote', parameters: { required: ['action', 'projectPath', 'name'] } },
394
- rename: { description: 'Renomear remote', parameters: { required: ['action', 'projectPath', 'oldName', 'newName'] } },
395
- show: { description: 'Mostrar info', parameters: { required: ['action', 'projectPath'], optional: ['detailed'] } },
396
- 'set-url': { description: 'Alterar URL', parameters: { required: ['action', 'projectPath', 'name', 'url'] } },
397
- prune: { description: 'Limpar referências', parameters: { required: ['action', 'projectPath'] } }
398
- }
399
- },
400
- 'git-stash': {
401
- description: 'Operações de stash',
402
- actions: {
403
- save: { description: 'Salvar', parameters: { required: ['action', 'projectPath'], optional: ['message', 'includeUntracked'] } },
404
- pop: { description: 'Aplicar e remover', parameters: { required: ['action', 'projectPath'], optional: ['index'] } },
405
- apply: { description: 'Aplicar', parameters: { required: ['action', 'projectPath'], optional: ['index'] } },
406
- list: { description: 'Listar', parameters: { required: ['action', 'projectPath'], optional: ['detailed'] } },
407
- show: { description: 'Mostrar detalhes', parameters: { required: ['action', 'projectPath', 'index'] } },
408
- drop: { description: 'Remover', parameters: { required: ['action', 'projectPath', 'index'] } },
409
- clear: { description: 'Limpar todos', parameters: { required: ['action', 'projectPath'], optional: ['confirm'] } }
410
- }
411
- },
412
- 'git-reset': {
413
- description: 'Reset seguro',
414
- actions: {
415
- soft: { description: 'Reset soft', parameters: { required: ['action', 'projectPath', 'commit'] } },
416
- mixed: { description: 'Reset mixed', parameters: { required: ['action', 'projectPath', 'commit'] } },
417
- hard: { description: 'Reset hard', parameters: { required: ['action', 'projectPath', 'commit'], optional: ['confirm'] } },
418
- 'reset-to-commit': { description: 'Reset específico', parameters: { required: ['action', 'projectPath', 'commit'], optional: ['type'] } },
419
- 'reset-branch': { description: 'Reset branch', parameters: { required: ['action', 'projectPath', 'branch'], optional: ['target'] } }
420
- }
421
- },
422
- 'git-tags': {
423
- description: 'Gerenciamento de tags',
424
- actions: {
425
- create: { description: 'Criar tag', parameters: { required: ['action', 'projectPath', 'name'], optional: ['message', 'target', 'type'] } },
426
- list: { description: 'Listar tags', parameters: { required: ['action', 'projectPath'], optional: ['pattern', 'sort'] } },
427
- get: { description: 'Detalhes tag', parameters: { required: ['action', 'projectPath', 'name'] } },
428
- delete: { description: 'Remover tag', parameters: { required: ['action', 'projectPath', 'name'], optional: ['remote'] } },
429
- search: { description: 'Buscar tags', parameters: { required: ['action', 'projectPath'], optional: ['query', 'pattern'] } }
430
- }
431
- },
432
- 'git-issues': {
433
- description: 'Sistema de issues local',
434
- actions: {
435
- create: { description: 'Criar issue', parameters: { required: ['action', 'projectPath', 'title'], optional: ['description', 'labels', 'priority'] } },
436
- list: { description: 'Listar issues', parameters: { required: ['action', 'projectPath'], optional: ['state', 'limit', 'sort'] } },
437
- get: { description: 'Detalhes issue', parameters: { required: ['action', 'projectPath', 'id'] } },
438
- update: { description: 'Atualizar issue', parameters: { required: ['action', 'projectPath', 'id'], optional: ['title', 'status'] } },
439
- close: { description: 'Fechar issue', parameters: { required: ['action', 'projectPath', 'id'], optional: ['comment'] } },
440
- scan: { description: 'Auto-detecção TODOs', parameters: { required: ['action', 'projectPath'], optional: ['createIssues', 'patterns'] } }
441
- }
442
- },
443
- 'git-pulls': {
444
- description: 'Pull requests locais',
445
- actions: {
446
- create: { description: 'Criar PR', parameters: { required: ['action', 'projectPath', 'title', 'head', 'base'] } },
447
- list: { description: 'Listar PRs', parameters: { required: ['action', 'projectPath'] } },
448
- merge: { description: 'Merge PR', parameters: { required: ['action', 'projectPath', 'number'] } }
449
+ create: {
450
+ description: 'Criar nova branch',
451
+ required: ['action', 'projectPath', 'name'],
452
+ optional: ['from'],
453
+ example: '{ "action": "create", "projectPath": "/path/to/project", "name": "feature/new-feature" }'
454
+ },
455
+ list: {
456
+ description: 'Listar branches',
457
+ required: ['action', 'projectPath'],
458
+ optional: ['remote'],
459
+ example: '{ "action": "list", "projectPath": "/path/to/project", "remote": true }'
460
+ },
461
+ switch: {
462
+ description: 'Trocar de branch',
463
+ required: ['action', 'projectPath', 'name'],
464
+ optional: ['create'],
465
+ example: '{ "action": "switch", "projectPath": "/path/to/project", "name": "main" }'
466
+ },
467
+ delete: {
468
+ description: 'Remover branch',
469
+ required: ['action', 'projectPath', 'name'],
470
+ optional: ['force'],
471
+ example: '{ "action": "delete", "projectPath": "/path/to/project", "name": "old-branch" }'
472
+ },
473
+ merge: {
474
+ description: 'Merge de branches',
475
+ required: ['action', 'projectPath', 'branch'],
476
+ optional: ['strategy', 'noCommit'],
477
+ example: '{ "action": "merge", "projectPath": "/path/to/project", "branch": "feature/complete", "strategy": "squash" }'
478
+ },
479
+ compare: {
480
+ description: 'Comparar branches',
481
+ required: ['action', 'projectPath', 'base', 'head'],
482
+ optional: ['detailed'],
483
+ example: '{ "action": "compare", "projectPath": "/path/to/project", "base": "main", "head": "feature/new" }'
484
+ }
449
485
  }
450
- },
451
- 'git-analytics': { description: 'Analytics (placeholder)', actions: {} },
452
- 'git-archive': { description: 'Archive operations (placeholder)', actions: {} },
453
- 'git-packages': { description: 'Package management (placeholder)', actions: {} },
454
- 'git-sync': { description: 'Multi-provider sync (placeholder)', actions: {} },
455
- 'git-repos': { description: 'Repository management (placeholder)', actions: {} },
456
- 'git-config': { description: 'Advanced configuration (placeholder)', actions: {} }
486
+ }
487
+ },
488
+ importantNotes: {
489
+ 'universalParameters': 'Todas as ferramentas requerem apenas "action" + "projectPath"',
490
+ 'autoDetection': 'Repo, owner e providers são detectados automaticamente',
491
+ 'errorHandling': 'Todas as ferramentas têm error handling inteligente com sugestões',
492
+ 'multiProvider': 'Suporte automático a Gitea e GitHub quando configurados'
457
493
  }
458
494
  }, null, 2);
459
495
  break;
460
496
  case 'mcp-git://examples':
461
497
  content = JSON.stringify({
462
- title: 'Exemplos Práticos - MCP Git Tools',
463
- version: '4.0.3',
498
+ title: 'EXEMPLOS PRÁTICOS - MCP Git Tools',
499
+ version: '4.0.4',
500
+ description: 'Exemplos reais de uso das ferramentas',
464
501
  workflows: {
465
- 'daily-development': [
466
- { tool: 'git-workflow', action: 'sync', description: 'Atualizar com mudanças do time' },
467
- { tool: 'git-workflow', action: 'status', description: 'Ver status do projeto' },
468
- { tool: 'git-files', action: 'write', description: 'Implementar nova feature' },
469
- { tool: 'git-workflow', action: 'commit', description: 'Commit das mudanças' }
470
- ],
471
- 'feature-development': [
472
- { tool: 'git-branches', action: 'create', description: 'Criar branch da feature' },
473
- { tool: 'git-files', action: 'write', description: 'Desenvolver feature' },
474
- { tool: 'git-issues', action: 'scan', description: 'Verificar TODOs' },
475
- { tool: 'git-workflow', action: 'commit', description: 'Commit progressivo' },
476
- { tool: 'git-branches', action: 'merge', description: 'Merge na main' }
477
- ],
478
- 'release-process': [
479
- { tool: 'git-monitor', action: 'health', description: 'Verificar saúde pré-release' },
480
- { tool: 'git-workflow', action: 'backup', description: 'Backup estratégico' },
481
- { tool: 'git-release', action: 'version', description: 'Bump versão' },
482
- { tool: 'git-release', action: 'create', description: 'Criar release' }
483
- ]
484
- },
485
- realExamples: {
486
- 'create-react-component': {
487
- description: 'Criar componente React com backup automático',
502
+ 'daily-workflow': {
503
+ description: 'Workflow diário de desenvolvimento',
488
504
  steps: [
489
505
  {
506
+ description: 'Sincronizar com mudanças do time',
507
+ tool: 'git-workflow',
508
+ action: 'sync',
509
+ params: { action: 'sync', projectPath: '/path/to/project' }
510
+ },
511
+ {
512
+ description: 'Ver status do projeto',
513
+ tool: 'git-workflow',
514
+ action: 'status',
515
+ params: { action: 'status', projectPath: '/path/to/project', detailed: true }
516
+ },
517
+ {
518
+ description: 'Implementar nova funcionalidade',
490
519
  tool: 'git-files',
491
520
  action: 'write',
492
521
  params: {
493
- projectPath: 'C:\\projetos\\react-app',
494
- filePath: 'src/components/UserProfile.tsx',
495
- content: 'export const UserProfile = () => <div>Profile</div>;'
522
+ action: 'write',
523
+ projectPath: '/path/to/project',
524
+ filePath: 'src/new-feature.ts',
525
+ content: 'export function newFeature() { return "Hello World"; }'
526
+ }
527
+ },
528
+ {
529
+ description: 'Commit das mudanças',
530
+ tool: 'git-workflow',
531
+ action: 'commit',
532
+ params: {
533
+ action: 'commit',
534
+ projectPath: '/path/to/project',
535
+ message: 'feat: Implementar nova funcionalidade\n\n- Adicionar função newFeature\n- Export da função\n- Documentação básica'
496
536
  }
497
537
  }
498
538
  ]
499
539
  },
500
- 'daily-commit': {
501
- description: 'Commit diário das mudanças',
540
+ 'feature-development': {
541
+ description: 'Desenvolvimento completo de uma feature',
502
542
  steps: [
503
543
  {
544
+ description: 'Criar branch da feature',
545
+ tool: 'git-branches',
546
+ action: 'create',
547
+ params: { action: 'create', projectPath: '/path/to/project', name: 'feature/user-auth' }
548
+ },
549
+ {
550
+ description: 'Implementar autenticação',
551
+ tool: 'git-files',
552
+ action: 'write',
553
+ params: {
554
+ action: 'write',
555
+ projectPath: '/path/to/project',
556
+ filePath: 'src/auth/login.ts',
557
+ content: 'export function login(email: string, password: string) { /* auth logic */ }'
558
+ }
559
+ },
560
+ {
561
+ description: 'Verificar TODOs/FIXMEs',
562
+ tool: 'git-issues',
563
+ action: 'scan',
564
+ params: { action: 'scan', projectPath: '/path/to/project', createIssues: true }
565
+ },
566
+ {
567
+ description: 'Commit da implementação',
504
568
  tool: 'git-workflow',
505
569
  action: 'commit',
506
570
  params: {
507
- projectPath: 'C:\\projetos\\api-backend',
508
- message: 'feat: Implementar autenticação JWT\n\n- Middleware de validação\n- Endpoint /auth/login\n- Tests unitários'
571
+ action: 'commit',
572
+ projectPath: '/path/to/project',
573
+ message: 'feat: Implementar sistema de autenticação\n\n- Função login\n- Validação de credenciais\n- Tratamento de erros'
574
+ }
575
+ },
576
+ {
577
+ description: 'Merge na branch principal',
578
+ tool: 'git-branches',
579
+ action: 'merge',
580
+ params: { action: 'merge', projectPath: '/path/to/project', branch: 'feature/user-auth' }
581
+ }
582
+ ]
583
+ },
584
+ 'release-process': {
585
+ description: 'Processo completo de release',
586
+ steps: [
587
+ {
588
+ description: 'Verificar saúde pré-release',
589
+ tool: 'git-monitor',
590
+ action: 'health',
591
+ params: { action: 'health', projectPath: '/path/to/project', deep: true }
592
+ },
593
+ {
594
+ description: 'Criar backup estratégico',
595
+ tool: 'git-workflow',
596
+ action: 'backup',
597
+ params: { action: 'backup', projectPath: '/path/to/project', description: 'Backup pré-release v2.0.0' }
598
+ },
599
+ {
600
+ description: 'Incrementar versão',
601
+ tool: 'git-release',
602
+ action: 'version',
603
+ params: { action: 'version', projectPath: '/path/to/project', type: 'minor' }
604
+ },
605
+ {
606
+ description: 'Criar release completo',
607
+ tool: 'git-release',
608
+ action: 'create',
609
+ params: {
610
+ action: 'create',
611
+ projectPath: '/path/to/project',
612
+ changelog: true,
613
+ notes: 'Release v2.0.0 com novas funcionalidades',
614
+ assets: ['dist/bundle.js', 'dist/styles.css']
509
615
  }
510
616
  }
511
617
  ]
512
618
  }
513
- }
514
- }, null, 2);
515
- break;
516
- case 'mcp-git://prompts':
517
- content = JSON.stringify({
518
- title: 'Templates de Prompts - MCP Git Tools',
519
- version: '4.0.3',
520
- prompts: {
521
- 'development-workflow': {
522
- description: 'Prompt para workflow de desenvolvimento completo',
523
- template: 'Execute um workflow completo de desenvolvimento: 1) Sincronize com o repositório usando git-workflow sync, 2) Verifique o status usando git-workflow status, 3) Implemente as mudanças solicitadas, 4) Faça commit usando git-workflow commit com mensagem descritiva, 5) Monitore a saúde do projeto com git-monitor health'
619
+ },
620
+ commonUseCases: {
621
+ 'create-component': {
622
+ description: 'Criar novo componente React',
623
+ example: {
624
+ tool: 'git-files',
625
+ action: 'write',
626
+ params: {
627
+ action: 'write',
628
+ projectPath: 'C:\\projetos\\react-app',
629
+ filePath: 'src/components/UserProfile.tsx',
630
+ content: 'import React from \'react\';\n\nexport const UserProfile: React.FC = () => {\n return (\n <div className="user-profile">\n <h2>User Profile</h2>\n </div>\n );\n};'
631
+ }
632
+ }
524
633
  },
525
- 'code-review': {
526
- description: 'Prompt para análise de código antes de commit',
527
- template: 'Antes de fazer commit, execute: 1) git-monitor health para verificar a saúde do projeto, 2) git-issues scan para detectar TODOs/FIXMEs não resolvidos, 3) git-files search para verificar se há código relacionado que precisa ser atualizado, 4) git-workflow status para confirmar que tudo está correto'
634
+ 'daily-commit': {
635
+ description: 'Commit diário das mudanças',
636
+ example: {
637
+ tool: 'git-workflow',
638
+ action: 'commit',
639
+ params: {
640
+ action: 'commit',
641
+ projectPath: 'C:\\projetos\\api-backend',
642
+ message: 'feat: Implementar autenticação JWT\n\n- Middleware de validação de tokens\n- Endpoint POST /auth/login\n- Endpoint POST /auth/refresh\n- Tests unitários para auth\n- Documentação da API'
643
+ }
644
+ }
528
645
  },
529
- 'feature-branch': {
530
- description: 'Prompt para desenvolvimento de features',
531
- template: 'Para implementar uma nova feature: 1) Crie uma branch usando git-branches create, 2) Desenvolva a feature usando git-files write/update, 3) Faça commits progressivos com git-workflow commit, 4) Use git-issues scan para verificar TODOs, 5) Faça merge usando git-branches merge, 6) Limpe a branch com git-branches delete'
646
+ 'backup-before-changes': {
647
+ description: 'Backup antes de mudanças arriscadas',
648
+ example: {
649
+ tool: 'git-workflow',
650
+ action: 'backup',
651
+ params: {
652
+ action: 'backup',
653
+ projectPath: 'C:\\projetos\\critical-app',
654
+ description: 'Backup antes de refatoração da arquitetura principal'
655
+ }
656
+ }
532
657
  },
533
- 'troubleshooting': {
534
- description: 'Prompt para diagnóstico de problemas',
535
- template: 'Para diagnosticar problemas: 1) git-workflow status para overview geral, 2) git-monitor health com deep=true para análise profunda, 3) git-monitor activity para ver atividade recente, 4) git-backup create para backup antes de mudanças, 5) git-reset mixed se necessário para reverter mudanças problemáticas'
536
- }
537
- }
538
- }, null, 2);
539
- break;
540
- case 'mcp-git://configuration':
541
- content = JSON.stringify({
542
- title: 'Configuração e Setup - MCP Git Tools',
543
- version: '4.0.3',
544
- required: {
545
- 'GITEA_USERNAME': 'Nome de usuário no Gitea',
546
- 'GITEA_TOKEN': 'Token de acesso do Gitea',
547
- 'GITEA_URL': 'URL base do servidor Gitea'
548
- },
549
- optional: {
550
- 'GITHUB_USERNAME': 'Nome de usuário no GitHub (opcional)',
551
- 'GITHUB_TOKEN': 'Token do GitHub (opcional)',
552
- 'DEMO_MODE': 'Modo demo para testes (true/false)',
553
- 'LOG_LEVEL': 'Nível de log (debug/info/warn/error)'
554
- },
555
- examples: {
556
- 'minimal-gitea': {
557
- 'GITEA_USERNAME': 'developer',
558
- 'GITEA_TOKEN': 'your_gitea_token_here',
559
- 'GITEA_URL': 'https://gitea.company.com'
658
+ 'search-code': {
659
+ description: 'Buscar funções específicas no código',
660
+ example: {
661
+ tool: 'git-files',
662
+ action: 'search',
663
+ params: {
664
+ action: 'search',
665
+ projectPath: 'C:\\projetos\\large-app',
666
+ query: 'function.*validate.*email|const.*emailRegex',
667
+ caseSensitive: false
668
+ }
669
+ }
560
670
  },
561
- 'dual-provider': {
562
- 'GITEA_USERNAME': 'developer',
563
- 'GITEA_TOKEN': 'your_gitea_token_here',
564
- 'GITEA_URL': 'https://gitea.company.com',
565
- 'GITHUB_USERNAME': 'developer',
566
- 'GITHUB_TOKEN': 'your_github_token_here'
671
+ 'health-check': {
672
+ description: 'Verificar saúde do projeto',
673
+ example: {
674
+ tool: 'git-monitor',
675
+ action: 'health',
676
+ params: {
677
+ action: 'health',
678
+ projectPath: 'C:\\projetos\\my-project',
679
+ deep: true,
680
+ suggestions: true
681
+ }
682
+ }
683
+ },
684
+ 'feature-branch-workflow': {
685
+ description: 'Workflow completo com feature branch',
686
+ steps: [
687
+ { tool: 'git-branches', action: 'create', params: { action: 'create', projectPath: '/project', name: 'feature/new-ui' } },
688
+ { tool: 'git-files', action: 'write', params: { action: 'write', projectPath: '/project', filePath: 'src/ui/new-component.tsx', content: '...' } },
689
+ { tool: 'git-workflow', action: 'commit', params: { action: 'commit', projectPath: '/project', message: 'feat: New UI component' } },
690
+ { tool: 'git-branches', action: 'merge', params: { action: 'merge', projectPath: '/project', branch: 'feature/new-ui' } },
691
+ { tool: 'git-branches', action: 'delete', params: { action: 'delete', projectPath: '/project', name: 'feature/new-ui' } }
692
+ ]
567
693
  }
568
- },
569
- validation: {
570
- 'token-format': 'Tokens devem ser válidos e ter permissões adequadas',
571
- 'url-format': 'URLs devem incluir protocolo (https://)',
572
- 'permissions': 'Tokens precisam de acesso read/write aos repositórios'
573
- }
574
- }, null, 2);
575
- break;
576
- case 'mcp-git://architecture':
577
- content = JSON.stringify({
578
- title: 'Arquitetura e Design - MCP Git Tools',
579
- version: '4.0.3',
580
- principles: {
581
- 'ai-first': 'Interface otimizada para agentes de IA',
582
- 'zero-config': 'Auto-detecção máxima de contexto',
583
- 'universal-response': 'Formato de resposta consistente',
584
- 'intelligent-recovery': 'Sugestões automáticas de correção',
585
- 'multi-provider': 'Suporte simultâneo a múltiplos VCS'
586
- },
587
- architecture: {
588
- 'core-unified': '6 ferramentas essenciais (workflow, files, release, monitor, backup, branches)',
589
- 'advanced': '6 ferramentas avançadas (remote, stash, reset, tags, issues, pulls)',
590
- 'specialized': '6 ferramentas específicas (analytics, archive, packages, sync, repos, config)',
591
- 'auto-detection': 'Sistema de descoberta automática de repo/owner/providers',
592
- 'error-handler': 'Sistema unificado de tratamento de erros'
593
- },
594
- designDecisions: {
595
- 'single-responsibility': 'Cada tool tem responsabilidade clara',
596
- 'consistent-interface': 'Todas as tools seguem mesmo padrão de chamada',
597
- 'progressive-complexity': 'Da mais simples (core) para mais complexas (specialized)',
598
- 'fallback-support': 'Funciona mesmo com configuração mínima',
599
- 'extensible': 'Fácil adicionar novas ferramentas e providers'
600
694
  }
601
695
  }, null, 2);
602
696
  break;
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":";;;AAAA,wEAAmE;AACnE,wEAAiF;AACjF,iEAA0J;AAC1J,2CAAqC;AACrC,mDAAuF;AAEvF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,gDAAgD;AAChD,6DAA0D,CAAK,qBAAqB;AACpF,uDAAoD,CAAW,oCAAoC;AACnG,2DAAwD,CAAO,kCAAkC;AACjG,2DAAwD,CAAO,yBAAyB;AACxF,yDAAsD,CAAS,gCAAgC;AAC/F,6DAA0D,CAAK,4BAA4B;AAE3F,2CAA2C;AAC3C,yDAAsD,CAAS,2BAA2B;AAC1F,uDAAoD,CAAW,qBAAqB;AACpF,uDAAoD,CAAW,eAAe;AAC9E,qDAAkD,CAAa,wBAAwB;AACvF,yDAAsD,CAAS,oBAAoB;AACnF,uDAAoD,CAAW,gBAAgB;AAE/E,mDAAmD;AACnD,+DAA4D,CAAG,yBAAyB;AACxF,2DAAwD,CAAO,uBAAuB;AACtF,6DAA0D,CAAK,2BAA2B;AAC1F,qDAAkD,CAAa,+BAA+B;AAC9F,uDAAoD,CAAW,gCAAgC;AAC/F,yDAAsD,CAAS,0BAA0B;AAEzF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,KAAK,GAAG;IACZ,0EAA0E;IAC1E,iCAAe,EAAO,0DAA0D;IAChF,2BAAY,EAAU,gFAAgF;IACtG,+BAAc,EAAQ,gFAAgF;IACtG,+BAAc,EAAQ,sEAAsE;IAC5F,6BAAa,EAAS,sEAAsE;IAC5F,iCAAe,EAAO,sCAAsC;IAE5D,uEAAuE;IACvE,6BAAa,EAAS,2BAA2B;IACjD,2BAAY,EAAU,qBAAqB;IAC3C,2BAAY,EAAU,eAAe;IACrC,yBAAW,EAAW,wBAAwB;IAC9C,6BAAa,EAAS,oBAAoB;IAC1C,2BAAY,EAAU,gBAAgB;IAEtC,iFAAiF;IACjF,mCAAgB,EAAM,yBAAyB;IAC/C,+BAAc,EAAQ,uBAAuB;IAC7C,iCAAe,EAAO,2BAA2B;IACjD,yBAAW,EAAW,+BAA+B;IACrD,2BAAY,EAAU,gCAAgC;IACtD,6BAAa,CAAS,0BAA0B;CACjD,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,SAAS,GAAG;IAChB;QACE,GAAG,EAAE,2BAA2B;QAChC,IAAI,EAAE,2CAA2C;QACjD,WAAW,EAAE,sHAAsH;QACnI,QAAQ,EAAE,kBAAkB;KAC7B;IACD;QACE,GAAG,EAAE,oBAAoB;QACzB,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,gFAAgF;QAC7F,QAAQ,EAAE,kBAAkB;KAC7B;IACD;QACE,GAAG,EAAE,mBAAmB;QACxB,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,sFAAsF;QACnG,QAAQ,EAAE,kBAAkB;KAC7B;IACD;QACE,GAAG,EAAE,yBAAyB;QAC9B,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,0FAA0F;QACvG,QAAQ,EAAE,kBAAkB;KAC7B;IACD;QACE,GAAG,EAAE,wBAAwB;QAC7B,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,kFAAkF;QAC/F,QAAQ,EAAE,kBAAkB;KAC7B;CACF,CAAC;AAEF;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAa,cAAc;IACjB,MAAM,CAAS;IAEvB;QACE,IAAI,CAAC,MAAM,GAAG,IAAI,iBAAM,CACpB;YACE,IAAI,EAAE,SAAS;YACf,OAAO,EAAE,QAAQ;SAClB,CACJ,CAAC;QAEF,IAAI,CAAC,aAAa,EAAE,CAAC;IACvB,CAAC;IAED;;;;;;;;;;;;;;;;;OAiBG;IACK,aAAa;QACnB,wCAAwC;QACxC,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,iCAAsB,EAAE,KAAK,IAAI,EAAE;YAC/D,OAAO;gBACL,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;oBACxB,IAAI,EAAE,IAAI,CAAC,IAAI;oBACf,WAAW,EAAE,IAAI,CAAC,WAAW;oBAC7B,WAAW,EAAE,IAAI,CAAC,WAAW;iBAC9B,CAAC,CAAC;aACJ,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,0CAA0C;QAC1C,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,gCAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACrE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;YAEjD,0BAA0B;YAC1B,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;YAC9C,IAAI,CAAC,IAAI,EAAE,CAAC;gBACV,MAAM,IAAI,KAAK,CAAC,SAAS,IAAI,aAAa,CAAC,CAAC;YAC9C,CAAC;YAED,IAAI,CAAC;gBACH,4BAA4B;gBAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,IAAW,IAAI,EAAE,CAAC,CAAC;gBAErD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;yBACtC;qBACF;iBACF,CAAC;YACJ,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBAE5E,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;gCACnB,OAAO,EAAE,KAAK;gCACd,MAAM,EAAE,IAAI;gCACZ,OAAO,EAAE,0BAA0B;gCACnC,KAAK,EAAE,YAAY;6BACpB,EAAE,IAAI,EAAE,CAAC,CAAC;yBACZ;qBACF;oBACD,OAAO,EAAE,IAAI;iBACd,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;QAEH,4CAA4C;QAC5C,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,qCAA0B,EAAE,KAAK,IAAI,EAAE;YACnE,OAAO;gBACL,SAAS,EAAE,SAAS;aACrB,CAAC;QACJ,CAAC,CAAC,CAAC;QAEH,qDAAqD;QACrD,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,oCAAyB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACzE,MAAM,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;YAE/B,IAAI,OAAO,GAAG,EAAE,CAAC;YAEjB,QAAQ,GAAG,EAAE,CAAC;gBACZ,KAAK,2BAA2B;oBAC9B,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;wBACvB,KAAK,EAAE,qCAAqC;wBAC5C,OAAO,EAAE,OAAO;wBAChB,UAAU,EAAE,EAAE;wBACd,YAAY,EAAE;4BACZ,WAAW,EAAE,CAAC;4BACd,QAAQ,EAAE,CAAC;4BACX,WAAW,EAAE,CAAC;yBACf;wBACD,KAAK,EAAE;4BACL,cAAc,EAAE;gCACd,WAAW,EAAE,6BAA6B;gCAC1C,OAAO,EAAE;oCACP,IAAI,EAAE;wCACJ,WAAW,EAAE,mCAAmC;wCAChD,UAAU,EAAE;4CACV,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC;4CACnC,QAAQ,EAAE,CAAC,SAAS,CAAC;yCACtB;wCACD,OAAO,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,OAAO,EAAE,gBAAgB,EAAE;qCACxF;oCACD,MAAM,EAAE;wCACN,WAAW,EAAE,4BAA4B;wCACzC,UAAU,EAAE;4CACV,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,CAAC;4CAC9C,QAAQ,EAAE,EAAE;yCACb;wCACD,OAAO,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,kBAAkB,EAAE,OAAO,EAAE,mBAAmB,EAAE;qCAC7F;oCACD,IAAI,EAAE;wCACJ,WAAW,EAAE,wBAAwB;wCACrC,UAAU,EAAE;4CACV,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC;4CACnC,QAAQ,EAAE,CAAC,SAAS,CAAC;yCACtB;qCACF;oCACD,MAAM,EAAE;wCACN,WAAW,EAAE,4BAA4B;wCACzC,UAAU,EAAE;4CACV,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC;4CACnC,QAAQ,EAAE,CAAC,UAAU,CAAC;yCACvB;qCACF;oCACD,MAAM,EAAE;wCACN,WAAW,EAAE,iBAAiB;wCAC9B,UAAU,EAAE;4CACV,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC;4CACnC,QAAQ,EAAE,CAAC,aAAa,CAAC;yCAC1B;qCACF;iCACF;6BACF;4BACD,WAAW,EAAE;gCACX,WAAW,EAAE,uCAAuC;gCACpD,OAAO,EAAE;oCACP,IAAI,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,EAAE;oCACrG,KAAK,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,EAAE;oCACtH,MAAM,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,eAAe,CAAC,EAAE,EAAE;oCAC9I,MAAM,EAAE,EAAE,WAAW,EAAE,mBAAmB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,EAAE;oCACxH,cAAc,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE;iCAChI;6BACF;4BACD,aAAa,EAAE;gCACb,WAAW,EAAE,iCAAiC;gCAC9C,OAAO,EAAE;oCACP,MAAM,EAAE,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,WAAW,CAAC,EAAE,EAAE;oCACjI,OAAO,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE;oCAChH,OAAO,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE;oCACjG,OAAO,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE;oCAC/G,QAAQ,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE;iCAC3F;6BACF;4BACD,aAAa,EAAE;gCACb,WAAW,EAAE,wBAAwB;gCACrC,OAAO,EAAE;oCACP,MAAM,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,gBAAgB,CAAC,EAAE,EAAE;oCAC9H,OAAO,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,EAAE;oCACxH,OAAO,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE;oCAC/G,MAAM,EAAE,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE;oCACjH,QAAQ,EAAE,EAAE,WAAW,EAAE,mBAAmB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE;iCACzH;6BACF;4BACD,YAAY,EAAE;gCACZ,WAAW,EAAE,+BAA+B;gCAC5C,OAAO,EAAE;oCACP,MAAM,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE;oCACxH,OAAO,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE;oCAC7H,IAAI,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE;oCAClH,IAAI,EAAE,EAAE,WAAW,EAAE,mBAAmB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE;oCACtH,MAAM,EAAE,EAAE,WAAW,EAAE,uBAAuB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,UAAU,CAAC,EAAE,EAAE;iCAClH;6BACF;4BACD,cAAc,EAAE;gCACd,WAAW,EAAE,2BAA2B;gCACxC,OAAO,EAAE;oCACP,MAAM,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE;oCACxH,IAAI,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE;oCACnH,MAAM,EAAE,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE;oCAC3H,MAAM,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE;oCAC3H,KAAK,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE;oCACtH,OAAO,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE;iCAC1G;6BACF;4BACD,YAAY,EAAE;gCACZ,WAAW,EAAE,0BAA0B;gCACvC,OAAO,EAAE;oCACP,GAAG,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE;oCACpI,MAAM,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,EAAE;oCACtG,MAAM,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,CAAC,EAAE,EAAE;oCACrH,IAAI,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE;oCAClH,SAAS,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE;oCAC7G,KAAK,EAAE,EAAE,WAAW,EAAE,oBAAoB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE;iCAClG;6BACF;4BACD,WAAW,EAAE;gCACX,WAAW,EAAE,oBAAoB;gCACjC,OAAO,EAAE;oCACP,IAAI,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,kBAAkB,CAAC,EAAE,EAAE;oCAC/H,GAAG,EAAE,EAAE,WAAW,EAAE,mBAAmB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE;oCACnH,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,EAAE;oCAC3G,IAAI,EAAE,EAAE,WAAW,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,UAAU,CAAC,EAAE,EAAE;oCAC5G,IAAI,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,EAAE;oCACvG,IAAI,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,EAAE;oCAC9F,KAAK,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE;iCACnH;6BACF;4BACD,WAAW,EAAE;gCACX,WAAW,EAAE,cAAc;gCAC3B,OAAO,EAAE;oCACP,IAAI,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,EAAE;oCAClG,KAAK,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,EAAE;oCACpG,IAAI,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE;oCACzH,iBAAiB,EAAE,EAAE,WAAW,EAAE,kBAAkB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE;oCACzI,cAAc,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE;iCACrI;6BACF;4BACD,UAAU,EAAE;gCACV,WAAW,EAAE,uBAAuB;gCACpC,OAAO,EAAE;oCACP,MAAM,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE;oCAC1I,IAAI,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,EAAE;oCACxH,GAAG,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,EAAE;oCACjG,MAAM,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,MAAM,CAAC,EAAE,QAAQ,EAAE,CAAC,QAAQ,CAAC,EAAE,EAAE;oCACzH,MAAM,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,EAAE;iCAC5H;6BACF;4BACD,YAAY,EAAE;gCACZ,WAAW,EAAE,yBAAyB;gCACtC,OAAO,EAAE;oCACP,MAAM,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,EAAE,QAAQ,EAAE,CAAC,aAAa,EAAE,QAAQ,EAAE,UAAU,CAAC,EAAE,EAAE;oCACrJ,IAAI,EAAE,EAAE,WAAW,EAAE,eAAe,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE;oCACjI,GAAG,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE,EAAE;oCACjG,MAAM,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,EAAE;oCACpI,KAAK,EAAE,EAAE,WAAW,EAAE,cAAc,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,IAAI,CAAC,EAAE,QAAQ,EAAE,CAAC,SAAS,CAAC,EAAE,EAAE;oCACxH,IAAI,EAAE,EAAE,WAAW,EAAE,qBAAqB,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,CAAC,cAAc,EAAE,UAAU,CAAC,EAAE,EAAE;iCAC1I;6BACF;4BACD,WAAW,EAAE;gCACX,WAAW,EAAE,sBAAsB;gCACnC,OAAO,EAAE;oCACP,MAAM,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE;oCACjH,IAAI,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,EAAE;oCACxF,KAAK,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,QAAQ,EAAE,aAAa,EAAE,QAAQ,CAAC,EAAE,EAAE;iCAClG;6BACF;4BACD,eAAe,EAAE,EAAE,WAAW,EAAE,yBAAyB,EAAE,OAAO,EAAE,EAAE,EAAE;4BACxE,aAAa,EAAE,EAAE,WAAW,EAAE,kCAAkC,EAAE,OAAO,EAAE,EAAE,EAAE;4BAC/E,cAAc,EAAE,EAAE,WAAW,EAAE,kCAAkC,EAAE,OAAO,EAAE,EAAE,EAAE;4BAChF,UAAU,EAAE,EAAE,WAAW,EAAE,mCAAmC,EAAE,OAAO,EAAE,EAAE,EAAE;4BAC7E,WAAW,EAAE,EAAE,WAAW,EAAE,qCAAqC,EAAE,OAAO,EAAE,EAAE,EAAE;4BAChF,YAAY,EAAE,EAAE,WAAW,EAAE,sCAAsC,EAAE,OAAO,EAAE,EAAE,EAAE;yBACnF;qBACF,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;oBACZ,MAAM;gBAER,KAAK,oBAAoB;oBACvB,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;wBACvB,KAAK,EAAE,mCAAmC;wBAC1C,OAAO,EAAE,OAAO;wBAChB,SAAS,EAAE;4BACT,mBAAmB,EAAE;gCACnB,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,gCAAgC,EAAE;gCACvF,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,uBAAuB,EAAE;gCAChF,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAE;gCAC/E,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,qBAAqB,EAAE;6BAC/E;4BACD,qBAAqB,EAAE;gCACrB,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,yBAAyB,EAAE;gCAClF,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,qBAAqB,EAAE;gCAC1E,EAAE,IAAI,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,iBAAiB,EAAE;gCACtE,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;gCAC7E,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE;6BACxE;4BACD,iBAAiB,EAAE;gCACjB,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,6BAA6B,EAAE;gCACrF,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,oBAAoB,EAAE;gCAC7E,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE;gCACtE,EAAE,IAAI,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE;6BACxE;yBACF;wBACD,YAAY,EAAE;4BACZ,wBAAwB,EAAE;gCACxB,WAAW,EAAE,8CAA8C;gCAC3D,KAAK,EAAE;oCACL;wCACE,IAAI,EAAE,WAAW;wCACjB,MAAM,EAAE,OAAO;wCACf,MAAM,EAAE;4CACN,WAAW,EAAE,yBAAyB;4CACtC,QAAQ,EAAE,gCAAgC;4CAC1C,OAAO,EAAE,sDAAsD;yCAChE;qCACF;iCACF;6BACF;4BACD,cAAc,EAAE;gCACd,WAAW,EAAE,4BAA4B;gCACzC,KAAK,EAAE;oCACL;wCACE,IAAI,EAAE,cAAc;wCACpB,MAAM,EAAE,QAAQ;wCAChB,MAAM,EAAE;4CACN,WAAW,EAAE,2BAA2B;4CACxC,OAAO,EAAE,4GAA4G;yCACtH;qCACF;iCACF;6BACF;yBACF;qBACF,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;oBACZ,MAAM;gBAER,KAAK,mBAAmB;oBACtB,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;wBACvB,KAAK,EAAE,sCAAsC;wBAC7C,OAAO,EAAE,OAAO;wBAChB,OAAO,EAAE;4BACP,sBAAsB,EAAE;gCACtB,WAAW,EAAE,kDAAkD;gCAC/D,QAAQ,EAAE,8TAA8T;6BACzU;4BACD,aAAa,EAAE;gCACb,WAAW,EAAE,+CAA+C;gCAC5D,QAAQ,EAAE,4SAA4S;6BACvT;4BACD,gBAAgB,EAAE;gCAChB,WAAW,EAAE,yCAAyC;gCACtD,QAAQ,EAAE,gUAAgU;6BAC3U;4BACD,iBAAiB,EAAE;gCACjB,WAAW,EAAE,sCAAsC;gCACnD,QAAQ,EAAE,mTAAmT;6BAC9T;yBACF;qBACF,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;oBACZ,MAAM;gBAER,KAAK,yBAAyB;oBAC5B,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;wBACvB,KAAK,EAAE,sCAAsC;wBAC7C,OAAO,EAAE,OAAO;wBAChB,QAAQ,EAAE;4BACR,gBAAgB,EAAE,0BAA0B;4BAC5C,aAAa,EAAE,0BAA0B;4BACzC,WAAW,EAAE,4BAA4B;yBAC1C;wBACD,QAAQ,EAAE;4BACR,iBAAiB,EAAE,sCAAsC;4BACzD,cAAc,EAAE,4BAA4B;4BAC5C,WAAW,EAAE,oCAAoC;4BACjD,WAAW,EAAE,sCAAsC;yBACpD;wBACD,QAAQ,EAAE;4BACR,eAAe,EAAE;gCACf,gBAAgB,EAAE,WAAW;gCAC7B,aAAa,EAAE,uBAAuB;gCACtC,WAAW,EAAE,2BAA2B;6BACzC;4BACD,eAAe,EAAE;gCACf,gBAAgB,EAAE,WAAW;gCAC7B,aAAa,EAAE,uBAAuB;gCACtC,WAAW,EAAE,2BAA2B;gCACxC,iBAAiB,EAAE,WAAW;gCAC9B,cAAc,EAAE,wBAAwB;6BACzC;yBACF;wBACD,UAAU,EAAE;4BACV,cAAc,EAAE,qDAAqD;4BACrE,YAAY,EAAE,yCAAyC;4BACvD,aAAa,EAAE,uDAAuD;yBACvE;qBACF,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;oBACZ,MAAM;gBAER,KAAK,wBAAwB;oBAC3B,OAAO,GAAG,IAAI,CAAC,SAAS,CAAC;wBACvB,KAAK,EAAE,sCAAsC;wBAC7C,OAAO,EAAE,OAAO;wBAChB,UAAU,EAAE;4BACV,UAAU,EAAE,wCAAwC;4BACpD,aAAa,EAAE,kCAAkC;4BACjD,oBAAoB,EAAE,iCAAiC;4BACvD,sBAAsB,EAAE,mCAAmC;4BAC3D,gBAAgB,EAAE,oCAAoC;yBACvD;wBACD,YAAY,EAAE;4BACZ,cAAc,EAAE,gFAAgF;4BAChG,UAAU,EAAE,qEAAqE;4BACjF,aAAa,EAAE,+EAA+E;4BAC9F,gBAAgB,EAAE,0DAA0D;4BAC5E,eAAe,EAAE,0CAA0C;yBAC5D;wBACD,eAAe,EAAE;4BACf,uBAAuB,EAAE,sCAAsC;4BAC/D,sBAAsB,EAAE,+CAA+C;4BACvE,wBAAwB,EAAE,0DAA0D;4BACpF,kBAAkB,EAAE,wCAAwC;4BAC5D,YAAY,EAAE,+CAA+C;yBAC9D;qBACF,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;oBACZ,MAAM;gBAER;oBACE,MAAM,IAAI,KAAK,CAAC,uBAAuB,GAAG,EAAE,CAAC,CAAC;YAClD,CAAC;YAED,OAAO;gBACL,QAAQ,EAAE;oBACR;wBACE,GAAG,EAAE,GAAG;wBACR,QAAQ,EAAE,kBAAkB;wBAC5B,IAAI,EAAE,OAAO;qBACd;iBACF;aACF,CAAC;QACJ,CAAC,CAAC,CAAC;IACL,CAAC;IAED;;;;;;;;;;;;;;;;;;OAkBG;IACH,KAAK,CAAC,GAAG;QACP,MAAM,GAAG,GAAG,kBAAM,CAAC,SAAS,EAAE,CAAC;QAE/B,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,mEAAmE;QACrE,CAAC;QAED,gDAAgD;QAChD,IAAI,CAAC;YACH,6DAA6D;YAC7D,MAAM,OAAO,GAAG,IAAA,mCAAwB,GAAE,CAAC;YAE3C,2CAA2C;YAC3C,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;gBACjD,mDAAmD;gBACnD,+BAA+B;gBAC/B,+EAA+E;gBAC/E,MAAM;YACR,CAAC;YAAC,OAAO,SAAS,EAAE,CAAC;gBACnB,uFAAuF;YACzF,CAAC;YAED,uDAAuD;YACvD,MAAM,CAAC,MAAM,CAAC,gCAAqB,EAAE,OAAO,CAAC,CAAC;YAE9C,qEAAqE;QACvE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,KAAK,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;YAEhE,4DAA4D;YAC5D,IAAI,CAAC;gBACH,+DAA+D;gBAE/D,6CAA6C;gBAC7C,MAAM,cAAc,GAAG;oBACrB,IAAI,EAAE,iBAAiB;oBACvB,IAAI,EAAE,QAAiB;oBACvB,MAAM,EAAE,wBAAwB;oBAChC,OAAO,EAAE,oBAAoB;oBAC7B,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,aAAa;oBAChD,QAAQ,EAAE,OAAO,CAAC,GAAG,CAAC,eAAe;iBACtC,CAAC;gBAEF,MAAM,gBAAgB,GAAG,gCAAqB,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;gBAC9E,gCAAqB,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;gBAE5D,gEAAgE;YAClE,CAAC;YAAC,OAAO,aAAa,EAAE,CAAC;gBACvB,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,aAAa,CAAC,CAAC;gBAC3E,4DAA4D;YAC9D,CAAC;QACH,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,+BAAoB,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAErC,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YACd,6BAA6B;QAC/B,CAAC;IACH,CAAC;IAED;;;;;;;;;;;;OAYG;IACH,KAAK,CAAC,KAAK;QACT,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;CACF;AAxhBD,wCAwhBC;AAED;;;;;;;;;;;;;;;;;GAiBG;AAEH,+CAA+C;AAC/C,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;IAC9B,uBAAuB;IACvB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,gDAAgD;AAChD,OAAO,CAAC,EAAE,CAAC,oBAAoB,EAAE,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE;IACnD,OAAO,CAAC,KAAK,CAAC,yBAAyB,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACrE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC;AAEH,qCAAqC;AACrC,OAAO,CAAC,EAAE,CAAC,mBAAmB,EAAE,CAAC,KAAK,EAAE,EAAE;IACxC,OAAO,CAAC,KAAK,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;IAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@andrebuzeli/git-mcp",
3
- "version": "4.0.4",
4
- "description": "MCP server for Gitea and GitHub integration - MCP COMPLETE: 18 ferramentas + 5 resources (tools-reference, examples, prompts, configuration, architecture) - UNIFICADO para AI agents com auto-detecção universal, error handling inteligente e workflow completo - ZERO CONFIGURAÇÃO, FULL MCP COMPLIANT",
3
+ "version": "4.0.5",
4
+ "description": "MCP server for Gitea and GitHub integration - MCP COMPLETE: 18 ferramentas + 2 resources (instructions, examples) - UNIFICADO para AI agents com auto-detecção universal, error handling inteligente e workflow completo - ZERO CONFIGURAÇÃO, FULL MCP COMPLIANT",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
7
7
  "git-mcp": "dist/index.js"
@@ -13,7 +13,7 @@
13
13
  "test": "node tests/basic.test.js",
14
14
  "lint": "echo \"No linting configured\" && exit 0",
15
15
  "prepublishOnly": "npm run build",
16
- "postpublish": "echo 'Git MCP v4.0.4 published successfully - MCP COMPLETE: 18 ferramentas + 5 MCP resources (tools-reference, examples, prompts, configuration, architecture) - SERVIDOR MCP FULLY COMPLIANT com tools, prompts e resources - UNIFICADO para AI agents com auto-detecção universal e error handling inteligente - ZERO CONFIGURAÇÃO!'"
16
+ "postpublish": "echo 'Git MCP v4.0.5 published successfully - MCP COMPLETE: 18 ferramentas + 2 MCP resources (instructions, examples) - SERVIDOR MCP FULLY COMPLIANT com tools e resources - CORREÇÃO: apenas 2 resources conforme solicitado - ZERO CONFIGURAÇÃO!'"
17
17
 
18
18
  },
19
19
  "keywords": [