@andrebuzeli/git-mcp 2.27.3 → 2.28.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 (112) hide show
  1. package/dist/client.d.ts +306 -306
  2. package/dist/client.js +298 -298
  3. package/dist/config.d.ts +310 -310
  4. package/dist/config.js +392 -392
  5. package/dist/index.d.ts +22 -22
  6. package/dist/index.js +89 -89
  7. package/dist/providers/base-provider.d.ts +160 -156
  8. package/dist/providers/base-provider.d.ts.map +1 -1
  9. package/dist/providers/base-provider.js +274 -260
  10. package/dist/providers/base-provider.js.map +1 -1
  11. package/dist/providers/error-handler.d.ts +50 -50
  12. package/dist/providers/error-handler.js +175 -175
  13. package/dist/providers/gitea-provider.d.ts +97 -97
  14. package/dist/providers/gitea-provider.js +1001 -1001
  15. package/dist/providers/github-provider.d.ts +104 -104
  16. package/dist/providers/github-provider.js +1234 -1234
  17. package/dist/providers/index.d.ts +12 -12
  18. package/dist/providers/index.js +40 -40
  19. package/dist/providers/provider-factory.d.ts +74 -74
  20. package/dist/providers/provider-factory.js +311 -311
  21. package/dist/providers/types.d.ts +318 -298
  22. package/dist/providers/types.d.ts.map +1 -1
  23. package/dist/providers/types.js +6 -6
  24. package/dist/server.d.ts +76 -76
  25. package/dist/server.d.ts.map +1 -1
  26. package/dist/server.js +306 -357
  27. package/dist/server.js.map +1 -1
  28. package/dist/tools/gh-actions.d.ts +252 -252
  29. package/dist/tools/gh-actions.js +389 -389
  30. package/dist/tools/gh-analytics.d.ts +263 -263
  31. package/dist/tools/gh-analytics.js +401 -401
  32. package/dist/tools/gh-code-review.d.ts +304 -304
  33. package/dist/tools/gh-code-review.js +512 -512
  34. package/dist/tools/gh-codespaces.d.ts +138 -138
  35. package/dist/tools/gh-codespaces.js +282 -282
  36. package/dist/tools/gh-deployments.d.ts +300 -300
  37. package/dist/tools/gh-deployments.js +367 -367
  38. package/dist/tools/gh-gists.d.ts +174 -174
  39. package/dist/tools/gh-gists.js +321 -321
  40. package/dist/tools/gh-projects.d.ts +205 -205
  41. package/dist/tools/gh-projects.js +358 -358
  42. package/dist/tools/gh-security.d.ts +274 -274
  43. package/dist/tools/gh-security.js +395 -395
  44. package/dist/tools/gh-sync.d.ts +213 -213
  45. package/dist/tools/gh-sync.js +378 -378
  46. package/dist/tools/gh-workflows.d.ts +290 -290
  47. package/dist/tools/gh-workflows.js +432 -432
  48. package/dist/tools/git-archive.d.ts +165 -165
  49. package/dist/tools/git-archive.js +233 -233
  50. package/dist/tools/git-branches.d.ts +430 -430
  51. package/dist/tools/git-branches.d.ts.map +1 -1
  52. package/dist/tools/git-branches.js +627 -530
  53. package/dist/tools/git-branches.js.map +1 -1
  54. package/dist/tools/git-bundle.d.ts +171 -171
  55. package/dist/tools/git-bundle.js +241 -241
  56. package/dist/tools/git-cherry-pick.d.ts +158 -158
  57. package/dist/tools/git-cherry-pick.js +224 -224
  58. package/dist/tools/git-commits.d.ts +485 -485
  59. package/dist/tools/git-commits.d.ts.map +1 -1
  60. package/dist/tools/git-commits.js +735 -625
  61. package/dist/tools/git-commits.js.map +1 -1
  62. package/dist/tools/git-config.d.ts +140 -140
  63. package/dist/tools/git-config.js +268 -268
  64. package/dist/tools/git-files.d.ts +486 -486
  65. package/dist/tools/git-files.js +607 -607
  66. package/dist/tools/git-issues.d.ts +571 -571
  67. package/dist/tools/git-issues.d.ts.map +1 -1
  68. package/dist/tools/git-issues.js +740 -693
  69. package/dist/tools/git-issues.js.map +1 -1
  70. package/dist/tools/git-pulls.d.ts +694 -694
  71. package/dist/tools/git-pulls.js +732 -732
  72. package/dist/tools/git-rebase.d.ts +137 -137
  73. package/dist/tools/git-rebase.js +213 -213
  74. package/dist/tools/git-releases.d.ts +487 -487
  75. package/dist/tools/git-releases.js +557 -557
  76. package/dist/tools/git-remote.d.ts +138 -138
  77. package/dist/tools/git-remote.js +274 -274
  78. package/dist/tools/git-repositories.d.ts +483 -483
  79. package/dist/tools/git-repositories.js +640 -640
  80. package/dist/tools/git-reset.d.ts +130 -130
  81. package/dist/tools/git-reset.js +223 -223
  82. package/dist/tools/git-revert.d.ts +149 -149
  83. package/dist/tools/git-revert.js +198 -198
  84. package/dist/tools/git-stash.d.ts +140 -140
  85. package/dist/tools/git-stash.js +269 -269
  86. package/dist/tools/git-submodule.d.ts +152 -152
  87. package/dist/tools/git-submodule.js +289 -289
  88. package/dist/tools/git-sync.d.ts +178 -166
  89. package/dist/tools/git-sync.d.ts.map +1 -1
  90. package/dist/tools/git-sync.js +312 -117
  91. package/dist/tools/git-sync.js.map +1 -1
  92. package/dist/tools/git-tags.d.ts +411 -411
  93. package/dist/tools/git-tags.js +485 -485
  94. package/dist/tools/git-webhooks.d.ts +470 -482
  95. package/dist/tools/git-webhooks.d.ts.map +1 -1
  96. package/dist/tools/git-webhooks.js +543 -555
  97. package/dist/tools/git-webhooks.js.map +1 -1
  98. package/dist/tools/git-worktree.d.ts +159 -159
  99. package/dist/tools/git-worktree.js +269 -269
  100. package/dist/tools/repositories.d.ts +405 -405
  101. package/dist/tools/repositories.js +569 -569
  102. package/dist/tools/users.d.ts +372 -372
  103. package/dist/tools/users.js +499 -499
  104. package/dist/tools/validator.d.ts +170 -170
  105. package/dist/tools/validator.js +194 -194
  106. package/dist/tools/version-control.d.ts +136 -136
  107. package/dist/tools/version-control.js +164 -164
  108. package/dist/utils/terminal-controller.d.ts +80 -80
  109. package/dist/utils/terminal-controller.js +345 -345
  110. package/dist/utils/user-detection.d.ts +24 -24
  111. package/dist/utils/user-detection.js +53 -53
  112. package/package.json +59 -59
@@ -1,483 +1,471 @@
1
- import { z } from 'zod';
2
- import { VcsOperations } from '../providers/index.js';
3
- /**
4
- * Tool: webhooks
5
- *
6
- * DESCRIÇÃO:
7
- async handler(input: WebhooksInput): Promise<WebhooksResult> {
8
- try {
9
- const validatedInput = WebhooksInputSchema.parse(input);
10
-
11
- // Aplicar auto-detecção apenas para owner dentro do provider especificado
12
- const processedInput = await applyAutoUserDetection(validatedInput, validatedInput.provider);
13
-
14
- // Usar o provider especificado pelo usuário
15
- const provider = globalProviderFactory.getProvider(processedInput.provider);
16
-
17
- if (!provider) {
18
- throw new Error(`Provider '${processedInput.provider}' não encontrado`);
19
- }o completo de webhooks com suporte multi-provider (GitHub e Gitea)
20
- *
21
- * FUNCIONALIDADES:
22
- * - Criação de novos webhooks
23
- * - Listagem e busca de webhooks
24
- * - Obtenção de detalhes específicos
25
- * - Atualização de webhooks existentes
26
- * - Exclusão de webhooks
27
- * - Teste de webhooks
28
- * - Configuração de eventos
29
- *
30
- * USO:
31
- * - Para integração com CI/CD
32
- * - Para notificações automáticas
33
- * - Para sincronização de dados
34
- * - Para automação de workflows
35
- *
36
- * RECOMENDAÇÕES:
37
- * - Use HTTPS sempre que possível
38
- * - Mantenha secrets seguros
39
- * - Monitore falhas de entrega
40
- * - Configure apenas eventos necessários
41
- */
42
- /**
43
- * Schema de validação para entrada da tool webhooks
44
- *
45
- * VALIDAÇÕES:
46
- * - action: Ação obrigatória (create, list, get, update, delete, test)
47
- * - Parâmetros específicos por ação
48
- * - Validação de tipos e formatos
49
- *
50
- * RECOMENDAÇÕES:
51
- * - Sempre valide entrada antes de usar
52
- * - Use parâmetros opcionais adequadamente
53
- * - Documente parâmetros obrigatórios
54
- */
55
- declare const WebhooksInputSchema: z.ZodObject<{
56
- action: z.ZodEnum<["create", "list", "get", "update", "delete", "test"]>;
57
- repo: z.ZodString;
58
- provider: z.ZodEnum<["gitea", "github"]>;
59
- url: z.ZodOptional<z.ZodString>;
60
- content_type: z.ZodOptional<z.ZodEnum<["json", "form"]>>;
61
- secret: z.ZodOptional<z.ZodString>;
62
- events: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
63
- active: z.ZodOptional<z.ZodBoolean>;
64
- webhook_id: z.ZodOptional<z.ZodNumber>;
65
- page: z.ZodOptional<z.ZodNumber>;
66
- limit: z.ZodOptional<z.ZodNumber>;
67
- new_url: z.ZodOptional<z.ZodString>;
68
- new_content_type: z.ZodOptional<z.ZodEnum<["json", "form"]>>;
69
- new_secret: z.ZodOptional<z.ZodString>;
70
- new_events: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
71
- new_active: z.ZodOptional<z.ZodBoolean>;
72
- }, "strip", z.ZodTypeAny, {
73
- provider: "gitea" | "github";
74
- repo: string;
75
- action: "delete" | "get" | "list" | "create" | "update" | "test";
76
- active?: boolean | undefined;
77
- events?: string[] | undefined;
78
- url?: string | undefined;
79
- page?: number | undefined;
80
- limit?: number | undefined;
81
- content_type?: "json" | "form" | undefined;
82
- secret?: string | undefined;
83
- webhook_id?: number | undefined;
84
- new_url?: string | undefined;
85
- new_content_type?: "json" | "form" | undefined;
86
- new_secret?: string | undefined;
87
- new_events?: string[] | undefined;
88
- new_active?: boolean | undefined;
89
- }, {
90
- provider: "gitea" | "github";
91
- repo: string;
92
- action: "delete" | "get" | "list" | "create" | "update" | "test";
93
- active?: boolean | undefined;
94
- events?: string[] | undefined;
95
- url?: string | undefined;
96
- page?: number | undefined;
97
- limit?: number | undefined;
98
- content_type?: "json" | "form" | undefined;
99
- secret?: string | undefined;
100
- webhook_id?: number | undefined;
101
- new_url?: string | undefined;
102
- new_content_type?: "json" | "form" | undefined;
103
- new_secret?: string | undefined;
104
- new_events?: string[] | undefined;
105
- new_active?: boolean | undefined;
106
- }>;
107
- export type WebhooksInput = z.infer<typeof WebhooksInputSchema>;
108
- /**
109
- * Schema de saída padronizado
110
- *
111
- * ESTRUTURA:
112
- * - success: Status da operação
113
- * - action: Ação executada
114
- * - message: Mensagem descritiva
115
- * - data: Dados retornados (opcional)
116
- * - error: Detalhes do erro (opcional)
117
- */
118
- declare const WebhooksResultSchema: z.ZodObject<{
119
- success: z.ZodBoolean;
120
- action: z.ZodString;
121
- message: z.ZodString;
122
- data: z.ZodOptional<z.ZodAny>;
123
- error: z.ZodOptional<z.ZodString>;
124
- }, "strip", z.ZodTypeAny, {
125
- message: string;
126
- action: string;
127
- success: boolean;
128
- error?: string | undefined;
129
- data?: any;
130
- }, {
131
- message: string;
132
- action: string;
133
- success: boolean;
134
- error?: string | undefined;
135
- data?: any;
136
- }>;
137
- export type WebhooksResult = z.infer<typeof WebhooksResultSchema>;
138
- /**
139
- * Tool: webhooks
140
- *
141
- * DESCRIÇÃO:
142
- * Gerenciamento completo de webhooks Gitea com múltiplas ações
143
- *
144
- * ACTIONS DISPONÍVEIS:
145
- *
146
- * 1. create - Criar novo webhook
147
- * Parâmetros:
148
- * - owner (obrigatório): Proprietário do repositório
149
- * - repo (obrigatório): Nome do repositório
150
- * - url (obrigatório): URL de destino do webhook
151
- * - content_type (opcional): Tipo de conteúdo (json, form) - padrão: json
152
- * - secret (opcional): Secret para assinatura
153
- * - events (opcional): Array de eventos a serem monitorados
154
- * - active (opcional): Se webhook está ativo (padrão: true)
155
- *
156
- * 2. list - Listar webhooks
157
- * Parâmetros:
158
- * - owner (obrigatório): Proprietário do repositório
159
- * - repo (obrigatório): Nome do repositório
160
- * - page (opcional): Página da listagem (padrão: 1)
161
- * - limit (opcional): Itens por página (padrão: 30, máximo: 100)
162
- *
163
- * 3. get - Obter detalhes do webhook
164
- * Parâmetros:
165
- * - owner (obrigatório): Proprietário do repositório
166
- * - repo (obrigatório): Nome do repositório
167
- * - webhook_id (obrigatório): ID do webhook
168
- *
169
- * 4. update - Atualizar webhook existente
170
- * Parâmetros:
171
- * - owner (obrigatório): Proprietário do repositório
172
- * - repo (obrigatório): Nome do repositório
173
- * - webhook_id (obrigatório): ID do webhook
174
- * - new_url (opcional): Nova URL
175
- * - new_content_type (opcional): Novo tipo de conteúdo
176
- * - new_secret (opcional): Novo secret
177
- * - new_events (opcional): Novos eventos
178
- * - new_active (opcional): Novo status ativo
179
- *
180
- * 5. delete - Deletar webhook
181
- * Parâmetros:
182
- * - owner (obrigatório): Proprietário do repositório
183
- * - repo (obrigatório): Nome do repositório
184
- * - webhook_id (obrigatório): ID do webhook
185
- *
186
- * 6. test - Testar webhook
187
- * Parâmetros:
188
- * - owner (obrigatório): Proprietário do repositório
189
- * - repo (obrigatório): Nome do repositório
190
- * - webhook_id (obrigatório): ID do webhook
191
- *
192
- * RECOMENDAÇÕES DE USO:
193
- * - Use URLs seguras (HTTPS)
194
- * - Configure eventos adequadamente
195
- * - Monitore falhas de entrega
196
- * - Mantenha secrets seguros
197
- * - Teste webhooks antes de ativar
198
- * - Configure retry adequado
199
- * - Monitore logs de entrega
200
- */
201
- export declare const webhooksTool: {
202
- name: string;
203
- description: string;
204
- inputSchema: {
205
- type: string;
206
- properties: {
207
- action: {
208
- type: string;
209
- enum: string[];
210
- description: string;
211
- };
212
- repo: {
213
- type: string;
214
- description: string;
215
- };
216
- provider: {
217
- type: string;
218
- description: string;
219
- };
220
- url: {
221
- type: string;
222
- description: string;
223
- };
224
- content_type: {
225
- type: string;
226
- enum: string[];
227
- description: string;
228
- };
229
- secret: {
230
- type: string;
231
- description: string;
232
- };
233
- events: {
234
- type: string;
235
- items: {
236
- type: string;
237
- };
238
- description: string;
239
- };
240
- active: {
241
- type: string;
242
- description: string;
243
- };
244
- webhook_id: {
245
- type: string;
246
- description: string;
247
- };
248
- page: {
249
- type: string;
250
- description: string;
251
- minimum: number;
252
- };
253
- limit: {
254
- type: string;
255
- description: string;
256
- minimum: number;
257
- maximum: number;
258
- };
259
- new_url: {
260
- type: string;
261
- description: string;
262
- };
263
- new_content_type: {
264
- type: string;
265
- enum: string[];
266
- description: string;
267
- };
268
- new_secret: {
269
- type: string;
270
- description: string;
271
- };
272
- new_events: {
273
- type: string;
274
- items: {
275
- type: string;
276
- };
277
- description: string;
278
- };
279
- new_active: {
280
- type: string;
281
- description: string;
282
- };
283
- };
284
- required: string[];
285
- };
286
- /**
287
- * Handler principal da tool webhooks
288
- *
289
- * FUNCIONALIDADE:
290
- * - Valida entrada usando Zod schema
291
- * - Roteia para método específico baseado na ação
292
- * - Trata erros de forma uniforme
293
- * - Retorna resultado padronizado
294
- *
295
- * FLUXO:
296
- * 1. Validação de entrada
297
- * 2. Seleção do provider
298
- * 3. Roteamento por ação
299
- * 4. Execução do método específico
300
- * 5. Tratamento de erros
301
- * 6. Retorno de resultado
302
- *
303
- * TRATAMENTO DE ERROS:
304
- * - Validação: erro de schema
305
- * - Execução: erro da operação
306
- * - Roteamento: ação não suportada
307
- *
308
- * RECOMENDAÇÕES:
309
- * - Sempre valide entrada antes de processar
310
- * - Trate erros específicos adequadamente
311
- * - Log detalhes de erro para debug
312
- * - Retorne mensagens de erro úteis
313
- */
314
- handler(input: WebhooksInput): Promise<WebhooksResult>;
315
- /**
316
- * Cria um novo webhook no repositório
317
- *
318
- * FUNCIONALIDADE:
319
- * - Cria webhook com URL e configurações
320
- * - Suporta diferentes tipos de conteúdo
321
- * - Permite configuração de eventos
322
- *
323
- * PARÂMETROS OBRIGATÓRIOS:
324
- * - owner: Proprietário do repositório
325
- * - repo: Nome do repositório
326
- * - url: URL de destino do webhook
327
- *
328
- * PARÂMETROS OPCIONAIS:
329
- * - content_type: Tipo de conteúdo (json, form) - padrão: json
330
- * - secret: Secret para assinatura
331
- * - events: Array de eventos a serem monitorados
332
- * - active: Se webhook está ativo (padrão: true)
333
- *
334
- * VALIDAÇÕES:
335
- * - Todos os parâmetros obrigatórios
336
- * - URL deve ser válida e acessível
337
- * - Usuário deve ter permissão de escrita
338
- *
339
- * RECOMENDAÇÕES:
340
- * - Use URLs seguras (HTTPS)
341
- * - Configure eventos adequadamente
342
- * - Mantenha secrets seguros
343
- * - Teste webhook antes de ativar
344
- */
345
- createWebhook(params: WebhooksInput, provider: VcsOperations, owner: string): Promise<WebhooksResult>;
346
- /**
347
- * Lista webhooks do repositório
348
- *
349
- * FUNCIONALIDADE:
350
- * - Lista webhooks com paginação
351
- * - Retorna informações básicas de cada webhook
352
- * - Inclui status ativo e eventos configurados
353
- *
354
- * PARÂMETROS OBRIGATÓRIOS:
355
- * - owner: Proprietário do repositório
356
- * - repo: Nome do repositório
357
- *
358
- * PARÂMETROS OPCIONAIS:
359
- * - page: Página da listagem (padrão: 1)
360
- * - limit: Itens por página (padrão: 30, máximo: 100)
361
- *
362
- * VALIDAÇÕES:
363
- * - e repo obrigatórios
364
- * - Page deve ser >= 1
365
- * - Limit deve ser entre 1 e 100
366
- *
367
- * RECOMENDAÇÕES:
368
- * - Use paginação para repositórios com muitos webhooks
369
- * - Monitore número total de webhooks
370
- * - Verifique status ativo de cada webhook
371
- * - Mantenha webhooks organizados
372
- */
373
- listWebhooks(params: WebhooksInput, provider: VcsOperations, owner: string): Promise<WebhooksResult>;
374
- /**
375
- * Obtém detalhes de um webhook específico
376
- *
377
- * FUNCIONALIDADE:
378
- * - Retorna informações completas do webhook
379
- * - Inclui URL, tipo de conteúdo, eventos e status
380
- * - Mostra configurações de segurança
381
- *
382
- * PARÂMETROS OBRIGATÓRIOS:
383
- * - owner: Proprietário do repositório
384
- * - repo: Nome do repositório
385
- * - webhook_id: ID do webhook
386
- *
387
- * VALIDAÇÕES:
388
- * - Todos os parâmetros obrigatórios
389
- * - Webhook deve existir no repositório
390
- * - ID deve ser válido
391
- *
392
- * RECOMENDAÇÕES:
393
- * - Use para obter detalhes completos
394
- * - Verifique configurações de segurança
395
- * - Analise eventos configurados
396
- * - Monitore status ativo
397
- */
398
- getWebhook(params: WebhooksInput, provider: VcsOperations, owner: string): Promise<WebhooksResult>;
399
- /**
400
- * Atualiza um webhook existente
401
- *
402
- * FUNCIONALIDADE:
403
- * - Atualiza campos do webhook
404
- * - Suporta mudança de URL e eventos
405
- * - Permite alteração de status ativo
406
- *
407
- * PARÂMETROS OBRIGATÓRIOS:
408
- * - owner: Proprietário do repositório
409
- * - repo: Nome do repositório
410
- * - webhook_id: ID do webhook
411
- *
412
- * PARÂMETROS OPCIONAIS:
413
- * - new_url: Nova URL
414
- * - new_content_type: Novo tipo de conteúdo
415
- * - new_secret: Novo secret
416
- * - new_events: Novos eventos
417
- * - new_active: Novo status ativo
418
- *
419
- * VALIDAÇÕES:
420
- * - Todos os parâmetros obrigatórios
421
- * - Webhook deve existir
422
- * - Pelo menos um campo deve ser atualizado
423
- *
424
- * RECOMENDAÇÕES:
425
- * - Atualize apenas campos necessários
426
- * - Use mensagens de commit descritivas
427
- * - Documente mudanças importantes
428
- * - Teste webhook após atualização
429
- */
430
- updateWebhook(params: WebhooksInput, provider: VcsOperations, owner: string): Promise<WebhooksResult>;
431
- /**
432
- * Deleta um webhook do repositório
433
- *
434
- * FUNCIONALIDADE:
435
- * - Remove webhook especificado
436
- * - Confirma exclusão bem-sucedida
437
- * - Limpa configurações associadas
438
- *
439
- * PARÂMETROS OBRIGATÓRIOS:
440
- * - owner: Proprietário do repositório
441
- * - repo: Nome do repositório
442
- * - webhook_id: ID do webhook
443
- *
444
- * VALIDAÇÕES:
445
- * - Todos os parâmetros obrigatórios
446
- * - Webhook deve existir
447
- * - Usuário deve ter permissão de exclusão
448
- *
449
- * RECOMENDAÇÕES:
450
- * - Confirme exclusão antes de executar
451
- * - Verifique se webhook não está sendo usado
452
- * - Mantenha backup se necessário
453
- * - Documente motivo da exclusão
454
- */
455
- deleteWebhook(params: WebhooksInput, provider: VcsOperations, owner: string): Promise<WebhooksResult>;
456
- /**
457
- * Testa um webhook existente
458
- *
459
- * FUNCIONALIDADE:
460
- * - Envia payload de teste para webhook
461
- * - Verifica conectividade e resposta
462
- * - Retorna resultado do teste
463
- *
464
- * PARÂMETROS OBRIGATÓRIOS:
465
- * - owner: Proprietário do repositório
466
- * - repo: Nome do repositório
467
- * - webhook_id: ID do webhook
468
- *
469
- * VALIDAÇÕES:
470
- * - Todos os parâmetros obrigatórios
471
- * - Webhook deve existir
472
- * - Webhook deve estar ativo
473
- *
474
- * RECOMENDAÇÕES:
475
- * - Teste webhooks após criação
476
- * - Monitore respostas de teste
477
- * - Verifique logs de entrega
478
- * - Configure retry adequado
479
- */
480
- testWebhook(params: WebhooksInput, provider: VcsOperations, owner: string): Promise<WebhooksResult>;
481
- };
482
- export {};
1
+ import { z } from 'zod';
2
+ import { VcsOperations } from '../providers/index.ts';
3
+ /**
4
+ * Tool: webhooks
5
+ *
6
+ * DESCRIÇÃO:
7
+ * Gerenciamento completo de webhooks com suporte multi-provider (GitHub e Gitea)
8
+ *
9
+ * FUNCIONALIDADES:
10
+ * - Criação de novos webhooks
11
+ * - Listagem e busca de webhooks
12
+ * - Obtenção de detalhes específicos
13
+ * - Atualização de webhooks existentes
14
+ * - Exclusão de webhooks
15
+ * - Teste de webhooks
16
+ * - Configuração de eventos
17
+ *
18
+ * USO:
19
+ * - Para integração com CI/CD
20
+ * - Para notificações automáticas
21
+ * - Para sincronização de dados
22
+ * - Para automação de workflows
23
+ *
24
+ * RECOMENDAÇÕES:
25
+ * - Use HTTPS sempre que possível
26
+ * - Mantenha secrets seguros
27
+ * - Monitore falhas de entrega
28
+ * - Configure apenas eventos necessários
29
+ */
30
+ /**
31
+ * Schema de validação para entrada da tool webhooks
32
+ *
33
+ * VALIDAÇÕES:
34
+ * - action: Ação obrigatória (create, list, get, update, delete, test)
35
+ * - Parâmetros específicos por ação
36
+ * - Validação de tipos e formatos
37
+ *
38
+ * RECOMENDAÇÕES:
39
+ * - Sempre valide entrada antes de usar
40
+ * - Use parâmetros opcionais adequadamente
41
+ * - Documente parâmetros obrigatórios
42
+ */
43
+ declare const WebhooksInputSchema: z.ZodObject<{
44
+ action: z.ZodEnum<["create", "list", "get", "update", "delete", "test"]>;
45
+ repo: z.ZodString;
46
+ provider: z.ZodEnum<["gitea", "github"]>;
47
+ url: z.ZodOptional<z.ZodString>;
48
+ content_type: z.ZodOptional<z.ZodEnum<["json", "form"]>>;
49
+ secret: z.ZodOptional<z.ZodString>;
50
+ events: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
51
+ active: z.ZodOptional<z.ZodBoolean>;
52
+ webhook_id: z.ZodOptional<z.ZodNumber>;
53
+ page: z.ZodOptional<z.ZodNumber>;
54
+ limit: z.ZodOptional<z.ZodNumber>;
55
+ new_url: z.ZodOptional<z.ZodString>;
56
+ new_content_type: z.ZodOptional<z.ZodEnum<["json", "form"]>>;
57
+ new_secret: z.ZodOptional<z.ZodString>;
58
+ new_events: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
59
+ new_active: z.ZodOptional<z.ZodBoolean>;
60
+ }, "strip", z.ZodTypeAny, {
61
+ provider: "gitea" | "github";
62
+ repo: string;
63
+ action: "delete" | "get" | "list" | "create" | "update" | "test";
64
+ active?: boolean | undefined;
65
+ url?: string | undefined;
66
+ events?: string[] | undefined;
67
+ page?: number | undefined;
68
+ limit?: number | undefined;
69
+ content_type?: "json" | "form" | undefined;
70
+ secret?: string | undefined;
71
+ webhook_id?: number | undefined;
72
+ new_url?: string | undefined;
73
+ new_content_type?: "json" | "form" | undefined;
74
+ new_secret?: string | undefined;
75
+ new_events?: string[] | undefined;
76
+ new_active?: boolean | undefined;
77
+ }, {
78
+ provider: "gitea" | "github";
79
+ repo: string;
80
+ action: "delete" | "get" | "list" | "create" | "update" | "test";
81
+ active?: boolean | undefined;
82
+ url?: string | undefined;
83
+ events?: string[] | undefined;
84
+ page?: number | undefined;
85
+ limit?: number | undefined;
86
+ content_type?: "json" | "form" | undefined;
87
+ secret?: string | undefined;
88
+ webhook_id?: number | undefined;
89
+ new_url?: string | undefined;
90
+ new_content_type?: "json" | "form" | undefined;
91
+ new_secret?: string | undefined;
92
+ new_events?: string[] | undefined;
93
+ new_active?: boolean | undefined;
94
+ }>;
95
+ export type WebhooksInput = z.infer<typeof WebhooksInputSchema>;
96
+ /**
97
+ * Schema de saída padronizado
98
+ *
99
+ * ESTRUTURA:
100
+ * - success: Status da operação
101
+ * - action: Ação executada
102
+ * - message: Mensagem descritiva
103
+ * - data: Dados retornados (opcional)
104
+ * - error: Detalhes do erro (opcional)
105
+ */
106
+ declare const WebhooksResultSchema: z.ZodObject<{
107
+ success: z.ZodBoolean;
108
+ action: z.ZodString;
109
+ message: z.ZodString;
110
+ data: z.ZodOptional<z.ZodAny>;
111
+ error: z.ZodOptional<z.ZodString>;
112
+ }, "strip", z.ZodTypeAny, {
113
+ message: string;
114
+ action: string;
115
+ success: boolean;
116
+ error?: string | undefined;
117
+ data?: any;
118
+ }, {
119
+ message: string;
120
+ action: string;
121
+ success: boolean;
122
+ error?: string | undefined;
123
+ data?: any;
124
+ }>;
125
+ export type WebhooksResult = z.infer<typeof WebhooksResultSchema>;
126
+ /**
127
+ * Tool: webhooks
128
+ *
129
+ * DESCRIÇÃO:
130
+ * Gerenciamento completo de webhooks Gitea com múltiplas ações
131
+ *
132
+ * ACTIONS DISPONÍVEIS:
133
+ *
134
+ * 1. create - Criar novo webhook
135
+ * Parâmetros:
136
+ * - owner (obrigatório): Proprietário do repositório
137
+ * - repo (obrigatório): Nome do repositório
138
+ * - url (obrigatório): URL de destino do webhook
139
+ * - content_type (opcional): Tipo de conteúdo (json, form) - padrão: json
140
+ * - secret (opcional): Secret para assinatura
141
+ * - events (opcional): Array de eventos a serem monitorados
142
+ * - active (opcional): Se webhook está ativo (padrão: true)
143
+ *
144
+ * 2. list - Listar webhooks
145
+ * Parâmetros:
146
+ * - owner (obrigatório): Proprietário do repositório
147
+ * - repo (obrigatório): Nome do repositório
148
+ * - page (opcional): Página da listagem (padrão: 1)
149
+ * - limit (opcional): Itens por página (padrão: 30, máximo: 100)
150
+ *
151
+ * 3. get - Obter detalhes do webhook
152
+ * Parâmetros:
153
+ * - owner (obrigatório): Proprietário do repositório
154
+ * - repo (obrigatório): Nome do repositório
155
+ * - webhook_id (obrigatório): ID do webhook
156
+ *
157
+ * 4. update - Atualizar webhook existente
158
+ * Parâmetros:
159
+ * - owner (obrigatório): Proprietário do repositório
160
+ * - repo (obrigatório): Nome do repositório
161
+ * - webhook_id (obrigatório): ID do webhook
162
+ * - new_url (opcional): Nova URL
163
+ * - new_content_type (opcional): Novo tipo de conteúdo
164
+ * - new_secret (opcional): Novo secret
165
+ * - new_events (opcional): Novos eventos
166
+ * - new_active (opcional): Novo status ativo
167
+ *
168
+ * 5. delete - Deletar webhook
169
+ * Parâmetros:
170
+ * - owner (obrigatório): Proprietário do repositório
171
+ * - repo (obrigatório): Nome do repositório
172
+ * - webhook_id (obrigatório): ID do webhook
173
+ *
174
+ * 6. test - Testar webhook
175
+ * Parâmetros:
176
+ * - owner (obrigatório): Proprietário do repositório
177
+ * - repo (obrigatório): Nome do repositório
178
+ * - webhook_id (obrigatório): ID do webhook
179
+ *
180
+ * RECOMENDAÇÕES DE USO:
181
+ * - Use URLs seguras (HTTPS)
182
+ * - Configure eventos adequadamente
183
+ * - Monitore falhas de entrega
184
+ * - Mantenha secrets seguros
185
+ * - Teste webhooks antes de ativar
186
+ * - Configure retry adequado
187
+ * - Monitore logs de entrega
188
+ */
189
+ export declare const webhooksTool: {
190
+ name: string;
191
+ description: string;
192
+ inputSchema: {
193
+ type: string;
194
+ properties: {
195
+ action: {
196
+ type: string;
197
+ enum: string[];
198
+ description: string;
199
+ };
200
+ repo: {
201
+ type: string;
202
+ description: string;
203
+ };
204
+ provider: {
205
+ type: string;
206
+ description: string;
207
+ };
208
+ url: {
209
+ type: string;
210
+ description: string;
211
+ };
212
+ content_type: {
213
+ type: string;
214
+ enum: string[];
215
+ description: string;
216
+ };
217
+ secret: {
218
+ type: string;
219
+ description: string;
220
+ };
221
+ events: {
222
+ type: string;
223
+ items: {
224
+ type: string;
225
+ };
226
+ description: string;
227
+ };
228
+ active: {
229
+ type: string;
230
+ description: string;
231
+ };
232
+ webhook_id: {
233
+ type: string;
234
+ description: string;
235
+ };
236
+ page: {
237
+ type: string;
238
+ description: string;
239
+ minimum: number;
240
+ };
241
+ limit: {
242
+ type: string;
243
+ description: string;
244
+ minimum: number;
245
+ maximum: number;
246
+ };
247
+ new_url: {
248
+ type: string;
249
+ description: string;
250
+ };
251
+ new_content_type: {
252
+ type: string;
253
+ enum: string[];
254
+ description: string;
255
+ };
256
+ new_secret: {
257
+ type: string;
258
+ description: string;
259
+ };
260
+ new_events: {
261
+ type: string;
262
+ items: {
263
+ type: string;
264
+ };
265
+ description: string;
266
+ };
267
+ new_active: {
268
+ type: string;
269
+ description: string;
270
+ };
271
+ };
272
+ required: string[];
273
+ };
274
+ /**
275
+ * Handler principal da tool webhooks
276
+ *
277
+ * FUNCIONALIDADE:
278
+ * - Valida entrada usando Zod schema
279
+ * - Roteia para método específico baseado na ação
280
+ * - Trata erros de forma uniforme
281
+ * - Retorna resultado padronizado
282
+ *
283
+ * FLUXO:
284
+ * 1. Validação de entrada
285
+ * 2. Seleção do provider
286
+ * 3. Roteamento por ação
287
+ * 4. Execução do método específico
288
+ * 5. Tratamento de erros
289
+ * 6. Retorno de resultado
290
+ *
291
+ * TRATAMENTO DE ERROS:
292
+ * - Validação: erro de schema
293
+ * - Execução: erro da operação
294
+ * - Roteamento: ação não suportada
295
+ *
296
+ * RECOMENDAÇÕES:
297
+ * - Sempre valide entrada antes de processar
298
+ * - Trate erros específicos adequadamente
299
+ * - Log detalhes de erro para debug
300
+ * - Retorne mensagens de erro úteis
301
+ */
302
+ handler(input: WebhooksInput): Promise<WebhooksResult>;
303
+ /**
304
+ * Cria um novo webhook no repositório
305
+ *
306
+ * FUNCIONALIDADE:
307
+ * - Cria webhook com URL e configurações
308
+ * - Suporta diferentes tipos de conteúdo
309
+ * - Permite configuração de eventos
310
+ *
311
+ * PARÂMETROS OBRIGATÓRIOS:
312
+ * - owner: Proprietário do repositório
313
+ * - repo: Nome do repositório
314
+ * - url: URL de destino do webhook
315
+ *
316
+ * PARÂMETROS OPCIONAIS:
317
+ * - content_type: Tipo de conteúdo (json, form) - padrão: json
318
+ * - secret: Secret para assinatura
319
+ * - events: Array de eventos a serem monitorados
320
+ * - active: Se webhook está ativo (padrão: true)
321
+ *
322
+ * VALIDAÇÕES:
323
+ * - Todos os parâmetros obrigatórios
324
+ * - URL deve ser válida e acessível
325
+ * - Usuário deve ter permissão de escrita
326
+ *
327
+ * RECOMENDAÇÕES:
328
+ * - Use URLs seguras (HTTPS)
329
+ * - Configure eventos adequadamente
330
+ * - Mantenha secrets seguros
331
+ * - Teste webhook antes de ativar
332
+ */
333
+ createWebhook(params: WebhooksInput, provider: VcsOperations, owner: string): Promise<WebhooksResult>;
334
+ /**
335
+ * Lista webhooks do repositório
336
+ *
337
+ * FUNCIONALIDADE:
338
+ * - Lista webhooks com paginação
339
+ * - Retorna informações básicas de cada webhook
340
+ * - Inclui status ativo e eventos configurados
341
+ *
342
+ * PARÂMETROS OBRIGATÓRIOS:
343
+ * - owner: Proprietário do repositório
344
+ * - repo: Nome do repositório
345
+ *
346
+ * PARÂMETROS OPCIONAIS:
347
+ * - page: Página da listagem (padrão: 1)
348
+ * - limit: Itens por página (padrão: 30, máximo: 100)
349
+ *
350
+ * VALIDAÇÕES:
351
+ * - e repo obrigatórios
352
+ * - Page deve ser >= 1
353
+ * - Limit deve ser entre 1 e 100
354
+ *
355
+ * RECOMENDAÇÕES:
356
+ * - Use paginação para repositórios com muitos webhooks
357
+ * - Monitore número total de webhooks
358
+ * - Verifique status ativo de cada webhook
359
+ * - Mantenha webhooks organizados
360
+ */
361
+ listWebhooks(params: WebhooksInput, provider: VcsOperations, owner: string): Promise<WebhooksResult>;
362
+ /**
363
+ * Obtém detalhes de um webhook específico
364
+ *
365
+ * FUNCIONALIDADE:
366
+ * - Retorna informações completas do webhook
367
+ * - Inclui URL, tipo de conteúdo, eventos e status
368
+ * - Mostra configurações de segurança
369
+ *
370
+ * PARÂMETROS OBRIGATÓRIOS:
371
+ * - owner: Proprietário do repositório
372
+ * - repo: Nome do repositório
373
+ * - webhook_id: ID do webhook
374
+ *
375
+ * VALIDAÇÕES:
376
+ * - Todos os parâmetros obrigatórios
377
+ * - Webhook deve existir no repositório
378
+ * - ID deve ser válido
379
+ *
380
+ * RECOMENDAÇÕES:
381
+ * - Use para obter detalhes completos
382
+ * - Verifique configurações de segurança
383
+ * - Analise eventos configurados
384
+ * - Monitore status ativo
385
+ */
386
+ getWebhook(params: WebhooksInput, provider: VcsOperations, owner: string): Promise<WebhooksResult>;
387
+ /**
388
+ * Atualiza um webhook existente
389
+ *
390
+ * FUNCIONALIDADE:
391
+ * - Atualiza campos do webhook
392
+ * - Suporta mudança de URL e eventos
393
+ * - Permite alteração de status ativo
394
+ *
395
+ * PARÂMETROS OBRIGATÓRIOS:
396
+ * - owner: Proprietário do repositório
397
+ * - repo: Nome do repositório
398
+ * - webhook_id: ID do webhook
399
+ *
400
+ * PARÂMETROS OPCIONAIS:
401
+ * - new_url: Nova URL
402
+ * - new_content_type: Novo tipo de conteúdo
403
+ * - new_secret: Novo secret
404
+ * - new_events: Novos eventos
405
+ * - new_active: Novo status ativo
406
+ *
407
+ * VALIDAÇÕES:
408
+ * - Todos os parâmetros obrigatórios
409
+ * - Webhook deve existir
410
+ * - Pelo menos um campo deve ser atualizado
411
+ *
412
+ * RECOMENDAÇÕES:
413
+ * - Atualize apenas campos necessários
414
+ * - Use mensagens de commit descritivas
415
+ * - Documente mudanças importantes
416
+ * - Teste webhook após atualização
417
+ */
418
+ updateWebhook(params: WebhooksInput, provider: VcsOperations, owner: string): Promise<WebhooksResult>;
419
+ /**
420
+ * Deleta um webhook do repositório
421
+ *
422
+ * FUNCIONALIDADE:
423
+ * - Remove webhook especificado
424
+ * - Confirma exclusão bem-sucedida
425
+ * - Limpa configurações associadas
426
+ *
427
+ * PARÂMETROS OBRIGATÓRIOS:
428
+ * - owner: Proprietário do repositório
429
+ * - repo: Nome do repositório
430
+ * - webhook_id: ID do webhook
431
+ *
432
+ * VALIDAÇÕES:
433
+ * - Todos os parâmetros obrigatórios
434
+ * - Webhook deve existir
435
+ * - Usuário deve ter permissão de exclusão
436
+ *
437
+ * RECOMENDAÇÕES:
438
+ * - Confirme exclusão antes de executar
439
+ * - Verifique se webhook não está sendo usado
440
+ * - Mantenha backup se necessário
441
+ * - Documente motivo da exclusão
442
+ */
443
+ deleteWebhook(params: WebhooksInput, provider: VcsOperations, owner: string): Promise<WebhooksResult>;
444
+ /**
445
+ * Testa um webhook existente
446
+ *
447
+ * FUNCIONALIDADE:
448
+ * - Envia payload de teste para webhook
449
+ * - Verifica conectividade e resposta
450
+ * - Retorna resultado do teste
451
+ *
452
+ * PARÂMETROS OBRIGATÓRIOS:
453
+ * - owner: Proprietário do repositório
454
+ * - repo: Nome do repositório
455
+ * - webhook_id: ID do webhook
456
+ *
457
+ * VALIDAÇÕES:
458
+ * - Todos os parâmetros obrigatórios
459
+ * - Webhook deve existir
460
+ * - Webhook deve estar ativo
461
+ *
462
+ * RECOMENDAÇÕES:
463
+ * - Teste webhooks após criação
464
+ * - Monitore respostas de teste
465
+ * - Verifique logs de entrega
466
+ * - Configure retry adequado
467
+ */
468
+ testWebhook(params: WebhooksInput, provider: VcsOperations, owner: string): Promise<WebhooksResult>;
469
+ };
470
+ export {};
483
471
  //# sourceMappingURL=git-webhooks.d.ts.map