@andrebuzeli/git-mcp 2.27.4 → 2.28.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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 -305
  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,488 +1,488 @@
1
- import { z } from 'zod';
2
- import { VcsOperations } from '../providers/index.js';
3
- /**
4
- * Tool: releases
5
- *
6
- * DESCRIÇÃO:
7
- * Gerenciamento completo de releases com suporte multi-provider (GitHub e Gitea)
8
- *
9
- * FUNCIONALIDADES:
10
- * - Criação de novos releases
11
- * - Listagem e busca de releases
12
- * - Obtenção de detalhes específicos
13
- * - Atualização de releases existentes
14
- * - Publicação de releases
15
- * - Exclusão de releases
16
- * - Controle de versão
17
- *
18
- * USO:
19
- * - Para gerenciar versões do software
20
- * - Para controle de deploy
21
- * - Para documentação de mudanças
22
- * - Para distribuição de releases
23
- *
24
- * RECOMENDAÇÕES:
25
- * - Use versionamento semântico
26
- * - Documente mudanças detalhadamente
27
- * - Teste antes de publicar
28
- * - Mantenha histórico de versões
29
- */
30
- /**
31
- * Schema de validação para entrada da tool releases
32
- *
33
- * VALIDAÇÕES:
34
- * - action: Ação obrigatória (create, list, get, update, delete, publish)
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 ReleasesInputSchema: z.ZodObject<{
44
- action: z.ZodEnum<["create", "list", "get", "update", "delete", "publish"]>;
45
- repo: z.ZodString;
46
- provider: z.ZodEnum<["gitea", "github"]>;
47
- tag_name: z.ZodOptional<z.ZodString>;
48
- name: z.ZodOptional<z.ZodString>;
49
- body: z.ZodOptional<z.ZodString>;
50
- draft: z.ZodOptional<z.ZodBoolean>;
51
- prerelease: z.ZodOptional<z.ZodBoolean>;
52
- target_commitish: z.ZodOptional<z.ZodString>;
53
- release_id: z.ZodOptional<z.ZodNumber>;
54
- page: z.ZodOptional<z.ZodNumber>;
55
- limit: z.ZodOptional<z.ZodNumber>;
56
- new_tag_name: z.ZodOptional<z.ZodString>;
57
- new_name: z.ZodOptional<z.ZodString>;
58
- new_body: z.ZodOptional<z.ZodString>;
59
- new_draft: z.ZodOptional<z.ZodBoolean>;
60
- new_prerelease: z.ZodOptional<z.ZodBoolean>;
61
- new_target_commitish: z.ZodOptional<z.ZodString>;
62
- latest: z.ZodOptional<z.ZodBoolean>;
63
- }, "strip", z.ZodTypeAny, {
64
- provider: "gitea" | "github";
65
- repo: string;
66
- action: "delete" | "get" | "list" | "create" | "update" | "publish";
67
- name?: string | undefined;
68
- body?: string | undefined;
69
- tag_name?: string | undefined;
70
- draft?: boolean | undefined;
71
- prerelease?: boolean | undefined;
72
- page?: number | undefined;
73
- limit?: number | undefined;
74
- new_name?: string | undefined;
75
- new_body?: string | undefined;
76
- target_commitish?: string | undefined;
77
- release_id?: number | undefined;
78
- new_tag_name?: string | undefined;
79
- new_draft?: boolean | undefined;
80
- new_prerelease?: boolean | undefined;
81
- new_target_commitish?: string | undefined;
82
- latest?: boolean | undefined;
83
- }, {
84
- provider: "gitea" | "github";
85
- repo: string;
86
- action: "delete" | "get" | "list" | "create" | "update" | "publish";
87
- name?: string | undefined;
88
- body?: string | undefined;
89
- tag_name?: string | undefined;
90
- draft?: boolean | undefined;
91
- prerelease?: boolean | undefined;
92
- page?: number | undefined;
93
- limit?: number | undefined;
94
- new_name?: string | undefined;
95
- new_body?: string | undefined;
96
- target_commitish?: string | undefined;
97
- release_id?: number | undefined;
98
- new_tag_name?: string | undefined;
99
- new_draft?: boolean | undefined;
100
- new_prerelease?: boolean | undefined;
101
- new_target_commitish?: string | undefined;
102
- latest?: boolean | undefined;
103
- }>;
104
- export type ReleasesInput = z.infer<typeof ReleasesInputSchema>;
105
- /**
106
- * Schema de saída padronizado
107
- *
108
- * ESTRUTURA:
109
- * - success: Status da operação
110
- * - action: Ação executada
111
- * - message: Mensagem descritiva
112
- * - data: Dados retornados (opcional)
113
- * - error: Detalhes do erro (opcional)
114
- */
115
- declare const ReleasesResultSchema: z.ZodObject<{
116
- success: z.ZodBoolean;
117
- action: z.ZodString;
118
- message: z.ZodString;
119
- data: z.ZodOptional<z.ZodAny>;
120
- error: z.ZodOptional<z.ZodString>;
121
- }, "strip", z.ZodTypeAny, {
122
- message: string;
123
- action: string;
124
- success: boolean;
125
- error?: string | undefined;
126
- data?: any;
127
- }, {
128
- message: string;
129
- action: string;
130
- success: boolean;
131
- error?: string | undefined;
132
- data?: any;
133
- }>;
134
- export type ReleasesResult = z.infer<typeof ReleasesResultSchema>;
135
- /**
136
- * Tool: releases
137
- *
138
- * DESCRIÇÃO:
139
- * Gerenciamento completo de releases Gitea com múltiplas ações
140
- *
141
- * ACTIONS DISPONÍVEIS:
142
- *
143
- * 1. create - Criar novo release
144
- * Parâmetros:
145
- * - owner (obrigatório): Proprietário do repositório
146
- * - repo (obrigatório): Nome do repositório
147
- * - tag_name (obrigatório): Nome da tag do release
148
- * - name (opcional): Nome do release
149
- * - body (opcional): Descrição detalhada (changelog)
150
- * - draft (opcional): Se é um draft release (padrão: false)
151
- * - prerelease (opcional): Se é um prerelease (padrão: false)
152
- * - target_commitish (opcional): Branch ou commit alvo (padrão: branch padrão)
153
- *
154
- * 2. list - Listar releases
155
- * Parâmetros:
156
- * - owner (obrigatório): Proprietário do repositório
157
- * - repo (obrigatório): Nome do repositório
158
- * - page (opcional): Página da listagem (padrão: 1)
159
- * - limit (opcional): Itens por página (padrão: 30, máximo: 100)
160
- *
161
- * 3. get - Obter detalhes do release
162
- * Parâmetros:
163
- * - owner (obrigatório): Proprietário do repositório
164
- * - repo (obrigatório): Nome do repositório
165
- * - release_id (obrigatório): ID do release
166
- *
167
- * 4. update - Atualizar release existente
168
- * Parâmetros:
169
- * - owner (obrigatório): Proprietário do repositório
170
- * - repo (obrigatório): Nome do repositório
171
- * - release_id (obrigatório): ID do release
172
- * - new_tag_name (opcional): Nova tag
173
- * - new_name (opcional): Novo nome
174
- * - new_body (opcional): Nova descrição
175
- * - new_draft (opcional): Novo status de draft
176
- * - new_prerelease (opcional): Novo status de prerelease
177
- * - new_target_commitish (opcional): Nova branch/commit alvo
178
- *
179
- * 5. delete - Deletar release
180
- * Parâmetros:
181
- * - owner (obrigatório): Proprietário do repositório
182
- * - repo (obrigatório): Nome do repositório
183
- * - release_id (obrigatório): ID do release
184
- *
185
- * 6. publish - Publicar release
186
- * Parâmetros:
187
- * - owner (obrigatório): Proprietário do repositório
188
- * - repo (obrigatório): Nome do repositório
189
- * - release_id (obrigatório): ID do release
190
- *
191
- * RECOMENDAÇÕES DE USO:
192
- * - Use versionamento semântico (ex: v1.0.0, v2.1.3)
193
- * - Documente mudanças detalhadamente no body
194
- * - Use drafts para releases em preparação
195
- * - Marque prereleases adequadamente
196
- * - Teste releases antes de publicar
197
- * - Mantenha changelog organizado
198
- */
199
- export declare const releasesTool: {
200
- name: string;
201
- description: string;
202
- inputSchema: {
203
- type: string;
204
- properties: {
205
- action: {
206
- type: string;
207
- enum: string[];
208
- description: string;
209
- };
210
- repo: {
211
- type: string;
212
- description: string;
213
- };
214
- provider: {
215
- type: string;
216
- description: string;
217
- };
218
- tag_name: {
219
- type: string;
220
- description: string;
221
- };
222
- name: {
223
- type: string;
224
- description: string;
225
- };
226
- body: {
227
- type: string;
228
- description: string;
229
- };
230
- draft: {
231
- type: string;
232
- description: string;
233
- };
234
- prerelease: {
235
- type: string;
236
- description: string;
237
- };
238
- target_commitish: {
239
- type: string;
240
- description: string;
241
- };
242
- release_id: {
243
- type: string;
244
- description: string;
245
- };
246
- page: {
247
- type: string;
248
- description: string;
249
- minimum: number;
250
- };
251
- limit: {
252
- type: string;
253
- description: string;
254
- minimum: number;
255
- maximum: number;
256
- };
257
- new_tag_name: {
258
- type: string;
259
- description: string;
260
- };
261
- new_name: {
262
- type: string;
263
- description: string;
264
- };
265
- new_body: {
266
- type: string;
267
- description: string;
268
- };
269
- new_draft: {
270
- type: string;
271
- description: string;
272
- };
273
- new_prerelease: {
274
- type: string;
275
- description: string;
276
- };
277
- new_target_commitish: {
278
- type: string;
279
- description: string;
280
- };
281
- latest: {
282
- type: string;
283
- description: string;
284
- };
285
- };
286
- required: string[];
287
- };
288
- /**
289
- * Handler principal da tool releases
290
- *
291
- * FUNCIONALIDADE:
292
- * - Valida entrada usando Zod schema
293
- * - Roteia para método específico baseado na ação
294
- * - Trata erros de forma uniforme
295
- * - Retorna resultado padronizado
296
- *
297
- * FLUXO:
298
- * 1. Validação de entrada
299
- * 2. Seleção do provider
300
- * 3. Roteamento por ação
301
- * 4. Execução do método específico
302
- * 5. Tratamento de erros
303
- * 6. Retorno de resultado
304
- *
305
- * TRATAMENTO DE ERROS:
306
- * - Validação: erro de schema
307
- * - Execução: erro da operação
308
- * - Roteamento: ação não suportada
309
- *
310
- * RECOMENDAÇÕES:
311
- * - Sempre valide entrada antes de processar
312
- * - Trate erros específicos adequadamente
313
- * - Log detalhes de erro para debug
314
- * - Retorne mensagens de erro úteis
315
- */
316
- handler(input: ReleasesInput): Promise<ReleasesResult>;
317
- /**
318
- * Cria um novo release no repositório
319
- *
320
- * FUNCIONALIDADE:
321
- * - Cria release com tag e descrição
322
- * - Suporta configuração de draft e prerelease
323
- * - Permite especificar branch/commit alvo
324
- *
325
- * PARÂMETROS OBRIGATÓRIOS:
326
- * - owner: Proprietário do repositório
327
- * - repo: Nome do repositório
328
- * - tag_name: Nome da tag do release
329
- *
330
- * PARÂMETROS OPCIONAIS:
331
- * - name: Nome do release
332
- * - body: Descrição detalhada (changelog)
333
- * - draft: Se é um draft release (padrão: false)
334
- * - prerelease: Se é um prerelease (padrão: false)
335
- * - target_commitish: Branch ou commit alvo (padrão: branch padrão)
336
- *
337
- * VALIDAÇÕES:
338
- * - Todos os parâmetros obrigatórios
339
- * - Tag deve ser única no repositório
340
- * - Target commitish deve existir
341
- * - Usuário deve ter permissão de escrita
342
- *
343
- * RECOMENDAÇÕES:
344
- * - Use versionamento semântico (ex: v1.0.0)
345
- * - Documente mudanças detalhadamente
346
- * - Use drafts para releases em preparação
347
- * - Marque prereleases adequadamente
348
- */
349
- createRelease(params: ReleasesInput, provider: VcsOperations): Promise<ReleasesResult>;
350
- /**
351
- * Lista releases do repositório
352
- *
353
- * FUNCIONALIDADE:
354
- * - Lista releases com paginação
355
- * - Retorna informações básicas de cada release
356
- * - Inclui status de draft e prerelease
357
- *
358
- * PARÂMETROS OBRIGATÓRIOS:
359
- * - owner: Proprietário do repositório
360
- * - repo: Nome do repositório
361
- *
362
- * PARÂMETROS OPCIONAIS:
363
- * - page: Página da listagem (padrão: 1)
364
- * - limit: Itens por página (padrão: 30, máximo: 100)
365
- *
366
- * VALIDAÇÕES:
367
- * - e repo obrigatórios
368
- * - Page deve ser >= 1
369
- * - Limit deve ser entre 1 e 100
370
- *
371
- * RECOMENDAÇÕES:
372
- * - Use paginação para repositórios com muitos releases
373
- * - Monitore número total de releases
374
- * - Verifique status de draft e prerelease
375
- * - Mantenha releases organizados
376
- */
377
- listReleases(params: ReleasesInput, provider: VcsOperations): Promise<ReleasesResult>;
378
- /**
379
- * Obtém detalhes de um release específico
380
- *
381
- * FUNCIONALIDADE:
382
- * - Retorna informações completas do release
383
- * - Inclui tag, nome, descrição e status
384
- * - Mostra URLs de download
385
- *
386
- * PARÂMETROS OBRIGATÓRIOS:
387
- * - owner: Proprietário do repositório
388
- * - repo: Nome do repositório
389
- * - release_id: ID do release
390
- *
391
- * VALIDAÇÕES:
392
- * - Todos os parâmetros obrigatórios
393
- * - Release deve existir no repositório
394
- * - ID deve ser válido
395
- *
396
- * RECOMENDAÇÕES:
397
- * - Use para obter detalhes completos
398
- * - Verifique status de draft e prerelease
399
- * - Analise changelog e descrição
400
- * - Monitore URLs de download
401
- */
402
- getRelease(params: ReleasesInput, provider: VcsOperations): Promise<ReleasesResult>;
403
- /**
404
- * Atualiza um release existente
405
- *
406
- * FUNCIONALIDADE:
407
- * - Atualiza campos do release
408
- * - Suporta mudança de tag e descrição
409
- * - Permite alteração de status
410
- *
411
- * PARÂMETROS OBRIGATÓRIOS:
412
- * - owner: Proprietário do repositório
413
- * - repo: Nome do repositório
414
- * - release_id: ID do release
415
- *
416
- * PARÂMETROS OPCIONAIS:
417
- * - new_tag_name: Nova tag
418
- * - new_name: Novo nome
419
- * - new_body: Nova descrição
420
- * - new_draft: Novo status de draft
421
- * - new_prerelease: Novo status de prerelease
422
- * - new_target_commitish: Nova branch/commit alvo
423
- *
424
- * VALIDAÇÕES:
425
- * - Todos os parâmetros obrigatórios
426
- * - Release deve existir
427
- * - Pelo menos um campo deve ser atualizado
428
- *
429
- * RECOMENDAÇÕES:
430
- * - Atualize apenas campos necessários
431
- * - Use mensagens de commit descritivas
432
- * - Documente mudanças importantes
433
- * - Notifique usuários sobre mudanças
434
- */
435
- updateRelease(params: ReleasesInput, provider: VcsOperations): Promise<ReleasesResult>;
436
- /**
437
- * Deleta um release do repositório
438
- *
439
- * FUNCIONALIDADE:
440
- * - Remove release especificado
441
- * - Mantém tag associada (se existir)
442
- * - Confirma exclusão bem-sucedida
443
- *
444
- * PARÂMETROS OBRIGATÓRIOS:
445
- * - owner: Proprietário do repositório
446
- * - repo: Nome do repositório
447
- * - release_id: ID do release
448
- *
449
- * VALIDAÇÕES:
450
- * - Todos os parâmetros obrigatórios
451
- * - Release deve existir
452
- * - Usuário deve ter permissão de exclusão
453
- *
454
- * RECOMENDAÇÕES:
455
- * - Confirme exclusão antes de executar
456
- * - Verifique se release não está sendo usado
457
- * - Mantenha backup se necessário
458
- * - Documente motivo da exclusão
459
- */
460
- deleteRelease(params: ReleasesInput, provider: VcsOperations): Promise<ReleasesResult>;
461
- /**
462
- * Publica um release draft
463
- *
464
- * FUNCIONALIDADE:
465
- * - Altera status do release de draft para publicado
466
- * - Mantém todas as outras configurações
467
- * - Permite download público
468
- *
469
- * PARÂMETROS OBRIGATÓRIOS:
470
- * - owner: Proprietário do repositório
471
- * - repo: Nome do repositório
472
- * - release_id: ID do release
473
- *
474
- * VALIDAÇÕES:
475
- * - Todos os parâmetros obrigatórios
476
- * - Release deve existir
477
- * - Release deve estar como draft
478
- *
479
- * RECOMENDAÇÕES:
480
- * - Confirme que release está pronto
481
- * - Teste antes de publicar
482
- * - Verifique se não há bugs conhecidos
483
- * - Notifique usuários sobre nova versão
484
- */
485
- publishRelease(params: ReleasesInput, provider: VcsOperations): Promise<ReleasesResult>;
486
- };
487
- export {};
1
+ import { z } from 'zod';
2
+ import { VcsOperations } from '../providers/index.js';
3
+ /**
4
+ * Tool: releases
5
+ *
6
+ * DESCRIÇÃO:
7
+ * Gerenciamento completo de releases com suporte multi-provider (GitHub e Gitea)
8
+ *
9
+ * FUNCIONALIDADES:
10
+ * - Criação de novos releases
11
+ * - Listagem e busca de releases
12
+ * - Obtenção de detalhes específicos
13
+ * - Atualização de releases existentes
14
+ * - Publicação de releases
15
+ * - Exclusão de releases
16
+ * - Controle de versão
17
+ *
18
+ * USO:
19
+ * - Para gerenciar versões do software
20
+ * - Para controle de deploy
21
+ * - Para documentação de mudanças
22
+ * - Para distribuição de releases
23
+ *
24
+ * RECOMENDAÇÕES:
25
+ * - Use versionamento semântico
26
+ * - Documente mudanças detalhadamente
27
+ * - Teste antes de publicar
28
+ * - Mantenha histórico de versões
29
+ */
30
+ /**
31
+ * Schema de validação para entrada da tool releases
32
+ *
33
+ * VALIDAÇÕES:
34
+ * - action: Ação obrigatória (create, list, get, update, delete, publish)
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 ReleasesInputSchema: z.ZodObject<{
44
+ action: z.ZodEnum<["create", "list", "get", "update", "delete", "publish"]>;
45
+ repo: z.ZodString;
46
+ provider: z.ZodEnum<["gitea", "github"]>;
47
+ tag_name: z.ZodOptional<z.ZodString>;
48
+ name: z.ZodOptional<z.ZodString>;
49
+ body: z.ZodOptional<z.ZodString>;
50
+ draft: z.ZodOptional<z.ZodBoolean>;
51
+ prerelease: z.ZodOptional<z.ZodBoolean>;
52
+ target_commitish: z.ZodOptional<z.ZodString>;
53
+ release_id: z.ZodOptional<z.ZodNumber>;
54
+ page: z.ZodOptional<z.ZodNumber>;
55
+ limit: z.ZodOptional<z.ZodNumber>;
56
+ new_tag_name: z.ZodOptional<z.ZodString>;
57
+ new_name: z.ZodOptional<z.ZodString>;
58
+ new_body: z.ZodOptional<z.ZodString>;
59
+ new_draft: z.ZodOptional<z.ZodBoolean>;
60
+ new_prerelease: z.ZodOptional<z.ZodBoolean>;
61
+ new_target_commitish: z.ZodOptional<z.ZodString>;
62
+ latest: z.ZodOptional<z.ZodBoolean>;
63
+ }, "strip", z.ZodTypeAny, {
64
+ provider: "gitea" | "github";
65
+ repo: string;
66
+ action: "delete" | "get" | "list" | "create" | "update" | "publish";
67
+ name?: string | undefined;
68
+ body?: string | undefined;
69
+ tag_name?: string | undefined;
70
+ draft?: boolean | undefined;
71
+ prerelease?: boolean | undefined;
72
+ page?: number | undefined;
73
+ limit?: number | undefined;
74
+ new_name?: string | undefined;
75
+ new_body?: string | undefined;
76
+ target_commitish?: string | undefined;
77
+ release_id?: number | undefined;
78
+ new_tag_name?: string | undefined;
79
+ new_draft?: boolean | undefined;
80
+ new_prerelease?: boolean | undefined;
81
+ new_target_commitish?: string | undefined;
82
+ latest?: boolean | undefined;
83
+ }, {
84
+ provider: "gitea" | "github";
85
+ repo: string;
86
+ action: "delete" | "get" | "list" | "create" | "update" | "publish";
87
+ name?: string | undefined;
88
+ body?: string | undefined;
89
+ tag_name?: string | undefined;
90
+ draft?: boolean | undefined;
91
+ prerelease?: boolean | undefined;
92
+ page?: number | undefined;
93
+ limit?: number | undefined;
94
+ new_name?: string | undefined;
95
+ new_body?: string | undefined;
96
+ target_commitish?: string | undefined;
97
+ release_id?: number | undefined;
98
+ new_tag_name?: string | undefined;
99
+ new_draft?: boolean | undefined;
100
+ new_prerelease?: boolean | undefined;
101
+ new_target_commitish?: string | undefined;
102
+ latest?: boolean | undefined;
103
+ }>;
104
+ export type ReleasesInput = z.infer<typeof ReleasesInputSchema>;
105
+ /**
106
+ * Schema de saída padronizado
107
+ *
108
+ * ESTRUTURA:
109
+ * - success: Status da operação
110
+ * - action: Ação executada
111
+ * - message: Mensagem descritiva
112
+ * - data: Dados retornados (opcional)
113
+ * - error: Detalhes do erro (opcional)
114
+ */
115
+ declare const ReleasesResultSchema: z.ZodObject<{
116
+ success: z.ZodBoolean;
117
+ action: z.ZodString;
118
+ message: z.ZodString;
119
+ data: z.ZodOptional<z.ZodAny>;
120
+ error: z.ZodOptional<z.ZodString>;
121
+ }, "strip", z.ZodTypeAny, {
122
+ message: string;
123
+ action: string;
124
+ success: boolean;
125
+ error?: string | undefined;
126
+ data?: any;
127
+ }, {
128
+ message: string;
129
+ action: string;
130
+ success: boolean;
131
+ error?: string | undefined;
132
+ data?: any;
133
+ }>;
134
+ export type ReleasesResult = z.infer<typeof ReleasesResultSchema>;
135
+ /**
136
+ * Tool: releases
137
+ *
138
+ * DESCRIÇÃO:
139
+ * Gerenciamento completo de releases Gitea com múltiplas ações
140
+ *
141
+ * ACTIONS DISPONÍVEIS:
142
+ *
143
+ * 1. create - Criar novo release
144
+ * Parâmetros:
145
+ * - owner (obrigatório): Proprietário do repositório
146
+ * - repo (obrigatório): Nome do repositório
147
+ * - tag_name (obrigatório): Nome da tag do release
148
+ * - name (opcional): Nome do release
149
+ * - body (opcional): Descrição detalhada (changelog)
150
+ * - draft (opcional): Se é um draft release (padrão: false)
151
+ * - prerelease (opcional): Se é um prerelease (padrão: false)
152
+ * - target_commitish (opcional): Branch ou commit alvo (padrão: branch padrão)
153
+ *
154
+ * 2. list - Listar releases
155
+ * Parâmetros:
156
+ * - owner (obrigatório): Proprietário do repositório
157
+ * - repo (obrigatório): Nome do repositório
158
+ * - page (opcional): Página da listagem (padrão: 1)
159
+ * - limit (opcional): Itens por página (padrão: 30, máximo: 100)
160
+ *
161
+ * 3. get - Obter detalhes do release
162
+ * Parâmetros:
163
+ * - owner (obrigatório): Proprietário do repositório
164
+ * - repo (obrigatório): Nome do repositório
165
+ * - release_id (obrigatório): ID do release
166
+ *
167
+ * 4. update - Atualizar release existente
168
+ * Parâmetros:
169
+ * - owner (obrigatório): Proprietário do repositório
170
+ * - repo (obrigatório): Nome do repositório
171
+ * - release_id (obrigatório): ID do release
172
+ * - new_tag_name (opcional): Nova tag
173
+ * - new_name (opcional): Novo nome
174
+ * - new_body (opcional): Nova descrição
175
+ * - new_draft (opcional): Novo status de draft
176
+ * - new_prerelease (opcional): Novo status de prerelease
177
+ * - new_target_commitish (opcional): Nova branch/commit alvo
178
+ *
179
+ * 5. delete - Deletar release
180
+ * Parâmetros:
181
+ * - owner (obrigatório): Proprietário do repositório
182
+ * - repo (obrigatório): Nome do repositório
183
+ * - release_id (obrigatório): ID do release
184
+ *
185
+ * 6. publish - Publicar release
186
+ * Parâmetros:
187
+ * - owner (obrigatório): Proprietário do repositório
188
+ * - repo (obrigatório): Nome do repositório
189
+ * - release_id (obrigatório): ID do release
190
+ *
191
+ * RECOMENDAÇÕES DE USO:
192
+ * - Use versionamento semântico (ex: v1.0.0, v2.1.3)
193
+ * - Documente mudanças detalhadamente no body
194
+ * - Use drafts para releases em preparação
195
+ * - Marque prereleases adequadamente
196
+ * - Teste releases antes de publicar
197
+ * - Mantenha changelog organizado
198
+ */
199
+ export declare const releasesTool: {
200
+ name: string;
201
+ description: string;
202
+ inputSchema: {
203
+ type: string;
204
+ properties: {
205
+ action: {
206
+ type: string;
207
+ enum: string[];
208
+ description: string;
209
+ };
210
+ repo: {
211
+ type: string;
212
+ description: string;
213
+ };
214
+ provider: {
215
+ type: string;
216
+ description: string;
217
+ };
218
+ tag_name: {
219
+ type: string;
220
+ description: string;
221
+ };
222
+ name: {
223
+ type: string;
224
+ description: string;
225
+ };
226
+ body: {
227
+ type: string;
228
+ description: string;
229
+ };
230
+ draft: {
231
+ type: string;
232
+ description: string;
233
+ };
234
+ prerelease: {
235
+ type: string;
236
+ description: string;
237
+ };
238
+ target_commitish: {
239
+ type: string;
240
+ description: string;
241
+ };
242
+ release_id: {
243
+ type: string;
244
+ description: string;
245
+ };
246
+ page: {
247
+ type: string;
248
+ description: string;
249
+ minimum: number;
250
+ };
251
+ limit: {
252
+ type: string;
253
+ description: string;
254
+ minimum: number;
255
+ maximum: number;
256
+ };
257
+ new_tag_name: {
258
+ type: string;
259
+ description: string;
260
+ };
261
+ new_name: {
262
+ type: string;
263
+ description: string;
264
+ };
265
+ new_body: {
266
+ type: string;
267
+ description: string;
268
+ };
269
+ new_draft: {
270
+ type: string;
271
+ description: string;
272
+ };
273
+ new_prerelease: {
274
+ type: string;
275
+ description: string;
276
+ };
277
+ new_target_commitish: {
278
+ type: string;
279
+ description: string;
280
+ };
281
+ latest: {
282
+ type: string;
283
+ description: string;
284
+ };
285
+ };
286
+ required: string[];
287
+ };
288
+ /**
289
+ * Handler principal da tool releases
290
+ *
291
+ * FUNCIONALIDADE:
292
+ * - Valida entrada usando Zod schema
293
+ * - Roteia para método específico baseado na ação
294
+ * - Trata erros de forma uniforme
295
+ * - Retorna resultado padronizado
296
+ *
297
+ * FLUXO:
298
+ * 1. Validação de entrada
299
+ * 2. Seleção do provider
300
+ * 3. Roteamento por ação
301
+ * 4. Execução do método específico
302
+ * 5. Tratamento de erros
303
+ * 6. Retorno de resultado
304
+ *
305
+ * TRATAMENTO DE ERROS:
306
+ * - Validação: erro de schema
307
+ * - Execução: erro da operação
308
+ * - Roteamento: ação não suportada
309
+ *
310
+ * RECOMENDAÇÕES:
311
+ * - Sempre valide entrada antes de processar
312
+ * - Trate erros específicos adequadamente
313
+ * - Log detalhes de erro para debug
314
+ * - Retorne mensagens de erro úteis
315
+ */
316
+ handler(input: ReleasesInput): Promise<ReleasesResult>;
317
+ /**
318
+ * Cria um novo release no repositório
319
+ *
320
+ * FUNCIONALIDADE:
321
+ * - Cria release com tag e descrição
322
+ * - Suporta configuração de draft e prerelease
323
+ * - Permite especificar branch/commit alvo
324
+ *
325
+ * PARÂMETROS OBRIGATÓRIOS:
326
+ * - owner: Proprietário do repositório
327
+ * - repo: Nome do repositório
328
+ * - tag_name: Nome da tag do release
329
+ *
330
+ * PARÂMETROS OPCIONAIS:
331
+ * - name: Nome do release
332
+ * - body: Descrição detalhada (changelog)
333
+ * - draft: Se é um draft release (padrão: false)
334
+ * - prerelease: Se é um prerelease (padrão: false)
335
+ * - target_commitish: Branch ou commit alvo (padrão: branch padrão)
336
+ *
337
+ * VALIDAÇÕES:
338
+ * - Todos os parâmetros obrigatórios
339
+ * - Tag deve ser única no repositório
340
+ * - Target commitish deve existir
341
+ * - Usuário deve ter permissão de escrita
342
+ *
343
+ * RECOMENDAÇÕES:
344
+ * - Use versionamento semântico (ex: v1.0.0)
345
+ * - Documente mudanças detalhadamente
346
+ * - Use drafts para releases em preparação
347
+ * - Marque prereleases adequadamente
348
+ */
349
+ createRelease(params: ReleasesInput, provider: VcsOperations): Promise<ReleasesResult>;
350
+ /**
351
+ * Lista releases do repositório
352
+ *
353
+ * FUNCIONALIDADE:
354
+ * - Lista releases com paginação
355
+ * - Retorna informações básicas de cada release
356
+ * - Inclui status de draft e prerelease
357
+ *
358
+ * PARÂMETROS OBRIGATÓRIOS:
359
+ * - owner: Proprietário do repositório
360
+ * - repo: Nome do repositório
361
+ *
362
+ * PARÂMETROS OPCIONAIS:
363
+ * - page: Página da listagem (padrão: 1)
364
+ * - limit: Itens por página (padrão: 30, máximo: 100)
365
+ *
366
+ * VALIDAÇÕES:
367
+ * - e repo obrigatórios
368
+ * - Page deve ser >= 1
369
+ * - Limit deve ser entre 1 e 100
370
+ *
371
+ * RECOMENDAÇÕES:
372
+ * - Use paginação para repositórios com muitos releases
373
+ * - Monitore número total de releases
374
+ * - Verifique status de draft e prerelease
375
+ * - Mantenha releases organizados
376
+ */
377
+ listReleases(params: ReleasesInput, provider: VcsOperations): Promise<ReleasesResult>;
378
+ /**
379
+ * Obtém detalhes de um release específico
380
+ *
381
+ * FUNCIONALIDADE:
382
+ * - Retorna informações completas do release
383
+ * - Inclui tag, nome, descrição e status
384
+ * - Mostra URLs de download
385
+ *
386
+ * PARÂMETROS OBRIGATÓRIOS:
387
+ * - owner: Proprietário do repositório
388
+ * - repo: Nome do repositório
389
+ * - release_id: ID do release
390
+ *
391
+ * VALIDAÇÕES:
392
+ * - Todos os parâmetros obrigatórios
393
+ * - Release deve existir no repositório
394
+ * - ID deve ser válido
395
+ *
396
+ * RECOMENDAÇÕES:
397
+ * - Use para obter detalhes completos
398
+ * - Verifique status de draft e prerelease
399
+ * - Analise changelog e descrição
400
+ * - Monitore URLs de download
401
+ */
402
+ getRelease(params: ReleasesInput, provider: VcsOperations): Promise<ReleasesResult>;
403
+ /**
404
+ * Atualiza um release existente
405
+ *
406
+ * FUNCIONALIDADE:
407
+ * - Atualiza campos do release
408
+ * - Suporta mudança de tag e descrição
409
+ * - Permite alteração de status
410
+ *
411
+ * PARÂMETROS OBRIGATÓRIOS:
412
+ * - owner: Proprietário do repositório
413
+ * - repo: Nome do repositório
414
+ * - release_id: ID do release
415
+ *
416
+ * PARÂMETROS OPCIONAIS:
417
+ * - new_tag_name: Nova tag
418
+ * - new_name: Novo nome
419
+ * - new_body: Nova descrição
420
+ * - new_draft: Novo status de draft
421
+ * - new_prerelease: Novo status de prerelease
422
+ * - new_target_commitish: Nova branch/commit alvo
423
+ *
424
+ * VALIDAÇÕES:
425
+ * - Todos os parâmetros obrigatórios
426
+ * - Release deve existir
427
+ * - Pelo menos um campo deve ser atualizado
428
+ *
429
+ * RECOMENDAÇÕES:
430
+ * - Atualize apenas campos necessários
431
+ * - Use mensagens de commit descritivas
432
+ * - Documente mudanças importantes
433
+ * - Notifique usuários sobre mudanças
434
+ */
435
+ updateRelease(params: ReleasesInput, provider: VcsOperations): Promise<ReleasesResult>;
436
+ /**
437
+ * Deleta um release do repositório
438
+ *
439
+ * FUNCIONALIDADE:
440
+ * - Remove release especificado
441
+ * - Mantém tag associada (se existir)
442
+ * - Confirma exclusão bem-sucedida
443
+ *
444
+ * PARÂMETROS OBRIGATÓRIOS:
445
+ * - owner: Proprietário do repositório
446
+ * - repo: Nome do repositório
447
+ * - release_id: ID do release
448
+ *
449
+ * VALIDAÇÕES:
450
+ * - Todos os parâmetros obrigatórios
451
+ * - Release deve existir
452
+ * - Usuário deve ter permissão de exclusão
453
+ *
454
+ * RECOMENDAÇÕES:
455
+ * - Confirme exclusão antes de executar
456
+ * - Verifique se release não está sendo usado
457
+ * - Mantenha backup se necessário
458
+ * - Documente motivo da exclusão
459
+ */
460
+ deleteRelease(params: ReleasesInput, provider: VcsOperations): Promise<ReleasesResult>;
461
+ /**
462
+ * Publica um release draft
463
+ *
464
+ * FUNCIONALIDADE:
465
+ * - Altera status do release de draft para publicado
466
+ * - Mantém todas as outras configurações
467
+ * - Permite download público
468
+ *
469
+ * PARÂMETROS OBRIGATÓRIOS:
470
+ * - owner: Proprietário do repositório
471
+ * - repo: Nome do repositório
472
+ * - release_id: ID do release
473
+ *
474
+ * VALIDAÇÕES:
475
+ * - Todos os parâmetros obrigatórios
476
+ * - Release deve existir
477
+ * - Release deve estar como draft
478
+ *
479
+ * RECOMENDAÇÕES:
480
+ * - Confirme que release está pronto
481
+ * - Teste antes de publicar
482
+ * - Verifique se não há bugs conhecidos
483
+ * - Notifique usuários sobre nova versão
484
+ */
485
+ publishRelease(params: ReleasesInput, provider: VcsOperations): Promise<ReleasesResult>;
486
+ };
487
+ export {};
488
488
  //# sourceMappingURL=git-releases.d.ts.map