@andrebuzeli/git-mcp 2.28.1 → 2.29.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 (188) 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 -160
  8. package/dist/providers/base-provider.js +274 -274
  9. package/dist/providers/error-handler.d.ts +74 -50
  10. package/dist/providers/error-handler.d.ts.map +1 -1
  11. package/dist/providers/error-handler.js +234 -175
  12. package/dist/providers/error-handler.js.map +1 -1
  13. package/dist/providers/gitea-provider.d.ts +97 -97
  14. package/dist/providers/gitea-provider.d.ts.map +1 -1
  15. package/dist/providers/gitea-provider.js +1015 -1001
  16. package/dist/providers/gitea-provider.js.map +1 -1
  17. package/dist/providers/github-provider.d.ts +104 -104
  18. package/dist/providers/github-provider.d.ts.map +1 -1
  19. package/dist/providers/github-provider.js +1248 -1234
  20. package/dist/providers/github-provider.js.map +1 -1
  21. package/dist/providers/index.d.ts +12 -12
  22. package/dist/providers/index.js +40 -40
  23. package/dist/providers/provider-factory.d.ts +74 -74
  24. package/dist/providers/provider-factory.d.ts.map +1 -1
  25. package/dist/providers/provider-factory.js +318 -311
  26. package/dist/providers/provider-factory.js.map +1 -1
  27. package/dist/providers/types.d.ts +318 -318
  28. package/dist/providers/types.js +6 -6
  29. package/dist/server.d.ts +76 -76
  30. package/dist/server.js +306 -306
  31. package/dist/server.js.map +1 -1
  32. package/dist/tools/git-archive.d.ts +169 -165
  33. package/dist/tools/git-archive.d.ts.map +1 -1
  34. package/dist/tools/git-archive.js +246 -233
  35. package/dist/tools/git-archive.js.map +1 -1
  36. package/dist/tools/git-branches.d.ts +434 -430
  37. package/dist/tools/git-branches.d.ts.map +1 -1
  38. package/dist/tools/git-branches.js +640 -627
  39. package/dist/tools/git-branches.js.map +1 -1
  40. package/dist/tools/git-commits.d.ts +489 -485
  41. package/dist/tools/git-commits.d.ts.map +1 -1
  42. package/dist/tools/git-commits.js +748 -735
  43. package/dist/tools/git-commits.js.map +1 -1
  44. package/dist/tools/git-config.d.ts +144 -140
  45. package/dist/tools/git-config.d.ts.map +1 -1
  46. package/dist/tools/git-config.js +281 -268
  47. package/dist/tools/git-config.js.map +1 -1
  48. package/dist/tools/git-files.d.ts +490 -486
  49. package/dist/tools/git-files.d.ts.map +1 -1
  50. package/dist/tools/git-files.js +620 -607
  51. package/dist/tools/git-files.js.map +1 -1
  52. package/dist/tools/git-initialize.d.ts +46 -42
  53. package/dist/tools/git-initialize.d.ts.map +1 -1
  54. package/dist/tools/git-initialize.js +81 -68
  55. package/dist/tools/git-initialize.js.map +1 -1
  56. package/dist/tools/git-issues.d.ts +578 -571
  57. package/dist/tools/git-issues.d.ts.map +1 -1
  58. package/dist/tools/git-issues.js +754 -740
  59. package/dist/tools/git-issues.js.map +1 -1
  60. package/dist/tools/git-pulls.d.ts +701 -694
  61. package/dist/tools/git-pulls.d.ts.map +1 -1
  62. package/dist/tools/git-pulls.js +746 -732
  63. package/dist/tools/git-pulls.js.map +1 -1
  64. package/dist/tools/git-releases.d.ts +494 -487
  65. package/dist/tools/git-releases.d.ts.map +1 -1
  66. package/dist/tools/git-releases.js +571 -557
  67. package/dist/tools/git-releases.js.map +1 -1
  68. package/dist/tools/git-remote.d.ts +142 -138
  69. package/dist/tools/git-remote.d.ts.map +1 -1
  70. package/dist/tools/git-remote.js +287 -274
  71. package/dist/tools/git-remote.js.map +1 -1
  72. package/dist/tools/git-repositories.d.ts +487 -483
  73. package/dist/tools/git-repositories.d.ts.map +1 -1
  74. package/dist/tools/git-repositories.js +653 -640
  75. package/dist/tools/git-repositories.js.map +1 -1
  76. package/dist/tools/git-reset.d.ts +134 -130
  77. package/dist/tools/git-reset.d.ts.map +1 -1
  78. package/dist/tools/git-reset.js +236 -223
  79. package/dist/tools/git-reset.js.map +1 -1
  80. package/dist/tools/git-revert.d.ts +153 -149
  81. package/dist/tools/git-revert.d.ts.map +1 -1
  82. package/dist/tools/git-revert.js +211 -198
  83. package/dist/tools/git-revert.js.map +1 -1
  84. package/dist/tools/git-stash.d.ts +144 -140
  85. package/dist/tools/git-stash.d.ts.map +1 -1
  86. package/dist/tools/git-stash.js +282 -269
  87. package/dist/tools/git-stash.js.map +1 -1
  88. package/dist/tools/git-sync.d.ts +182 -178
  89. package/dist/tools/git-sync.d.ts.map +1 -1
  90. package/dist/tools/git-sync.js +325 -312
  91. package/dist/tools/git-sync.js.map +1 -1
  92. package/dist/tools/git-tags.d.ts +418 -411
  93. package/dist/tools/git-tags.d.ts.map +1 -1
  94. package/dist/tools/git-tags.js +499 -485
  95. package/dist/tools/git-tags.js.map +1 -1
  96. package/dist/tools/git-upload-project.d.ts +5 -1
  97. package/dist/tools/git-upload-project.d.ts.map +1 -1
  98. package/dist/tools/git-upload-project.js +21 -1
  99. package/dist/tools/git-upload-project.js.map +1 -1
  100. package/dist/tools/git-webhooks.d.ts +477 -470
  101. package/dist/tools/git-webhooks.d.ts.map +1 -1
  102. package/dist/tools/git-webhooks.js +561 -543
  103. package/dist/tools/git-webhooks.js.map +1 -1
  104. package/dist/utils/git-error-analyzer.d.ts +64 -0
  105. package/dist/utils/git-error-analyzer.d.ts.map +1 -0
  106. package/dist/utils/git-error-analyzer.js +286 -0
  107. package/dist/utils/git-error-analyzer.js.map +1 -0
  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 +2 -2
  113. package/dist/tools/gh-actions.d.ts +0 -253
  114. package/dist/tools/gh-actions.d.ts.map +0 -1
  115. package/dist/tools/gh-actions.js +0 -390
  116. package/dist/tools/gh-actions.js.map +0 -1
  117. package/dist/tools/gh-analytics.d.ts +0 -264
  118. package/dist/tools/gh-analytics.d.ts.map +0 -1
  119. package/dist/tools/gh-analytics.js +0 -402
  120. package/dist/tools/gh-analytics.js.map +0 -1
  121. package/dist/tools/gh-code-review.d.ts +0 -305
  122. package/dist/tools/gh-code-review.d.ts.map +0 -1
  123. package/dist/tools/gh-code-review.js +0 -513
  124. package/dist/tools/gh-code-review.js.map +0 -1
  125. package/dist/tools/gh-codespaces.d.ts +0 -139
  126. package/dist/tools/gh-codespaces.d.ts.map +0 -1
  127. package/dist/tools/gh-codespaces.js +0 -283
  128. package/dist/tools/gh-codespaces.js.map +0 -1
  129. package/dist/tools/gh-deployments.d.ts +0 -301
  130. package/dist/tools/gh-deployments.d.ts.map +0 -1
  131. package/dist/tools/gh-deployments.js +0 -368
  132. package/dist/tools/gh-deployments.js.map +0 -1
  133. package/dist/tools/gh-gists.d.ts +0 -175
  134. package/dist/tools/gh-gists.d.ts.map +0 -1
  135. package/dist/tools/gh-gists.js +0 -322
  136. package/dist/tools/gh-gists.js.map +0 -1
  137. package/dist/tools/gh-projects.d.ts +0 -206
  138. package/dist/tools/gh-projects.d.ts.map +0 -1
  139. package/dist/tools/gh-projects.js +0 -359
  140. package/dist/tools/gh-projects.js.map +0 -1
  141. package/dist/tools/gh-security.d.ts +0 -275
  142. package/dist/tools/gh-security.d.ts.map +0 -1
  143. package/dist/tools/gh-security.js +0 -396
  144. package/dist/tools/gh-security.js.map +0 -1
  145. package/dist/tools/gh-sync.d.ts +0 -214
  146. package/dist/tools/gh-sync.d.ts.map +0 -1
  147. package/dist/tools/gh-sync.js +0 -379
  148. package/dist/tools/gh-sync.js.map +0 -1
  149. package/dist/tools/gh-workflows.d.ts +0 -291
  150. package/dist/tools/gh-workflows.d.ts.map +0 -1
  151. package/dist/tools/gh-workflows.js +0 -433
  152. package/dist/tools/gh-workflows.js.map +0 -1
  153. package/dist/tools/git-bundle.d.ts +0 -172
  154. package/dist/tools/git-bundle.d.ts.map +0 -1
  155. package/dist/tools/git-bundle.js +0 -242
  156. package/dist/tools/git-bundle.js.map +0 -1
  157. package/dist/tools/git-cherry-pick.d.ts +0 -159
  158. package/dist/tools/git-cherry-pick.d.ts.map +0 -1
  159. package/dist/tools/git-cherry-pick.js +0 -225
  160. package/dist/tools/git-cherry-pick.js.map +0 -1
  161. package/dist/tools/git-rebase.d.ts +0 -138
  162. package/dist/tools/git-rebase.d.ts.map +0 -1
  163. package/dist/tools/git-rebase.js +0 -214
  164. package/dist/tools/git-rebase.js.map +0 -1
  165. package/dist/tools/git-submodule.d.ts +0 -153
  166. package/dist/tools/git-submodule.d.ts.map +0 -1
  167. package/dist/tools/git-submodule.js +0 -290
  168. package/dist/tools/git-submodule.js.map +0 -1
  169. package/dist/tools/git-worktree.d.ts +0 -160
  170. package/dist/tools/git-worktree.d.ts.map +0 -1
  171. package/dist/tools/git-worktree.js +0 -270
  172. package/dist/tools/git-worktree.js.map +0 -1
  173. package/dist/tools/repositories.d.ts +0 -406
  174. package/dist/tools/repositories.d.ts.map +0 -1
  175. package/dist/tools/repositories.js +0 -570
  176. package/dist/tools/repositories.js.map +0 -1
  177. package/dist/tools/users.d.ts +0 -373
  178. package/dist/tools/users.d.ts.map +0 -1
  179. package/dist/tools/users.js +0 -500
  180. package/dist/tools/users.js.map +0 -1
  181. package/dist/tools/validator.d.ts +0 -171
  182. package/dist/tools/validator.d.ts.map +0 -1
  183. package/dist/tools/validator.js +0 -195
  184. package/dist/tools/validator.js.map +0 -1
  185. package/dist/tools/version-control.d.ts +0 -137
  186. package/dist/tools/version-control.d.ts.map +0 -1
  187. package/dist/tools/version-control.js +0 -165
  188. package/dist/tools/version-control.js.map +0 -1
@@ -1,242 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.gitBundleTool = void 0;
4
- const zod_1 = require("zod");
5
- const terminal_controller_js_1 = require("../utils/terminal-controller.js");
6
- /**
7
- * Tool: git-bundle
8
- *
9
- * DESCRIÇÃO:
10
- * Gerenciamento de bundles Git (GitHub + Gitea) com múltiplas ações
11
- *
12
- * FUNCIONALIDADES:
13
- * - Criar bundle
14
- * - Verificar bundle
15
- * - Listar heads do bundle
16
- * - Unbundle
17
- * - Criar bundle incremental
18
- * - Criar bundle com tags
19
- *
20
- * USO:
21
- * - Para transferir repositórios offline
22
- * - Para backup completo de repositórios
23
- * - Para sincronização sem rede
24
- * - Para distribuição de código
25
- *
26
- * RECOMENDAÇÕES:
27
- * - Use para transferências offline
28
- * - Inclua tags quando necessário
29
- * - Verifique bundles antes de usar
30
- */
31
- const GitBundleInputSchema = zod_1.z.object({
32
- action: zod_1.z.enum(['create', 'verify', 'list-heads', 'unbundle']),
33
- // owner: obtido automaticamente do provider,
34
- repo: zod_1.z.string(),
35
- provider: zod_1.z.enum(['gitea', 'github']).describe('Provider to use (gitea or github)'),
36
- projectPath: zod_1.z.string().describe('Local project path for git operations'),
37
- // Para create
38
- bundle_file: zod_1.z.string().optional(),
39
- commit_range: zod_1.z.string().optional(),
40
- branch_name: zod_1.z.string().optional(),
41
- // Para verify
42
- verify_bundle: zod_1.z.string().optional(),
43
- // Para list-heads
44
- list_bundle: zod_1.z.string().optional(),
45
- // Para unbundle
46
- unbundle_file: zod_1.z.string().optional(),
47
- unbundle_path: zod_1.z.string().optional(),
48
- // Opções
49
- all_branches: zod_1.z.boolean().optional(),
50
- all_tags: zod_1.z.boolean().optional(),
51
- all_remotes: zod_1.z.boolean().optional(),
52
- });
53
- const GitBundleResultSchema = zod_1.z.object({
54
- success: zod_1.z.boolean(),
55
- action: zod_1.z.string(),
56
- message: zod_1.z.string(),
57
- data: zod_1.z.any().optional(),
58
- error: zod_1.z.string().optional()
59
- });
60
- exports.gitBundleTool = {
61
- name: 'git-bundle',
62
- description: 'tool: Gerencia bundles Git para transferência offline de repositórios\n──────────────\naction create: cria bundle do repositório\naction create requires: repo, provider, projectPath, bundle_file, commit_range, branch_name, all_branches, all_tags, all_remotes\n───────────────\naction verify: verifica integridade do bundle\naction verify requires: repo, provider, projectPath, verify_bundle\n───────────────\naction list-heads: lista heads do bundle\naction list-heads requires: repo, provider, projectPath, list_bundle\n───────────────\naction unbundle: extrai bundle para repositório\naction unbundle requires: repo, provider, projectPath, unbundle_file, unbundle_path',
63
- inputSchema: {
64
- type: 'object',
65
- properties: {
66
- action: {
67
- type: 'string',
68
- enum: ['create', 'verify', 'list-heads', 'unbundle'],
69
- description: 'Action to perform on bundles'
70
- },
71
- owner: { type: 'string', description: 'Repository owner' },
72
- repo: { type: 'string', description: 'Repository name' },
73
- provider: { type: 'string', enum: ['gitea', 'github'], description: 'Provider to use (gitea or github)' },
74
- projectPath: { type: 'string', description: 'Local project path for git operations' },
75
- bundle_file: { type: 'string', description: 'Bundle file path' },
76
- commit_range: { type: 'string', description: 'Commit range for bundle' },
77
- branch_name: { type: 'string', description: 'Branch name for bundle' },
78
- verify_bundle: { type: 'string', description: 'Bundle file to verify' },
79
- list_bundle: { type: 'string', description: 'Bundle file to list heads' },
80
- unbundle_file: { type: 'string', description: 'Bundle file to unbundle' },
81
- unbundle_path: { type: 'string', description: 'Path to unbundle to' },
82
- all_branches: { type: 'boolean', description: 'Include all branches' },
83
- all_tags: { type: 'boolean', description: 'Include all tags' },
84
- all_remotes: { type: 'boolean', description: 'Include all remotes' }
85
- },
86
- required: ['action', 'repo', 'provider', 'projectPath']
87
- },
88
- async handler(input) {
89
- try {
90
- const validatedInput = GitBundleInputSchema.parse(input);
91
- switch (validatedInput.action) {
92
- case 'create':
93
- return await this.create(validatedInput);
94
- case 'verify':
95
- return await this.verify(validatedInput);
96
- case 'list-heads':
97
- return await this.listHeads(validatedInput);
98
- case 'unbundle':
99
- return await this.unbundle(validatedInput);
100
- default:
101
- throw new Error(`Ação não suportada: ${validatedInput.action}`);
102
- }
103
- }
104
- catch (error) {
105
- return {
106
- success: false,
107
- action: input.action,
108
- message: 'Erro na operação de bundle',
109
- error: error instanceof Error ? error.message : String(error)
110
- };
111
- }
112
- },
113
- async create(params) {
114
- try {
115
- if (!params.bundle_file) {
116
- throw new Error('bundle_file é obrigatório para create');
117
- }
118
- let gitCommand = `bundle create ${params.bundle_file}`;
119
- if (params.all_branches) {
120
- gitCommand += ' --all';
121
- }
122
- else if (params.all_tags) {
123
- gitCommand += ' --all-tags';
124
- }
125
- else if (params.all_remotes) {
126
- gitCommand += ' --all-remotes';
127
- }
128
- else if (params.commit_range) {
129
- gitCommand += ` ${params.commit_range}`;
130
- }
131
- else if (params.branch_name) {
132
- gitCommand += ` ${params.branch_name}`;
133
- }
134
- else {
135
- gitCommand += ' HEAD';
136
- }
137
- const result = await (0, terminal_controller_js_1.runGitCommand)(gitCommand, params.projectPath, 'Criando bundle');
138
- if (result.exitCode !== 0) {
139
- throw new Error(`Falha ao criar bundle: ${result.output}`);
140
- }
141
- return {
142
- success: true,
143
- action: 'create',
144
- message: `Bundle criado com sucesso: ${params.bundle_file}`,
145
- data: {
146
- bundle_file: params.bundle_file,
147
- commit_range: params.commit_range,
148
- branch_name: params.branch_name,
149
- all_branches: params.all_branches,
150
- all_tags: params.all_tags,
151
- all_remotes: params.all_remotes,
152
- output: result.output
153
- }
154
- };
155
- }
156
- catch (error) {
157
- throw new Error(`Falha ao criar bundle: ${error instanceof Error ? error.message : String(error)}`);
158
- }
159
- },
160
- async verify(params) {
161
- try {
162
- if (!params.verify_bundle) {
163
- throw new Error('verify_bundle é obrigatório para verify');
164
- }
165
- const result = await (0, terminal_controller_js_1.runGitCommand)(`bundle verify ${params.verify_bundle}`, params.projectPath, 'Verificando bundle');
166
- const isValid = result.exitCode === 0;
167
- return {
168
- success: true,
169
- action: 'verify',
170
- message: `Bundle ${isValid ? 'válido' : 'inválido'}: ${params.verify_bundle}`,
171
- data: {
172
- bundle: params.verify_bundle,
173
- valid: isValid,
174
- output: result.output
175
- }
176
- };
177
- }
178
- catch (error) {
179
- throw new Error(`Falha ao verificar bundle: ${error instanceof Error ? error.message : String(error)}`);
180
- }
181
- },
182
- async listHeads(params) {
183
- try {
184
- if (!params.list_bundle) {
185
- throw new Error('list_bundle é obrigatório para list-heads');
186
- }
187
- const result = await (0, terminal_controller_js_1.runGitCommand)(`bundle list-heads ${params.list_bundle}`, params.projectPath, 'Listando heads do bundle');
188
- if (result.exitCode !== 0) {
189
- throw new Error(`Falha ao listar heads do bundle: ${result.output}`);
190
- }
191
- const heads = result.output.split('\n')
192
- .filter((line) => line.trim())
193
- .map((line) => {
194
- const parts = line.trim().split(' ');
195
- return {
196
- commit: parts[0],
197
- ref: parts[1] || 'HEAD'
198
- };
199
- });
200
- return {
201
- success: true,
202
- action: 'list-heads',
203
- message: `Heads do bundle listados com sucesso: ${params.list_bundle}`,
204
- data: {
205
- bundle: params.list_bundle,
206
- heads,
207
- output: result.output
208
- }
209
- };
210
- }
211
- catch (error) {
212
- throw new Error(`Falha ao listar heads do bundle: ${error instanceof Error ? error.message : String(error)}`);
213
- }
214
- },
215
- async unbundle(params) {
216
- try {
217
- if (!params.unbundle_file) {
218
- throw new Error('unbundle_file é obrigatório para unbundle');
219
- }
220
- const unbundlePath = params.unbundle_path || params.projectPath;
221
- const gitCommand = `bundle unbundle ${params.unbundle_file}`;
222
- const result = await (0, terminal_controller_js_1.runGitCommand)(gitCommand, unbundlePath, 'Unbundling bundle');
223
- if (result.exitCode !== 0) {
224
- throw new Error(`Falha ao unbundle: ${result.output}`);
225
- }
226
- return {
227
- success: true,
228
- action: 'unbundle',
229
- message: `Bundle unbundled com sucesso: ${params.unbundle_file}`,
230
- data: {
231
- bundle_file: params.unbundle_file,
232
- unbundle_path: unbundlePath,
233
- output: result.output
234
- }
235
- };
236
- }
237
- catch (error) {
238
- throw new Error(`Falha ao unbundle: ${error instanceof Error ? error.message : String(error)}`);
239
- }
240
- }
241
- };
242
- //# sourceMappingURL=git-bundle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git-bundle.js","sourceRoot":"","sources":["../../src/tools/git-bundle.ts"],"names":[],"mappings":"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"}
@@ -1,159 +0,0 @@
1
- import { z } from 'zod';
2
- /**
3
- * Tool: git-cherry-pick
4
- *
5
- * DESCRIÇÃO:
6
- * Gerenciamento de cherry-pick Git (GitHub + Gitea) com múltiplas ações
7
- *
8
- * FUNCIONALIDADES:
9
- * - Cherry-pick commit específico
10
- * - Cherry-pick range de commits
11
- * - Abortar cherry-pick
12
- * - Continuar cherry-pick
13
- * - Cherry-pick sem commit
14
- * - Cherry-pick com estratégia
15
- *
16
- * USO:
17
- * - Para aplicar commits específicos
18
- * - Para portar correções entre branches
19
- * - Para selecionar mudanças específicas
20
- * - Para manter histórico limpo
21
- *
22
- * RECOMENDAÇÕES:
23
- * - Use para commits pequenos e focados
24
- * - Teste antes de aplicar em produção
25
- * - Documente commits cherry-picked
26
- */
27
- declare const GitCherryPickInputSchema: z.ZodObject<{
28
- action: z.ZodEnum<["cherry-pick", "cherry-pick-range", "abort", "continue"]>;
29
- repo: z.ZodString;
30
- provider: z.ZodEnum<["gitea", "github"]>;
31
- projectPath: z.ZodString;
32
- commit_hash: z.ZodOptional<z.ZodString>;
33
- commit_range: z.ZodOptional<z.ZodString>;
34
- start_commit: z.ZodOptional<z.ZodString>;
35
- end_commit: z.ZodOptional<z.ZodString>;
36
- no_commit: z.ZodOptional<z.ZodBoolean>;
37
- strategy: z.ZodOptional<z.ZodEnum<["ours", "theirs"]>>;
38
- mainline: z.ZodOptional<z.ZodNumber>;
39
- signoff: z.ZodOptional<z.ZodBoolean>;
40
- }, "strip", z.ZodTypeAny, {
41
- provider: "gitea" | "github";
42
- repo: string;
43
- action: "cherry-pick" | "abort" | "continue" | "cherry-pick-range";
44
- projectPath: string;
45
- commit_range?: string | undefined;
46
- commit_hash?: string | undefined;
47
- no_commit?: boolean | undefined;
48
- mainline?: number | undefined;
49
- strategy?: "ours" | "theirs" | undefined;
50
- start_commit?: string | undefined;
51
- end_commit?: string | undefined;
52
- signoff?: boolean | undefined;
53
- }, {
54
- provider: "gitea" | "github";
55
- repo: string;
56
- action: "cherry-pick" | "abort" | "continue" | "cherry-pick-range";
57
- projectPath: string;
58
- commit_range?: string | undefined;
59
- commit_hash?: string | undefined;
60
- no_commit?: boolean | undefined;
61
- mainline?: number | undefined;
62
- strategy?: "ours" | "theirs" | undefined;
63
- start_commit?: string | undefined;
64
- end_commit?: string | undefined;
65
- signoff?: boolean | undefined;
66
- }>;
67
- export type GitCherryPickInput = z.infer<typeof GitCherryPickInputSchema>;
68
- declare const GitCherryPickResultSchema: z.ZodObject<{
69
- success: z.ZodBoolean;
70
- action: z.ZodString;
71
- message: z.ZodString;
72
- data: z.ZodOptional<z.ZodAny>;
73
- error: z.ZodOptional<z.ZodString>;
74
- }, "strip", z.ZodTypeAny, {
75
- message: string;
76
- action: string;
77
- success: boolean;
78
- error?: string | undefined;
79
- data?: any;
80
- }, {
81
- message: string;
82
- action: string;
83
- success: boolean;
84
- error?: string | undefined;
85
- data?: any;
86
- }>;
87
- export type GitCherryPickResult = z.infer<typeof GitCherryPickResultSchema>;
88
- export declare const gitCherryPickTool: {
89
- name: string;
90
- description: string;
91
- inputSchema: {
92
- type: string;
93
- properties: {
94
- action: {
95
- type: string;
96
- enum: string[];
97
- description: string;
98
- };
99
- owner: {
100
- type: string;
101
- description: string;
102
- };
103
- repo: {
104
- type: string;
105
- description: string;
106
- };
107
- provider: {
108
- type: string;
109
- enum: string[];
110
- description: string;
111
- };
112
- projectPath: {
113
- type: string;
114
- description: string;
115
- };
116
- commit_hash: {
117
- type: string;
118
- description: string;
119
- };
120
- commit_range: {
121
- type: string;
122
- description: string;
123
- };
124
- start_commit: {
125
- type: string;
126
- description: string;
127
- };
128
- end_commit: {
129
- type: string;
130
- description: string;
131
- };
132
- no_commit: {
133
- type: string;
134
- description: string;
135
- };
136
- strategy: {
137
- type: string;
138
- enum: string[];
139
- description: string;
140
- };
141
- mainline: {
142
- type: string;
143
- description: string;
144
- };
145
- signoff: {
146
- type: string;
147
- description: string;
148
- };
149
- };
150
- required: string[];
151
- };
152
- handler(input: GitCherryPickInput): Promise<GitCherryPickResult>;
153
- cherryPick(params: GitCherryPickInput): Promise<GitCherryPickResult>;
154
- cherryPickRange(params: GitCherryPickInput): Promise<GitCherryPickResult>;
155
- abort(params: GitCherryPickInput): Promise<GitCherryPickResult>;
156
- continue(params: GitCherryPickInput): Promise<GitCherryPickResult>;
157
- };
158
- export {};
159
- //# sourceMappingURL=git-cherry-pick.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git-cherry-pick.d.ts","sourceRoot":"","sources":["../../src/tools/git-cherry-pick.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AAEH,QAAA,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoB5B,CAAC;AAEH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,QAAA,MAAM,yBAAyB;;;;;;;;;;;;;;;;;;EAM7B,CAAC;AAEH,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,yBAAyB,CAAC,CAAC;AAE5E,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBA2BP,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;uBA0B7C,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;4BAoD5C,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;kBAgD3D,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;qBA0B9C,kBAAkB,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAyBzE,CAAC"}
@@ -1,225 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.gitCherryPickTool = void 0;
4
- const zod_1 = require("zod");
5
- const terminal_controller_js_1 = require("../utils/terminal-controller.js");
6
- /**
7
- * Tool: git-cherry-pick
8
- *
9
- * DESCRIÇÃO:
10
- * Gerenciamento de cherry-pick Git (GitHub + Gitea) com múltiplas ações
11
- *
12
- * FUNCIONALIDADES:
13
- * - Cherry-pick commit específico
14
- * - Cherry-pick range de commits
15
- * - Abortar cherry-pick
16
- * - Continuar cherry-pick
17
- * - Cherry-pick sem commit
18
- * - Cherry-pick com estratégia
19
- *
20
- * USO:
21
- * - Para aplicar commits específicos
22
- * - Para portar correções entre branches
23
- * - Para selecionar mudanças específicas
24
- * - Para manter histórico limpo
25
- *
26
- * RECOMENDAÇÕES:
27
- * - Use para commits pequenos e focados
28
- * - Teste antes de aplicar em produção
29
- * - Documente commits cherry-picked
30
- */
31
- const GitCherryPickInputSchema = zod_1.z.object({
32
- action: zod_1.z.enum(['cherry-pick', 'cherry-pick-range', 'abort', 'continue']),
33
- // owner: obtido automaticamente do provider,
34
- repo: zod_1.z.string(),
35
- provider: zod_1.z.enum(['gitea', 'github']).describe('Provider to use (gitea or github)'),
36
- projectPath: zod_1.z.string().describe('Local project path for git operations'),
37
- // Para cherry-pick
38
- commit_hash: zod_1.z.string().optional(),
39
- commit_range: zod_1.z.string().optional(),
40
- // Para cherry-pick-range
41
- start_commit: zod_1.z.string().optional(),
42
- end_commit: zod_1.z.string().optional(),
43
- // Opções
44
- no_commit: zod_1.z.boolean().optional(),
45
- strategy: zod_1.z.enum(['ours', 'theirs']).optional(),
46
- mainline: zod_1.z.number().optional(),
47
- signoff: zod_1.z.boolean().optional(),
48
- });
49
- const GitCherryPickResultSchema = zod_1.z.object({
50
- success: zod_1.z.boolean(),
51
- action: zod_1.z.string(),
52
- message: zod_1.z.string(),
53
- data: zod_1.z.any().optional(),
54
- error: zod_1.z.string().optional()
55
- });
56
- exports.gitCherryPickTool = {
57
- name: 'git-cherry-pick',
58
- description: 'tool: Gerencia operações Git cherry-pick para aplicar commits específicos\n──────────────\naction cherry-pick: aplica commit específico\naction cherry-pick requires: repo, provider, projectPath, commit_hash, no_commit, strategy, mainline, signoff\n───────────────\naction cherry-pick-range: aplica range de commits\naction cherry-pick-range requires: repo, provider, projectPath, commit_range, start_commit, end_commit, no_commit, strategy, signoff\n───────────────\naction abort: aborta cherry-pick em andamento\naction abort requires: repo, provider, projectPath\n───────────────\naction continue: continua cherry-pick pausado\naction continue requires: repo, provider, projectPath',
59
- inputSchema: {
60
- type: 'object',
61
- properties: {
62
- action: {
63
- type: 'string',
64
- enum: ['cherry-pick', 'cherry-pick-range', 'abort', 'continue'],
65
- description: 'Action to perform on cherry-pick'
66
- },
67
- owner: { type: 'string', description: 'Repository owner' },
68
- repo: { type: 'string', description: 'Repository name' },
69
- provider: { type: 'string', enum: ['gitea', 'github'], description: 'Provider to use (gitea or github)' },
70
- projectPath: { type: 'string', description: 'Local project path for git operations' },
71
- commit_hash: { type: 'string', description: 'Commit hash to cherry-pick' },
72
- commit_range: { type: 'string', description: 'Commit range to cherry-pick' },
73
- start_commit: { type: 'string', description: 'Start commit for range' },
74
- end_commit: { type: 'string', description: 'End commit for range' },
75
- no_commit: { type: 'boolean', description: 'Do not commit automatically' },
76
- strategy: { type: 'string', enum: ['ours', 'theirs'], description: 'Cherry-pick strategy' },
77
- mainline: { type: 'number', description: 'Mainline for merge commits' },
78
- signoff: { type: 'boolean', description: 'Add signoff to commit' }
79
- },
80
- required: ['action', 'repo', 'provider', 'projectPath']
81
- },
82
- async handler(input) {
83
- try {
84
- const validatedInput = GitCherryPickInputSchema.parse(input);
85
- switch (validatedInput.action) {
86
- case 'cherry-pick':
87
- return await this.cherryPick(validatedInput);
88
- case 'cherry-pick-range':
89
- return await this.cherryPickRange(validatedInput);
90
- case 'abort':
91
- return await this.abort(validatedInput);
92
- case 'continue':
93
- return await this.continue(validatedInput);
94
- default:
95
- throw new Error(`Ação não suportada: ${validatedInput.action}`);
96
- }
97
- }
98
- catch (error) {
99
- return {
100
- success: false,
101
- action: input.action,
102
- message: 'Erro na operação de cherry-pick',
103
- error: error instanceof Error ? error.message : String(error)
104
- };
105
- }
106
- },
107
- async cherryPick(params) {
108
- try {
109
- if (!params.commit_hash) {
110
- throw new Error('commit_hash é obrigatório para cherry-pick');
111
- }
112
- let gitCommand = `cherry-pick ${params.commit_hash}`;
113
- if (params.no_commit) {
114
- gitCommand += ' --no-commit';
115
- }
116
- if (params.strategy) {
117
- gitCommand += ` -X ${params.strategy}`;
118
- }
119
- if (params.mainline) {
120
- gitCommand += ` -m ${params.mainline}`;
121
- }
122
- if (params.signoff) {
123
- gitCommand += ' --signoff';
124
- }
125
- const result = await (0, terminal_controller_js_1.runGitCommand)(gitCommand, params.projectPath, 'Executando cherry-pick');
126
- if (result.exitCode !== 0) {
127
- throw new Error(`Falha no cherry-pick: ${result.output}`);
128
- }
129
- return {
130
- success: true,
131
- action: 'cherry-pick',
132
- message: `Commit ${params.commit_hash} cherry-picked com sucesso`,
133
- data: {
134
- commit_hash: params.commit_hash,
135
- no_commit: params.no_commit,
136
- strategy: params.strategy,
137
- mainline: params.mainline,
138
- signoff: params.signoff,
139
- output: result.output
140
- }
141
- };
142
- }
143
- catch (error) {
144
- throw new Error(`Falha ao executar cherry-pick: ${error instanceof Error ? error.message : String(error)}`);
145
- }
146
- },
147
- async cherryPickRange(params) {
148
- try {
149
- if (!params.start_commit || !params.end_commit) {
150
- throw new Error('start_commit e end_commit são obrigatórios para cherry-pick-range');
151
- }
152
- let gitCommand = `cherry-pick ${params.start_commit}..${params.end_commit}`;
153
- if (params.no_commit) {
154
- gitCommand += ' --no-commit';
155
- }
156
- if (params.strategy) {
157
- gitCommand += ` -X ${params.strategy}`;
158
- }
159
- if (params.signoff) {
160
- gitCommand += ' --signoff';
161
- }
162
- const result = await (0, terminal_controller_js_1.runGitCommand)(gitCommand, params.projectPath, 'Executando cherry-pick de range');
163
- if (result.exitCode !== 0) {
164
- throw new Error(`Falha no cherry-pick de range: ${result.output}`);
165
- }
166
- return {
167
- success: true,
168
- action: 'cherry-pick-range',
169
- message: `Range ${params.start_commit}..${params.end_commit} cherry-picked com sucesso`,
170
- data: {
171
- start_commit: params.start_commit,
172
- end_commit: params.end_commit,
173
- no_commit: params.no_commit,
174
- strategy: params.strategy,
175
- signoff: params.signoff,
176
- output: result.output
177
- }
178
- };
179
- }
180
- catch (error) {
181
- throw new Error(`Falha ao executar cherry-pick de range: ${error instanceof Error ? error.message : String(error)}`);
182
- }
183
- },
184
- async abort(params) {
185
- try {
186
- const result = await (0, terminal_controller_js_1.runGitCommand)(`cherry-pick --abort`, params.projectPath, 'Abortando cherry-pick');
187
- if (result.exitCode !== 0) {
188
- throw new Error(`Falha ao abortar cherry-pick: ${result.output}`);
189
- }
190
- return {
191
- success: true,
192
- action: 'abort',
193
- message: 'Cherry-pick abortado com sucesso',
194
- data: {
195
- aborted: true,
196
- output: result.output
197
- }
198
- };
199
- }
200
- catch (error) {
201
- throw new Error(`Falha ao abortar cherry-pick: ${error instanceof Error ? error.message : String(error)}`);
202
- }
203
- },
204
- async continue(params) {
205
- try {
206
- const result = await (0, terminal_controller_js_1.runGitCommand)(`cherry-pick --continue`, params.projectPath, 'Continuando cherry-pick');
207
- if (result.exitCode !== 0) {
208
- throw new Error(`Falha ao continuar cherry-pick: ${result.output}`);
209
- }
210
- return {
211
- success: true,
212
- action: 'continue',
213
- message: 'Cherry-pick continuado com sucesso',
214
- data: {
215
- continued: true,
216
- output: result.output
217
- }
218
- };
219
- }
220
- catch (error) {
221
- throw new Error(`Falha ao continuar cherry-pick: ${error instanceof Error ? error.message : String(error)}`);
222
- }
223
- }
224
- };
225
- //# sourceMappingURL=git-cherry-pick.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git-cherry-pick.js","sourceRoot":"","sources":["../../src/tools/git-cherry-pick.ts"],"names":[],"mappings":"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"}