@andrebuzeli/git-mcp 5.5.1 → 5.8.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 (232) hide show
  1. package/README.md +94 -6
  2. package/dist/config.d.ts +5 -131
  3. package/dist/config.js +28 -430
  4. package/dist/index.d.ts +1 -21
  5. package/dist/index.js +118 -140
  6. package/dist/providers/giteaProvider.d.ts +3 -0
  7. package/dist/providers/giteaProvider.js +12 -0
  8. package/dist/providers/githubProvider.d.ts +2 -0
  9. package/dist/providers/githubProvider.js +7 -0
  10. package/dist/providers/providerManager.d.ts +11 -0
  11. package/dist/providers/providerManager.js +48 -0
  12. package/dist/resources/toolsGuide.d.ts +12 -0
  13. package/dist/resources/toolsGuide.js +1491 -0
  14. package/dist/server.d.ts +7 -40
  15. package/dist/server.js +59 -696
  16. package/dist/tools/gitAnalytics.d.ts +29 -0
  17. package/dist/tools/gitAnalytics.js +72 -0
  18. package/dist/tools/gitArchive.d.ts +6 -0
  19. package/dist/tools/gitArchive.js +27 -0
  20. package/dist/tools/gitBackup.d.ts +10 -0
  21. package/dist/tools/gitBackup.js +44 -0
  22. package/dist/tools/gitBranches.d.ts +72 -0
  23. package/dist/tools/gitBranches.js +98 -0
  24. package/dist/tools/gitConfig.d.ts +34 -0
  25. package/dist/tools/gitConfig.js +73 -0
  26. package/dist/tools/gitFiles.d.ts +30 -0
  27. package/dist/tools/gitFiles.js +55 -0
  28. package/dist/tools/gitHistory.d.ts +17 -0
  29. package/dist/tools/gitHistory.js +365 -0
  30. package/dist/tools/gitIssues.d.ts +6 -0
  31. package/dist/tools/gitIssues.js +279 -0
  32. package/dist/tools/gitMonitor.d.ts +51 -0
  33. package/dist/tools/gitMonitor.js +102 -0
  34. package/dist/tools/gitPackages.d.ts +6 -0
  35. package/dist/tools/gitPackages.js +28 -0
  36. package/dist/tools/gitPulls.d.ts +6 -0
  37. package/dist/tools/gitPulls.js +288 -0
  38. package/dist/tools/gitRelease.d.ts +6 -0
  39. package/dist/tools/gitRelease.js +321 -0
  40. package/dist/tools/gitRemote.d.ts +51 -0
  41. package/dist/tools/gitRemote.js +68 -0
  42. package/dist/tools/gitReset.d.ts +34 -0
  43. package/dist/tools/gitReset.js +64 -0
  44. package/dist/tools/gitStash.d.ts +41 -0
  45. package/dist/tools/gitStash.js +67 -0
  46. package/dist/tools/gitSync.d.ts +25 -0
  47. package/dist/tools/gitSync.js +51 -0
  48. package/dist/tools/gitTags.d.ts +30 -0
  49. package/dist/tools/gitTags.js +69 -0
  50. package/dist/tools/gitUpdate.d.ts +14 -0
  51. package/dist/tools/gitUpdate.js +374 -0
  52. package/dist/tools/gitUpload.d.ts +11 -0
  53. package/dist/tools/gitUpload.js +342 -0
  54. package/dist/tools/gitWorkflow.d.ts +6 -0
  55. package/dist/tools/gitWorkflow.js +303 -0
  56. package/dist/types.d.ts +17 -0
  57. package/dist/types.js +2 -0
  58. package/dist/utils/errors.d.ts +13 -0
  59. package/dist/utils/errors.js +22 -0
  60. package/dist/utils/safetyController.d.ts +1 -0
  61. package/dist/utils/safetyController.js +15 -0
  62. package/package.json +8 -3
  63. package/dist/config.d.ts.map +0 -1
  64. package/dist/config.js.map +0 -1
  65. package/dist/index.d.ts.map +0 -1
  66. package/dist/index.js.map +0 -1
  67. package/dist/providers/base-provider.d.ts +0 -66
  68. package/dist/providers/base-provider.d.ts.map +0 -1
  69. package/dist/providers/base-provider.js +0 -65
  70. package/dist/providers/base-provider.js.map +0 -1
  71. package/dist/providers/gitea-provider.d.ts +0 -79
  72. package/dist/providers/gitea-provider.d.ts.map +0 -1
  73. package/dist/providers/gitea-provider.js +0 -576
  74. package/dist/providers/gitea-provider.js.map +0 -1
  75. package/dist/providers/github-provider.d.ts +0 -74
  76. package/dist/providers/github-provider.d.ts.map +0 -1
  77. package/dist/providers/github-provider.js +0 -683
  78. package/dist/providers/github-provider.js.map +0 -1
  79. package/dist/providers/index.d.ts +0 -13
  80. package/dist/providers/index.d.ts.map +0 -1
  81. package/dist/providers/index.js +0 -35
  82. package/dist/providers/index.js.map +0 -1
  83. package/dist/providers/provider-factory.d.ts +0 -49
  84. package/dist/providers/provider-factory.d.ts.map +0 -1
  85. package/dist/providers/provider-factory.js +0 -193
  86. package/dist/providers/provider-factory.js.map +0 -1
  87. package/dist/providers/provider-operation-handler.d.ts +0 -115
  88. package/dist/providers/provider-operation-handler.d.ts.map +0 -1
  89. package/dist/providers/provider-operation-handler.js +0 -449
  90. package/dist/providers/provider-operation-handler.js.map +0 -1
  91. package/dist/providers/types.d.ts +0 -200
  92. package/dist/providers/types.d.ts.map +0 -1
  93. package/dist/providers/types.js +0 -8
  94. package/dist/providers/types.js.map +0 -1
  95. package/dist/server.d.ts.map +0 -1
  96. package/dist/server.js.map +0 -1
  97. package/dist/tools/git-analytics.d.ts +0 -237
  98. package/dist/tools/git-analytics.d.ts.map +0 -1
  99. package/dist/tools/git-analytics.js +0 -819
  100. package/dist/tools/git-analytics.js.map +0 -1
  101. package/dist/tools/git-archive.d.ts +0 -113
  102. package/dist/tools/git-archive.d.ts.map +0 -1
  103. package/dist/tools/git-archive.js +0 -466
  104. package/dist/tools/git-archive.js.map +0 -1
  105. package/dist/tools/git-auto-monitor.d.ts +0 -180
  106. package/dist/tools/git-auto-monitor.d.ts.map +0 -1
  107. package/dist/tools/git-auto-monitor.js +0 -522
  108. package/dist/tools/git-auto-monitor.js.map +0 -1
  109. package/dist/tools/git-backup.d.ts +0 -105
  110. package/dist/tools/git-backup.d.ts.map +0 -1
  111. package/dist/tools/git-backup.js +0 -414
  112. package/dist/tools/git-backup.js.map +0 -1
  113. package/dist/tools/git-branches.d.ts +0 -183
  114. package/dist/tools/git-branches.d.ts.map +0 -1
  115. package/dist/tools/git-branches.js +0 -498
  116. package/dist/tools/git-branches.js.map +0 -1
  117. package/dist/tools/git-config.d.ts +0 -119
  118. package/dist/tools/git-config.d.ts.map +0 -1
  119. package/dist/tools/git-config.js +0 -449
  120. package/dist/tools/git-config.js.map +0 -1
  121. package/dist/tools/git-files.d.ts +0 -150
  122. package/dist/tools/git-files.d.ts.map +0 -1
  123. package/dist/tools/git-files.js +0 -527
  124. package/dist/tools/git-files.js.map +0 -1
  125. package/dist/tools/git-history.d.ts +0 -253
  126. package/dist/tools/git-history.d.ts.map +0 -1
  127. package/dist/tools/git-history.js +0 -824
  128. package/dist/tools/git-history.js.map +0 -1
  129. package/dist/tools/git-issues.d.ts +0 -164
  130. package/dist/tools/git-issues.d.ts.map +0 -1
  131. package/dist/tools/git-issues.js +0 -340
  132. package/dist/tools/git-issues.js.map +0 -1
  133. package/dist/tools/git-monitor.d.ts +0 -154
  134. package/dist/tools/git-monitor.d.ts.map +0 -1
  135. package/dist/tools/git-monitor.js +0 -531
  136. package/dist/tools/git-monitor.js.map +0 -1
  137. package/dist/tools/git-packages.d.ts +0 -157
  138. package/dist/tools/git-packages.d.ts.map +0 -1
  139. package/dist/tools/git-packages.js +0 -534
  140. package/dist/tools/git-packages.js.map +0 -1
  141. package/dist/tools/git-pulls.d.ts +0 -180
  142. package/dist/tools/git-pulls.d.ts.map +0 -1
  143. package/dist/tools/git-pulls.js +0 -369
  144. package/dist/tools/git-pulls.js.map +0 -1
  145. package/dist/tools/git-release.d.ts +0 -161
  146. package/dist/tools/git-release.d.ts.map +0 -1
  147. package/dist/tools/git-release.js +0 -466
  148. package/dist/tools/git-release.js.map +0 -1
  149. package/dist/tools/git-remote.d.ts +0 -128
  150. package/dist/tools/git-remote.d.ts.map +0 -1
  151. package/dist/tools/git-remote.js +0 -542
  152. package/dist/tools/git-remote.js.map +0 -1
  153. package/dist/tools/git-reset.d.ts +0 -120
  154. package/dist/tools/git-reset.d.ts.map +0 -1
  155. package/dist/tools/git-reset.js +0 -479
  156. package/dist/tools/git-reset.js.map +0 -1
  157. package/dist/tools/git-stash.d.ts +0 -124
  158. package/dist/tools/git-stash.d.ts.map +0 -1
  159. package/dist/tools/git-stash.js +0 -506
  160. package/dist/tools/git-stash.js.map +0 -1
  161. package/dist/tools/git-sync.d.ts +0 -154
  162. package/dist/tools/git-sync.d.ts.map +0 -1
  163. package/dist/tools/git-sync.js +0 -479
  164. package/dist/tools/git-sync.js.map +0 -1
  165. package/dist/tools/git-tags.d.ts +0 -136
  166. package/dist/tools/git-tags.d.ts.map +0 -1
  167. package/dist/tools/git-tags.js +0 -461
  168. package/dist/tools/git-tags.js.map +0 -1
  169. package/dist/tools/git-update.d.ts +0 -224
  170. package/dist/tools/git-update.d.ts.map +0 -1
  171. package/dist/tools/git-update.js +0 -948
  172. package/dist/tools/git-update.js.map +0 -1
  173. package/dist/tools/git-workflow.d.ts +0 -189
  174. package/dist/tools/git-workflow.d.ts.map +0 -1
  175. package/dist/tools/git-workflow.js +0 -542
  176. package/dist/tools/git-workflow.js.map +0 -1
  177. package/dist/utils/credential-manager.d.ts +0 -119
  178. package/dist/utils/credential-manager.d.ts.map +0 -1
  179. package/dist/utils/credential-manager.js +0 -450
  180. package/dist/utils/credential-manager.js.map +0 -1
  181. package/dist/utils/data-merger.d.ts +0 -49
  182. package/dist/utils/data-merger.d.ts.map +0 -1
  183. package/dist/utils/data-merger.js +0 -233
  184. package/dist/utils/data-merger.js.map +0 -1
  185. package/dist/utils/git-command-executor.d.ts +0 -330
  186. package/dist/utils/git-command-executor.d.ts.map +0 -1
  187. package/dist/utils/git-command-executor.js +0 -901
  188. package/dist/utils/git-command-executor.js.map +0 -1
  189. package/dist/utils/logger.d.ts +0 -143
  190. package/dist/utils/logger.d.ts.map +0 -1
  191. package/dist/utils/logger.js +0 -473
  192. package/dist/utils/logger.js.map +0 -1
  193. package/dist/utils/operation-error-handler.d.ts +0 -97
  194. package/dist/utils/operation-error-handler.d.ts.map +0 -1
  195. package/dist/utils/operation-error-handler.js +0 -367
  196. package/dist/utils/operation-error-handler.js.map +0 -1
  197. package/dist/utils/parameter-validator.d.ts +0 -49
  198. package/dist/utils/parameter-validator.d.ts.map +0 -1
  199. package/dist/utils/parameter-validator.js +0 -647
  200. package/dist/utils/parameter-validator.js.map +0 -1
  201. package/dist/utils/repository-checker.d.ts +0 -46
  202. package/dist/utils/repository-checker.d.ts.map +0 -1
  203. package/dist/utils/repository-checker.js +0 -151
  204. package/dist/utils/repository-checker.js.map +0 -1
  205. package/dist/utils/repository-detector.d.ts +0 -128
  206. package/dist/utils/repository-detector.d.ts.map +0 -1
  207. package/dist/utils/repository-detector.js +0 -422
  208. package/dist/utils/repository-detector.js.map +0 -1
  209. package/dist/utils/repository-sync.d.ts +0 -67
  210. package/dist/utils/repository-sync.d.ts.map +0 -1
  211. package/dist/utils/repository-sync.js +0 -344
  212. package/dist/utils/repository-sync.js.map +0 -1
  213. package/dist/utils/response-formatter.d.ts +0 -146
  214. package/dist/utils/response-formatter.d.ts.map +0 -1
  215. package/dist/utils/response-formatter.js +0 -378
  216. package/dist/utils/response-formatter.js.map +0 -1
  217. package/dist/utils/retry.d.ts +0 -12
  218. package/dist/utils/retry.d.ts.map +0 -1
  219. package/dist/utils/retry.js +0 -28
  220. package/dist/utils/retry.js.map +0 -1
  221. package/dist/utils/safety-warnings.d.ts +0 -56
  222. package/dist/utils/safety-warnings.d.ts.map +0 -1
  223. package/dist/utils/safety-warnings.js +0 -330
  224. package/dist/utils/safety-warnings.js.map +0 -1
  225. package/dist/utils/terminal-controller.d.ts +0 -79
  226. package/dist/utils/terminal-controller.d.ts.map +0 -1
  227. package/dist/utils/terminal-controller.js +0 -291
  228. package/dist/utils/terminal-controller.js.map +0 -1
  229. package/dist/utils/user-friendly-formatter.d.ts +0 -45
  230. package/dist/utils/user-friendly-formatter.d.ts.map +0 -1
  231. package/dist/utils/user-friendly-formatter.js +0 -175
  232. package/dist/utils/user-friendly-formatter.js.map +0 -1
@@ -1,291 +0,0 @@
1
- "use strict";
2
- /**
3
- * Terminal Controller
4
- *
5
- * Handles terminal command execution with proper error handling,
6
- * timeout management, and cross-platform compatibility.
7
- */
8
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
- if (k2 === undefined) k2 = k;
10
- var desc = Object.getOwnPropertyDescriptor(m, k);
11
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
- desc = { enumerable: true, get: function() { return m[k]; } };
13
- }
14
- Object.defineProperty(o, k2, desc);
15
- }) : (function(o, m, k, k2) {
16
- if (k2 === undefined) k2 = k;
17
- o[k2] = m[k];
18
- }));
19
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
- Object.defineProperty(o, "default", { enumerable: true, value: v });
21
- }) : function(o, v) {
22
- o["default"] = v;
23
- });
24
- var __importStar = (this && this.__importStar) || (function () {
25
- var ownKeys = function(o) {
26
- ownKeys = Object.getOwnPropertyNames || function (o) {
27
- var ar = [];
28
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
- return ar;
30
- };
31
- return ownKeys(o);
32
- };
33
- return function (mod) {
34
- if (mod && mod.__esModule) return mod;
35
- var result = {};
36
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
- __setModuleDefault(result, mod);
38
- return result;
39
- };
40
- })();
41
- var __importDefault = (this && this.__importDefault) || function (mod) {
42
- return (mod && mod.__esModule) ? mod : { "default": mod };
43
- };
44
- Object.defineProperty(exports, "__esModule", { value: true });
45
- exports.terminalController = exports.TerminalController = void 0;
46
- const child_process_1 = require("child_process");
47
- const util_1 = require("util");
48
- const path_1 = __importDefault(require("path"));
49
- const execAsync = (0, util_1.promisify)(child_process_1.exec);
50
- class TerminalController {
51
- defaultTimeout = 30000; // 30 seconds
52
- defaultOptions = {
53
- shell: true,
54
- encoding: 'utf8'
55
- };
56
- /**
57
- * Execute command with promise-based interface
58
- */
59
- async executeCommand(command, args = [], options = {}) {
60
- const startTime = Date.now();
61
- const mergedOptions = {
62
- ...this.defaultOptions,
63
- ...options,
64
- timeout: options.timeout || this.defaultTimeout
65
- };
66
- return new Promise((resolve) => {
67
- const child = (0, child_process_1.spawn)(command, args, {
68
- cwd: mergedOptions.cwd,
69
- env: { ...process.env, ...mergedOptions.env },
70
- shell: false
71
- });
72
- let stdout = '';
73
- let stderr = '';
74
- child.stdout?.on('data', (data) => {
75
- stdout += data.toString();
76
- });
77
- child.stderr?.on('data', (data) => {
78
- stderr += data.toString();
79
- });
80
- let finished = false;
81
- const finish = (code) => {
82
- if (finished)
83
- return;
84
- finished = true;
85
- resolve({
86
- success: code === 0,
87
- stdout: stdout.trim(),
88
- stderr: stderr.trim(),
89
- exitCode: code === null ? 1 : code,
90
- executionTime: Date.now() - startTime,
91
- command: `${command} ${args.join(' ')}`
92
- });
93
- };
94
- child.on('close', (code) => finish(code));
95
- child.on('error', (err) => {
96
- stderr += err.message;
97
- finish(1);
98
- });
99
- // Handle timeout
100
- if (mergedOptions.timeout) {
101
- setTimeout(() => {
102
- try {
103
- child.kill('SIGTERM');
104
- }
105
- catch { }
106
- finish(1);
107
- }, mergedOptions.timeout);
108
- }
109
- });
110
- }
111
- /**
112
- * Execute command in specific directory
113
- */
114
- async executeInDirectory(directory, command, args = [], options = {}) {
115
- const resolvedPath = path_1.default.resolve(directory);
116
- return this.executeCommand(command, args, {
117
- ...options,
118
- cwd: resolvedPath
119
- });
120
- }
121
- /**
122
- * Check if command exists in system PATH
123
- */
124
- async commandExists(command) {
125
- try {
126
- const args = process.platform === 'win32' ? [command] : [command];
127
- const cmd = process.platform === 'win32' ? 'where' : 'which';
128
- const result = await this.executeCommand(cmd, args);
129
- return result.success && result.stdout.length > 0;
130
- }
131
- catch {
132
- return false;
133
- }
134
- }
135
- /**
136
- * Get current working directory
137
- */
138
- getCurrentDirectory() {
139
- return process.cwd();
140
- }
141
- /**
142
- * Change working directory for subsequent commands
143
- */
144
- setWorkingDirectory(directory) {
145
- process.chdir(path_1.default.resolve(directory));
146
- }
147
- /**
148
- * Execute multiple commands in sequence
149
- */
150
- async executeSequence(commands, stopOnError = true) {
151
- const results = [];
152
- for (const cmd of commands) {
153
- const result = await this.executeCommand(cmd.command, cmd.args || [], cmd.options || {});
154
- results.push(result);
155
- if (!result.success && stopOnError) {
156
- break;
157
- }
158
- }
159
- return results;
160
- }
161
- /**
162
- * Execute command with real-time output streaming
163
- */
164
- async executeWithStreaming(command, args = [], options = {}) {
165
- const startTime = Date.now();
166
- const fullCommand = `${command} ${args.join(' ')}`;
167
- return new Promise((resolve) => {
168
- const child = (0, child_process_1.spawn)(command, args, {
169
- cwd: options.cwd,
170
- env: { ...process.env, ...options.env },
171
- shell: options.shell !== false
172
- });
173
- let stdout = '';
174
- let stderr = '';
175
- child.stdout?.on('data', (data) => {
176
- const text = data.toString();
177
- stdout += text;
178
- options.onStdout?.(text);
179
- });
180
- child.stderr?.on('data', (data) => {
181
- const text = data.toString();
182
- stderr += text;
183
- options.onStderr?.(text);
184
- });
185
- child.on('close', (code) => {
186
- resolve({
187
- success: code === 0,
188
- stdout: stdout.trim(),
189
- stderr: stderr.trim(),
190
- exitCode: code || 0,
191
- executionTime: Date.now() - startTime,
192
- command: fullCommand
193
- });
194
- });
195
- child.on('error', (error) => {
196
- resolve({
197
- success: false,
198
- stdout: stdout.trim(),
199
- stderr: error.message,
200
- exitCode: 1,
201
- executionTime: Date.now() - startTime,
202
- command: fullCommand
203
- });
204
- });
205
- // Handle timeout
206
- if (options.timeout) {
207
- setTimeout(() => {
208
- child.kill('SIGTERM');
209
- }, options.timeout);
210
- }
211
- });
212
- }
213
- /**
214
- * Search for text in files using grep or findstr
215
- */
216
- async searchInFiles(directory, query, options = {}) {
217
- const isWindows = process.platform === 'win32';
218
- if (isWindows) {
219
- // Use findstr on Windows
220
- const args = ['/S', '/N'];
221
- if (!options.caseSensitive)
222
- args.push('/I');
223
- const filePattern = options.filePattern && options.filePattern !== '*' ? options.filePattern : '*';
224
- // findstr usage: findstr [options] "searchString" filespec
225
- args.push(query);
226
- args.push(filePattern);
227
- const result = await this.executeInDirectory(directory, 'findstr', args);
228
- // findstr returns exit code 1 when no matches are found — treat as success with empty output
229
- if (result.exitCode === 1 && !result.stdout.trim()) {
230
- return {
231
- success: true,
232
- stdout: '',
233
- stderr: '',
234
- exitCode: 0,
235
- executionTime: result.executionTime,
236
- command: result.command
237
- };
238
- }
239
- return result;
240
- }
241
- else {
242
- // Use grep on Unix-like systems
243
- const args = ['-r', '-n'];
244
- if (!options.caseSensitive)
245
- args.push('-i');
246
- if (options.filePattern && options.filePattern !== '*') {
247
- args.push('--include', options.filePattern);
248
- }
249
- args.push(query, '.');
250
- const result = await this.executeInDirectory(directory, 'grep', args);
251
- // grep exit code 1 means no matches — normalize to success with empty output
252
- if (result.exitCode === 1 && !result.stdout.trim()) {
253
- return {
254
- success: true,
255
- stdout: '',
256
- stderr: '',
257
- exitCode: 0,
258
- executionTime: result.executionTime,
259
- command: result.command
260
- };
261
- }
262
- return result;
263
- }
264
- }
265
- /**
266
- * Validate directory exists and is accessible
267
- */
268
- async validateDirectory(directory) {
269
- try {
270
- const fs = await Promise.resolve().then(() => __importStar(require('fs/promises')));
271
- const stats = await fs.stat(directory);
272
- return {
273
- exists: true,
274
- accessible: true,
275
- isDirectory: stats.isDirectory(),
276
- };
277
- }
278
- catch (error) {
279
- return {
280
- exists: false,
281
- accessible: false,
282
- isDirectory: false,
283
- error: error.message
284
- };
285
- }
286
- }
287
- }
288
- exports.TerminalController = TerminalController;
289
- // Export singleton instance
290
- exports.terminalController = new TerminalController();
291
- //# sourceMappingURL=terminal-controller.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"terminal-controller.js","sourceRoot":"","sources":["../../src/utils/terminal-controller.ts"],"names":[],"mappings":"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"}
@@ -1,45 +0,0 @@
1
- /**
2
- * User-Friendly Response Formatter
3
- *
4
- * Converte respostas técnicas em formato JSON para respostas legíveis por humanos.
5
- */
6
- import { ToolResult } from './response-formatter.js';
7
- export declare class UserFriendlyFormatter {
8
- /**
9
- * Formata uma resposta técnica para uma versão amigável
10
- */
11
- static formatResponse(result: ToolResult): string;
12
- /**
13
- * Formata resposta de sucesso
14
- */
15
- private static formatSuccessResponse;
16
- /**
17
- * Formata resposta de erro
18
- */
19
- private static formatErrorResponse;
20
- /**
21
- * Gera texto específico para cada tipo de operação bem-sucedida
22
- */
23
- private static getOperationSpecificSuccess;
24
- /**
25
- * Gera texto de ajuda específico para cada tipo de erro
26
- */
27
- private static getErrorSpecificHelp;
28
- /**
29
- * Resume os dados retornados em formato amigável
30
- */
31
- private static summarizeData;
32
- /**
33
- * Formata um item de dados baseado em seu conteúdo
34
- */
35
- private static formatDataItem;
36
- /**
37
- * Formata um valor para exibição amigável
38
- */
39
- private static formatValue;
40
- /**
41
- * Capitaliza a primeira letra de uma string
42
- */
43
- private static capitalizeFirstLetter;
44
- }
45
- //# sourceMappingURL=user-friendly-formatter.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-friendly-formatter.d.ts","sourceRoot":"","sources":["../../src/utils/user-friendly-formatter.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,qBAAa,qBAAqB;IAChC;;OAEG;WACW,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM;IAQxD;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAiBpC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAwBlC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,2BAA2B;IA0B1C;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,oBAAoB;IA6BnC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IAyB5B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,cAAc;IAkB7B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IAW1B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;CAGrC"}
@@ -1,175 +0,0 @@
1
- "use strict";
2
- /**
3
- * User-Friendly Response Formatter
4
- *
5
- * Converte respostas técnicas em formato JSON para respostas legíveis por humanos.
6
- */
7
- Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.UserFriendlyFormatter = void 0;
9
- class UserFriendlyFormatter {
10
- /**
11
- * Formata uma resposta técnica para uma versão amigável
12
- */
13
- static formatResponse(result) {
14
- if (result.success) {
15
- return this.formatSuccessResponse(result);
16
- }
17
- else {
18
- return this.formatErrorResponse(result);
19
- }
20
- }
21
- /**
22
- * Formata resposta de sucesso
23
- */
24
- static formatSuccessResponse(result) {
25
- const operation = result.metadata?.operation || 'Operação';
26
- let output = `✅ ${this.capitalizeFirstLetter(operation)} concluído com sucesso!\n\n`;
27
- // Adicionar detalhes específicos baseados na operação
28
- if (result.metadata?.operation) {
29
- output += this.getOperationSpecificSuccess(result);
30
- }
31
- // Adicionar resumo dos dados retornados (se houver)
32
- if (result.data) {
33
- output += this.summarizeData(result.data, result.metadata?.operation);
34
- }
35
- return output;
36
- }
37
- /**
38
- * Formata resposta de erro
39
- */
40
- static formatErrorResponse(result) {
41
- const operation = result.metadata?.operation || 'Operação';
42
- let output = `❌ Erro ao executar ${operation}\n\n`;
43
- if (result.error?.message) {
44
- output += `**Problema:** ${result.error.message}\n\n`;
45
- }
46
- if (result.error?.suggestions && result.error.suggestions.length > 0) {
47
- output += "**Soluções possíveis:**\n";
48
- result.error.suggestions.forEach((suggestion, index) => {
49
- output += `${index + 1}. ${suggestion}\n`;
50
- });
51
- output += "\n";
52
- }
53
- // Adicionar detalhes específicos baseados no tipo de erro
54
- if (result.error?.code) {
55
- output += this.getErrorSpecificHelp(result);
56
- }
57
- return output;
58
- }
59
- /**
60
- * Gera texto específico para cada tipo de operação bem-sucedida
61
- */
62
- static getOperationSpecificSuccess(result) {
63
- const operation = result.metadata?.operation;
64
- const data = result.data;
65
- switch (operation) {
66
- case 'sync':
67
- return `📦 Repositório sincronizado com sucesso!\n\n` +
68
- `↓ Pull: Alterações remotas baixadas\n` +
69
- `↑ Push: Alterações locais enviadas\n\n`;
70
- case 'commit':
71
- return `📝 Commit realizado com sucesso!\n\n` +
72
- `${data?.message || 'Alterações salvas localmente'}\n\n`;
73
- case 'list':
74
- const count = Array.isArray(data) ? data.length :
75
- (data?.items?.length || 'Vários');
76
- return `📋 Listagem concluída: ${count} item(s) encontrado(s)\n\n`;
77
- // Adicionar mais casos conforme necessário
78
- default:
79
- return '';
80
- }
81
- }
82
- /**
83
- * Gera texto de ajuda específico para cada tipo de erro
84
- */
85
- static getErrorSpecificHelp(result) {
86
- const code = result.error?.code;
87
- switch (code) {
88
- case 'LOCAL_REPO_MISSING':
89
- return `🔍 **Diagnóstico:** O repositório existe remotamente, mas não está inicializado localmente.\n\n` +
90
- `Para resolver este problema, você pode:\n` +
91
- `1. Inicializar um repositório local: \`git-workflow init\`\n` +
92
- `2. Configurar o remote: \`git remote add origin <url>\`\n` +
93
- `3. Fazer pull: \`git-workflow pull\`\n\n` +
94
- `Ou simplesmente clonar o repositório: \`git clone <url>\`\n\n`;
95
- case 'CONFIGURATION_ERROR':
96
- return `⚙️ **Configuração:** Verifique as variáveis de ambiente para os providers.\n\n` +
97
- `Para GitHub:\n` +
98
- `- GITHUB_TOKEN\n` +
99
- `- GITHUB_USERNAME\n\n` +
100
- `Para Gitea:\n` +
101
- `- GITEA_URL\n` +
102
- `- GITEA_TOKEN\n` +
103
- `- GITEA_USERNAME\n\n`;
104
- // Adicionar mais casos conforme necessário
105
- default:
106
- return '';
107
- }
108
- }
109
- /**
110
- * Resume os dados retornados em formato amigável
111
- */
112
- static summarizeData(data, operation) {
113
- if (!data)
114
- return '';
115
- // Diferentes formatos de resumo baseados no tipo de dado
116
- if (Array.isArray(data)) {
117
- if (data.length === 0)
118
- return "Nenhum item encontrado.\n";
119
- if (data.length <= 5) {
120
- return data.map(item => this.formatDataItem(item)).join('\n') + '\n';
121
- }
122
- else {
123
- return data.slice(0, 5).map(item => this.formatDataItem(item)).join('\n') +
124
- `\n... e mais ${data.length - 5} item(s)\n`;
125
- }
126
- }
127
- if (typeof data === 'object' && data !== null) {
128
- return Object.entries(data)
129
- .filter(([key]) => !key.startsWith('_') && key !== 'metadata')
130
- .map(([key, value]) => `${key}: ${this.formatValue(value)}`)
131
- .join('\n') + '\n';
132
- }
133
- return `${data}\n`;
134
- }
135
- /**
136
- * Formata um item de dados baseado em seu conteúdo
137
- */
138
- static formatDataItem(item) {
139
- if (typeof item === 'string')
140
- return item;
141
- if (typeof item === 'object' && item !== null) {
142
- // Tenta encontrar campos de identificação comuns
143
- const name = item.name || item.title || item.id || item.path;
144
- if (name) {
145
- const description = item.description || item.message || '';
146
- return `- ${name}${description ? `: ${description}` : ''}`;
147
- }
148
- // Fallback para casos onde não há campo de identificação óbvio
149
- return `- ${JSON.stringify(item).substring(0, 100)}${JSON.stringify(item).length > 100 ? '...' : ''}`;
150
- }
151
- return `- ${String(item)}`;
152
- }
153
- /**
154
- * Formata um valor para exibição amigável
155
- */
156
- static formatValue(value) {
157
- if (value === null || value === undefined)
158
- return '';
159
- if (typeof value === 'object') {
160
- if (Array.isArray(value)) {
161
- return value.length > 0 ? `[${value.length} item(s)]` : '[]';
162
- }
163
- return '[objeto]';
164
- }
165
- return String(value);
166
- }
167
- /**
168
- * Capitaliza a primeira letra de uma string
169
- */
170
- static capitalizeFirstLetter(str) {
171
- return str.charAt(0).toUpperCase() + str.slice(1);
172
- }
173
- }
174
- exports.UserFriendlyFormatter = UserFriendlyFormatter;
175
- //# sourceMappingURL=user-friendly-formatter.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-friendly-formatter.js","sourceRoot":"","sources":["../../src/utils/user-friendly-formatter.ts"],"names":[],"mappings":"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"}