@andrebuzeli/git-mcp 5.5.0 → 5.5.2
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.
- package/README.md +25 -0
- package/dist/config.d.ts +5 -131
- package/dist/config.js +28 -430
- package/dist/index.d.ts +1 -21
- package/dist/index.js +66 -144
- package/dist/providers/giteaProvider.d.ts +3 -0
- package/dist/providers/giteaProvider.js +12 -0
- package/dist/providers/githubProvider.d.ts +2 -0
- package/dist/providers/githubProvider.js +7 -0
- package/dist/providers/providerManager.d.ts +11 -0
- package/dist/providers/providerManager.js +48 -0
- package/dist/server.d.ts +6 -40
- package/dist/server.js +30 -700
- package/dist/tools/gitAnalytics.d.ts +29 -0
- package/dist/tools/gitAnalytics.js +72 -0
- package/dist/tools/gitArchive.d.ts +6 -0
- package/dist/tools/gitArchive.js +27 -0
- package/dist/tools/gitBackup.d.ts +10 -0
- package/dist/tools/gitBackup.js +44 -0
- package/dist/tools/gitBranches.d.ts +72 -0
- package/dist/tools/gitBranches.js +97 -0
- package/dist/tools/gitConfig.d.ts +34 -0
- package/dist/tools/gitConfig.js +73 -0
- package/dist/tools/gitFiles.d.ts +24 -0
- package/dist/tools/gitFiles.js +53 -0
- package/dist/tools/gitIssues.d.ts +21 -0
- package/dist/tools/gitIssues.js +193 -0
- package/dist/tools/gitMonitor.d.ts +51 -0
- package/dist/tools/gitMonitor.js +102 -0
- package/dist/tools/gitPackages.d.ts +6 -0
- package/dist/tools/gitPackages.js +28 -0
- package/dist/tools/gitPulls.d.ts +74 -0
- package/dist/tools/gitPulls.js +190 -0
- package/dist/tools/gitRelease.d.ts +34 -0
- package/dist/tools/gitRelease.js +99 -0
- package/dist/tools/gitRemote.d.ts +51 -0
- package/dist/tools/gitRemote.js +68 -0
- package/dist/tools/gitReset.d.ts +34 -0
- package/dist/tools/gitReset.js +64 -0
- package/dist/tools/gitStash.d.ts +41 -0
- package/dist/tools/gitStash.js +67 -0
- package/dist/tools/gitSync.d.ts +25 -0
- package/dist/tools/gitSync.js +51 -0
- package/dist/tools/gitTags.d.ts +30 -0
- package/dist/tools/gitTags.js +69 -0
- package/dist/tools/gitWorkflow.d.ts +69 -0
- package/dist/tools/gitWorkflow.js +129 -0
- package/dist/types.d.ts +10 -0
- package/dist/types.js +2 -0
- package/dist/utils/errors.d.ts +13 -0
- package/dist/utils/errors.js +22 -0
- package/dist/utils/safetyController.d.ts +1 -0
- package/dist/utils/safetyController.js +15 -0
- package/package.json +7 -2
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js.map +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js.map +0 -1
- package/dist/providers/base-provider.d.ts +0 -66
- package/dist/providers/base-provider.d.ts.map +0 -1
- package/dist/providers/base-provider.js +0 -65
- package/dist/providers/base-provider.js.map +0 -1
- package/dist/providers/gitea-provider.d.ts +0 -79
- package/dist/providers/gitea-provider.d.ts.map +0 -1
- package/dist/providers/gitea-provider.js +0 -576
- package/dist/providers/gitea-provider.js.map +0 -1
- package/dist/providers/github-provider.d.ts +0 -74
- package/dist/providers/github-provider.d.ts.map +0 -1
- package/dist/providers/github-provider.js +0 -683
- package/dist/providers/github-provider.js.map +0 -1
- package/dist/providers/index.d.ts +0 -13
- package/dist/providers/index.d.ts.map +0 -1
- package/dist/providers/index.js +0 -35
- package/dist/providers/index.js.map +0 -1
- package/dist/providers/provider-factory.d.ts +0 -49
- package/dist/providers/provider-factory.d.ts.map +0 -1
- package/dist/providers/provider-factory.js +0 -193
- package/dist/providers/provider-factory.js.map +0 -1
- package/dist/providers/provider-operation-handler.d.ts +0 -115
- package/dist/providers/provider-operation-handler.d.ts.map +0 -1
- package/dist/providers/provider-operation-handler.js +0 -449
- package/dist/providers/provider-operation-handler.js.map +0 -1
- package/dist/providers/types.d.ts +0 -200
- package/dist/providers/types.d.ts.map +0 -1
- package/dist/providers/types.js +0 -8
- package/dist/providers/types.js.map +0 -1
- package/dist/server.d.ts.map +0 -1
- package/dist/server.js.map +0 -1
- package/dist/tools/git-analytics.d.ts +0 -237
- package/dist/tools/git-analytics.d.ts.map +0 -1
- package/dist/tools/git-analytics.js +0 -828
- package/dist/tools/git-analytics.js.map +0 -1
- package/dist/tools/git-archive.d.ts +0 -113
- package/dist/tools/git-archive.d.ts.map +0 -1
- package/dist/tools/git-archive.js +0 -466
- package/dist/tools/git-archive.js.map +0 -1
- package/dist/tools/git-auto-monitor.d.ts +0 -180
- package/dist/tools/git-auto-monitor.d.ts.map +0 -1
- package/dist/tools/git-auto-monitor.js +0 -522
- package/dist/tools/git-auto-monitor.js.map +0 -1
- package/dist/tools/git-backup.d.ts +0 -105
- package/dist/tools/git-backup.d.ts.map +0 -1
- package/dist/tools/git-backup.js +0 -414
- package/dist/tools/git-backup.js.map +0 -1
- package/dist/tools/git-branches.d.ts +0 -183
- package/dist/tools/git-branches.d.ts.map +0 -1
- package/dist/tools/git-branches.js +0 -507
- package/dist/tools/git-branches.js.map +0 -1
- package/dist/tools/git-config.d.ts +0 -119
- package/dist/tools/git-config.d.ts.map +0 -1
- package/dist/tools/git-config.js +0 -449
- package/dist/tools/git-config.js.map +0 -1
- package/dist/tools/git-files.d.ts +0 -150
- package/dist/tools/git-files.d.ts.map +0 -1
- package/dist/tools/git-files.js +0 -536
- package/dist/tools/git-files.js.map +0 -1
- package/dist/tools/git-history.d.ts +0 -253
- package/dist/tools/git-history.d.ts.map +0 -1
- package/dist/tools/git-history.js +0 -824
- package/dist/tools/git-history.js.map +0 -1
- package/dist/tools/git-issues.d.ts +0 -164
- package/dist/tools/git-issues.d.ts.map +0 -1
- package/dist/tools/git-issues.js +0 -349
- package/dist/tools/git-issues.js.map +0 -1
- package/dist/tools/git-monitor.d.ts +0 -154
- package/dist/tools/git-monitor.d.ts.map +0 -1
- package/dist/tools/git-monitor.js +0 -531
- package/dist/tools/git-monitor.js.map +0 -1
- package/dist/tools/git-packages.d.ts +0 -157
- package/dist/tools/git-packages.d.ts.map +0 -1
- package/dist/tools/git-packages.js +0 -534
- package/dist/tools/git-packages.js.map +0 -1
- package/dist/tools/git-pulls.d.ts +0 -180
- package/dist/tools/git-pulls.d.ts.map +0 -1
- package/dist/tools/git-pulls.js +0 -378
- package/dist/tools/git-pulls.js.map +0 -1
- package/dist/tools/git-release.d.ts +0 -161
- package/dist/tools/git-release.d.ts.map +0 -1
- package/dist/tools/git-release.js +0 -466
- package/dist/tools/git-release.js.map +0 -1
- package/dist/tools/git-remote.d.ts +0 -128
- package/dist/tools/git-remote.d.ts.map +0 -1
- package/dist/tools/git-remote.js +0 -542
- package/dist/tools/git-remote.js.map +0 -1
- package/dist/tools/git-reset.d.ts +0 -120
- package/dist/tools/git-reset.d.ts.map +0 -1
- package/dist/tools/git-reset.js +0 -479
- package/dist/tools/git-reset.js.map +0 -1
- package/dist/tools/git-stash.d.ts +0 -124
- package/dist/tools/git-stash.d.ts.map +0 -1
- package/dist/tools/git-stash.js +0 -506
- package/dist/tools/git-stash.js.map +0 -1
- package/dist/tools/git-sync.d.ts +0 -154
- package/dist/tools/git-sync.d.ts.map +0 -1
- package/dist/tools/git-sync.js +0 -479
- package/dist/tools/git-sync.js.map +0 -1
- package/dist/tools/git-tags.d.ts +0 -136
- package/dist/tools/git-tags.d.ts.map +0 -1
- package/dist/tools/git-tags.js +0 -470
- package/dist/tools/git-tags.js.map +0 -1
- package/dist/tools/git-update.d.ts +0 -224
- package/dist/tools/git-update.d.ts.map +0 -1
- package/dist/tools/git-update.js +0 -948
- package/dist/tools/git-update.js.map +0 -1
- package/dist/tools/git-workflow.d.ts +0 -189
- package/dist/tools/git-workflow.d.ts.map +0 -1
- package/dist/tools/git-workflow.js +0 -551
- package/dist/tools/git-workflow.js.map +0 -1
- package/dist/utils/credential-manager.d.ts +0 -119
- package/dist/utils/credential-manager.d.ts.map +0 -1
- package/dist/utils/credential-manager.js +0 -450
- package/dist/utils/credential-manager.js.map +0 -1
- package/dist/utils/data-merger.d.ts +0 -49
- package/dist/utils/data-merger.d.ts.map +0 -1
- package/dist/utils/data-merger.js +0 -233
- package/dist/utils/data-merger.js.map +0 -1
- package/dist/utils/git-command-executor.d.ts +0 -330
- package/dist/utils/git-command-executor.d.ts.map +0 -1
- package/dist/utils/git-command-executor.js +0 -901
- package/dist/utils/git-command-executor.js.map +0 -1
- package/dist/utils/logger.d.ts +0 -143
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/logger.js +0 -473
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/operation-error-handler.d.ts +0 -97
- package/dist/utils/operation-error-handler.d.ts.map +0 -1
- package/dist/utils/operation-error-handler.js +0 -367
- package/dist/utils/operation-error-handler.js.map +0 -1
- package/dist/utils/parameter-validator.d.ts +0 -49
- package/dist/utils/parameter-validator.d.ts.map +0 -1
- package/dist/utils/parameter-validator.js +0 -647
- package/dist/utils/parameter-validator.js.map +0 -1
- package/dist/utils/repository-checker.d.ts +0 -46
- package/dist/utils/repository-checker.d.ts.map +0 -1
- package/dist/utils/repository-checker.js +0 -151
- package/dist/utils/repository-checker.js.map +0 -1
- package/dist/utils/repository-detector.d.ts +0 -128
- package/dist/utils/repository-detector.d.ts.map +0 -1
- package/dist/utils/repository-detector.js +0 -422
- package/dist/utils/repository-detector.js.map +0 -1
- package/dist/utils/repository-sync.d.ts +0 -67
- package/dist/utils/repository-sync.d.ts.map +0 -1
- package/dist/utils/repository-sync.js +0 -344
- package/dist/utils/repository-sync.js.map +0 -1
- package/dist/utils/response-formatter.d.ts +0 -146
- package/dist/utils/response-formatter.d.ts.map +0 -1
- package/dist/utils/response-formatter.js +0 -378
- package/dist/utils/response-formatter.js.map +0 -1
- package/dist/utils/retry.d.ts +0 -12
- package/dist/utils/retry.d.ts.map +0 -1
- package/dist/utils/retry.js +0 -28
- package/dist/utils/retry.js.map +0 -1
- package/dist/utils/safety-warnings.d.ts +0 -56
- package/dist/utils/safety-warnings.d.ts.map +0 -1
- package/dist/utils/safety-warnings.js +0 -330
- package/dist/utils/safety-warnings.js.map +0 -1
- package/dist/utils/terminal-controller.d.ts +0 -79
- package/dist/utils/terminal-controller.d.ts.map +0 -1
- package/dist/utils/terminal-controller.js +0 -291
- package/dist/utils/terminal-controller.js.map +0 -1
- package/dist/utils/user-friendly-formatter.d.ts +0 -45
- package/dist/utils/user-friendly-formatter.d.ts.map +0 -1
- package/dist/utils/user-friendly-formatter.js +0 -175
- package/dist/utils/user-friendly-formatter.js.map +0 -1
|
@@ -1,378 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
/**
|
|
3
|
-
* Response Formatter
|
|
4
|
-
*
|
|
5
|
-
* Utility for formatting consistent responses across all Git MCP tools.
|
|
6
|
-
* Provides standardized success/error response formats with metadata.
|
|
7
|
-
*/
|
|
8
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
-
exports.responseFormatter = exports.ResponseFormatter = void 0;
|
|
10
|
-
class ResponseFormatter {
|
|
11
|
-
defaultOptions = {
|
|
12
|
-
includeMetadata: true,
|
|
13
|
-
includeTimestamp: true,
|
|
14
|
-
includeExecutionTime: true,
|
|
15
|
-
maxDataSize: 10000, // 10KB
|
|
16
|
-
truncateData: true
|
|
17
|
-
};
|
|
18
|
-
/**
|
|
19
|
-
* Format successful response
|
|
20
|
-
*/
|
|
21
|
-
success(data, metadata, options = {}) {
|
|
22
|
-
const mergedOptions = { ...this.defaultOptions, ...options };
|
|
23
|
-
// Process data size if needed
|
|
24
|
-
let processedData = data;
|
|
25
|
-
if (mergedOptions.truncateData && mergedOptions.maxDataSize) {
|
|
26
|
-
processedData = this.truncateDataIfNeeded(data, mergedOptions.maxDataSize);
|
|
27
|
-
}
|
|
28
|
-
const result = {
|
|
29
|
-
success: true,
|
|
30
|
-
data: processedData
|
|
31
|
-
};
|
|
32
|
-
if (mergedOptions.includeMetadata) {
|
|
33
|
-
result.metadata = {
|
|
34
|
-
operation: metadata.operation,
|
|
35
|
-
timestamp: mergedOptions.includeTimestamp ? new Date().toISOString() : '',
|
|
36
|
-
executionTime: mergedOptions.includeExecutionTime ? (metadata.executionTime || 0) : 0
|
|
37
|
-
};
|
|
38
|
-
if (metadata.provider)
|
|
39
|
-
result.metadata.provider = metadata.provider;
|
|
40
|
-
if (metadata.toolName)
|
|
41
|
-
result.metadata.toolName = metadata.toolName;
|
|
42
|
-
if (metadata.projectPath)
|
|
43
|
-
result.metadata.projectPath = metadata.projectPath;
|
|
44
|
-
if (metadata.repositoryName)
|
|
45
|
-
result.metadata.repositoryName = metadata.repositoryName;
|
|
46
|
-
}
|
|
47
|
-
return result;
|
|
48
|
-
}
|
|
49
|
-
/**
|
|
50
|
-
* Format error response
|
|
51
|
-
*/
|
|
52
|
-
error(code, message, details, metadata, options = {}) {
|
|
53
|
-
const mergedOptions = { ...this.defaultOptions, ...options };
|
|
54
|
-
const result = {
|
|
55
|
-
success: false,
|
|
56
|
-
error: {
|
|
57
|
-
code,
|
|
58
|
-
message,
|
|
59
|
-
details,
|
|
60
|
-
suggestions: this.generateSuggestions(code, message, details)
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
// Add configuration guide for specific error types
|
|
64
|
-
const configGuide = this.generateConfigurationGuide(code, details);
|
|
65
|
-
if (configGuide) {
|
|
66
|
-
result.error.configurationGuide = configGuide;
|
|
67
|
-
}
|
|
68
|
-
if (mergedOptions.includeMetadata && metadata) {
|
|
69
|
-
result.metadata = {
|
|
70
|
-
operation: metadata.operation,
|
|
71
|
-
timestamp: mergedOptions.includeTimestamp ? new Date().toISOString() : '',
|
|
72
|
-
executionTime: mergedOptions.includeExecutionTime ? (metadata.executionTime || 0) : 0
|
|
73
|
-
};
|
|
74
|
-
if (metadata.provider)
|
|
75
|
-
result.metadata.provider = metadata.provider;
|
|
76
|
-
if (metadata.toolName)
|
|
77
|
-
result.metadata.toolName = metadata.toolName;
|
|
78
|
-
if (metadata.projectPath)
|
|
79
|
-
result.metadata.projectPath = metadata.projectPath;
|
|
80
|
-
if (metadata.repositoryName)
|
|
81
|
-
result.metadata.repositoryName = metadata.repositoryName;
|
|
82
|
-
}
|
|
83
|
-
return result;
|
|
84
|
-
}
|
|
85
|
-
/**
|
|
86
|
-
* Format validation error response
|
|
87
|
-
*/
|
|
88
|
-
validationError(parameter, expectedFormat, actualValue, metadata) {
|
|
89
|
-
return this.error('VALIDATION_ERROR', `Invalid parameter: ${parameter}`, {
|
|
90
|
-
parameter,
|
|
91
|
-
expectedFormat,
|
|
92
|
-
actualValue,
|
|
93
|
-
example: this.generateParameterExample(parameter, expectedFormat)
|
|
94
|
-
}, metadata);
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Format configuration error response
|
|
98
|
-
*/
|
|
99
|
-
configurationError(missingConfig, provider, metadata) {
|
|
100
|
-
const providerText = provider ? ` for ${provider}` : '';
|
|
101
|
-
return this.error('CONFIGURATION_ERROR', `Missing required configuration${providerText}`, {
|
|
102
|
-
missingConfig,
|
|
103
|
-
provider
|
|
104
|
-
}, metadata);
|
|
105
|
-
}
|
|
106
|
-
/**
|
|
107
|
-
* Format Git error response
|
|
108
|
-
*/
|
|
109
|
-
gitError(gitErrorType, gitMessage, command, metadata) {
|
|
110
|
-
return this.error(`GIT_${gitErrorType.toUpperCase()}`, `Git error: ${gitMessage}`, {
|
|
111
|
-
gitErrorType,
|
|
112
|
-
command,
|
|
113
|
-
workingDirectory: metadata?.projectPath
|
|
114
|
-
}, metadata);
|
|
115
|
-
}
|
|
116
|
-
/**
|
|
117
|
-
* Format provider error response
|
|
118
|
-
*/
|
|
119
|
-
providerError(provider, apiError, statusCode, metadata) {
|
|
120
|
-
return this.error('PROVIDER_ERROR', `${provider} API error: ${apiError}`, {
|
|
121
|
-
provider,
|
|
122
|
-
statusCode,
|
|
123
|
-
apiError
|
|
124
|
-
}, metadata);
|
|
125
|
-
}
|
|
126
|
-
/**
|
|
127
|
-
* Format operation not supported error
|
|
128
|
-
*/
|
|
129
|
-
operationNotSupported(operation, supportedOperations, toolName) {
|
|
130
|
-
return this.error('OPERATION_NOT_SUPPORTED', `Operation '${operation}' is not supported`, {
|
|
131
|
-
operation,
|
|
132
|
-
supportedOperations,
|
|
133
|
-
toolName
|
|
134
|
-
}, {
|
|
135
|
-
operation: 'validate_operation',
|
|
136
|
-
toolName
|
|
137
|
-
});
|
|
138
|
-
}
|
|
139
|
-
/**
|
|
140
|
-
* Format partial success response (for multi-provider operations)
|
|
141
|
-
*/
|
|
142
|
-
partialSuccess(successResults, failedResults, metadata) {
|
|
143
|
-
const totalProviders = metadata.providers.length;
|
|
144
|
-
const successCount = successResults.length;
|
|
145
|
-
const failureCount = failedResults.length;
|
|
146
|
-
return {
|
|
147
|
-
success: successCount > 0, // Partial success if at least one succeeded
|
|
148
|
-
data: {
|
|
149
|
-
results: successResults,
|
|
150
|
-
summary: {
|
|
151
|
-
total: totalProviders,
|
|
152
|
-
successful: successCount,
|
|
153
|
-
failed: failureCount,
|
|
154
|
-
successRate: Math.round((successCount / totalProviders) * 100)
|
|
155
|
-
}
|
|
156
|
-
},
|
|
157
|
-
error: failureCount > 0 ? {
|
|
158
|
-
code: 'PARTIAL_FAILURE',
|
|
159
|
-
message: `${failureCount} out of ${totalProviders} providers failed`,
|
|
160
|
-
details: {
|
|
161
|
-
failedResults,
|
|
162
|
-
failedProviders: failedResults.map((r) => r.provider)
|
|
163
|
-
},
|
|
164
|
-
suggestions: [
|
|
165
|
-
'Check failed provider configurations',
|
|
166
|
-
'Verify network connectivity',
|
|
167
|
-
'Review provider-specific error messages'
|
|
168
|
-
]
|
|
169
|
-
} : undefined,
|
|
170
|
-
metadata: {
|
|
171
|
-
operation: metadata.operation,
|
|
172
|
-
timestamp: new Date().toISOString(),
|
|
173
|
-
executionTime: metadata.executionTime || 0,
|
|
174
|
-
toolName: metadata.toolName,
|
|
175
|
-
provider: metadata.providers.join(', ')
|
|
176
|
-
}
|
|
177
|
-
};
|
|
178
|
-
}
|
|
179
|
-
/**
|
|
180
|
-
* Format list response with pagination info
|
|
181
|
-
*/
|
|
182
|
-
listResponse(items, pagination, metadata) {
|
|
183
|
-
const data = {
|
|
184
|
-
items,
|
|
185
|
-
count: items.length
|
|
186
|
-
};
|
|
187
|
-
if (pagination) {
|
|
188
|
-
data.pagination = pagination;
|
|
189
|
-
}
|
|
190
|
-
return this.success(data, metadata || { operation: 'list' });
|
|
191
|
-
}
|
|
192
|
-
/**
|
|
193
|
-
* Format status response
|
|
194
|
-
*/
|
|
195
|
-
statusResponse(status, details, metadata) {
|
|
196
|
-
return this.success({
|
|
197
|
-
status,
|
|
198
|
-
details,
|
|
199
|
-
timestamp: new Date().toISOString()
|
|
200
|
-
}, metadata || { operation: 'status' });
|
|
201
|
-
}
|
|
202
|
-
/**
|
|
203
|
-
* Generate suggestions based on error code and message
|
|
204
|
-
*/
|
|
205
|
-
generateSuggestions(code, message, details) {
|
|
206
|
-
const suggestions = [];
|
|
207
|
-
switch (code) {
|
|
208
|
-
case 'VALIDATION_ERROR':
|
|
209
|
-
suggestions.push('Check parameter format and try again');
|
|
210
|
-
suggestions.push('Refer to tool documentation for parameter examples');
|
|
211
|
-
break;
|
|
212
|
-
case 'CONFIGURATION_ERROR':
|
|
213
|
-
suggestions.push('Set required environment variables');
|
|
214
|
-
suggestions.push('Check configuration guide in error details');
|
|
215
|
-
break;
|
|
216
|
-
case 'GIT_NOT_A_REPOSITORY':
|
|
217
|
-
suggestions.push('Initialize Git repository with: git init');
|
|
218
|
-
suggestions.push('Ensure you are in the correct directory');
|
|
219
|
-
break;
|
|
220
|
-
case 'GIT_COMMAND_NOT_FOUND':
|
|
221
|
-
suggestions.push('Install Git from https://git-scm.com/');
|
|
222
|
-
suggestions.push('Ensure Git is in your system PATH');
|
|
223
|
-
break;
|
|
224
|
-
case 'PROVIDER_ERROR':
|
|
225
|
-
suggestions.push('Check API credentials and permissions');
|
|
226
|
-
suggestions.push('Verify network connectivity');
|
|
227
|
-
if (details?.statusCode === 401) {
|
|
228
|
-
suggestions.push('Verify authentication token is valid');
|
|
229
|
-
}
|
|
230
|
-
if (details?.statusCode === 403) {
|
|
231
|
-
suggestions.push('Check repository permissions');
|
|
232
|
-
}
|
|
233
|
-
if (details?.statusCode === 404) {
|
|
234
|
-
suggestions.push('Verify repository exists and is accessible');
|
|
235
|
-
}
|
|
236
|
-
break;
|
|
237
|
-
case 'OPERATION_NOT_SUPPORTED':
|
|
238
|
-
suggestions.push('Use one of the supported operations listed in details');
|
|
239
|
-
suggestions.push('Check tool documentation for available operations');
|
|
240
|
-
break;
|
|
241
|
-
default:
|
|
242
|
-
suggestions.push('Check error details for more information');
|
|
243
|
-
suggestions.push('Retry the operation after addressing the issue');
|
|
244
|
-
}
|
|
245
|
-
return suggestions;
|
|
246
|
-
}
|
|
247
|
-
/**
|
|
248
|
-
* Generate configuration guide for specific errors
|
|
249
|
-
*/
|
|
250
|
-
generateConfigurationGuide(code, details) {
|
|
251
|
-
if (code === 'CONFIGURATION_ERROR') {
|
|
252
|
-
const provider = details?.provider;
|
|
253
|
-
if (provider === 'github') {
|
|
254
|
-
return {
|
|
255
|
-
requiredEnvVars: ['GITHUB_TOKEN', 'GITHUB_USERNAME'],
|
|
256
|
-
exampleConfig: {
|
|
257
|
-
GITHUB_TOKEN: 'ghp_xxxxxxxxxxxxxxxxxxxx',
|
|
258
|
-
GITHUB_USERNAME: 'your-github-username'
|
|
259
|
-
}
|
|
260
|
-
};
|
|
261
|
-
}
|
|
262
|
-
if (provider === 'gitea') {
|
|
263
|
-
return {
|
|
264
|
-
requiredEnvVars: ['GITEA_URL', 'GITEA_TOKEN', 'GITEA_USERNAME'],
|
|
265
|
-
exampleConfig: {
|
|
266
|
-
GITEA_URL: 'https://gitea.example.com',
|
|
267
|
-
GITEA_TOKEN: 'your-gitea-token',
|
|
268
|
-
GITEA_USERNAME: 'your-gitea-username'
|
|
269
|
-
}
|
|
270
|
-
};
|
|
271
|
-
}
|
|
272
|
-
// Multi-provider configuration
|
|
273
|
-
return {
|
|
274
|
-
requiredEnvVars: [
|
|
275
|
-
'GITHUB_TOKEN', 'GITHUB_USERNAME',
|
|
276
|
-
'GITEA_URL', 'GITEA_TOKEN', 'GITEA_USERNAME'
|
|
277
|
-
],
|
|
278
|
-
exampleConfig: {
|
|
279
|
-
github: {
|
|
280
|
-
GITHUB_TOKEN: 'ghp_xxxxxxxxxxxxxxxxxxxx',
|
|
281
|
-
GITHUB_USERNAME: 'your-github-username'
|
|
282
|
-
},
|
|
283
|
-
gitea: {
|
|
284
|
-
GITEA_URL: 'https://gitea.example.com',
|
|
285
|
-
GITEA_TOKEN: 'your-gitea-token',
|
|
286
|
-
GITEA_USERNAME: 'your-gitea-username'
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
};
|
|
290
|
-
}
|
|
291
|
-
return undefined;
|
|
292
|
-
}
|
|
293
|
-
/**
|
|
294
|
-
* Generate parameter example based on parameter name and expected format
|
|
295
|
-
*/
|
|
296
|
-
generateParameterExample(parameter, expectedFormat) {
|
|
297
|
-
const examples = {
|
|
298
|
-
projectPath: '/path/to/your/project',
|
|
299
|
-
provider: 'github | gitea | both',
|
|
300
|
-
action: 'create | list | get | update | delete',
|
|
301
|
-
repositoryName: 'my-repository',
|
|
302
|
-
branchName: 'feature/new-feature',
|
|
303
|
-
commitMessage: 'Add new feature',
|
|
304
|
-
tagName: 'v1.0.0',
|
|
305
|
-
issueNumber: 123,
|
|
306
|
-
pullRequestNumber: 456,
|
|
307
|
-
fileName: 'src/index.ts',
|
|
308
|
-
content: 'file content here',
|
|
309
|
-
title: 'Issue or PR title',
|
|
310
|
-
description: 'Detailed description',
|
|
311
|
-
labels: ['bug', 'enhancement'],
|
|
312
|
-
assignees: ['username1', 'username2']
|
|
313
|
-
};
|
|
314
|
-
return examples[parameter] || `<${expectedFormat}>`;
|
|
315
|
-
}
|
|
316
|
-
/**
|
|
317
|
-
* Truncate data if it exceeds maximum size
|
|
318
|
-
*/
|
|
319
|
-
truncateDataIfNeeded(data, maxSize) {
|
|
320
|
-
const dataString = JSON.stringify(data);
|
|
321
|
-
if (dataString.length <= maxSize) {
|
|
322
|
-
return data;
|
|
323
|
-
}
|
|
324
|
-
// If data is too large, truncate and add indicator
|
|
325
|
-
const truncatedString = dataString.substring(0, maxSize - 100);
|
|
326
|
-
try {
|
|
327
|
-
// Try to parse truncated JSON (might be invalid)
|
|
328
|
-
return JSON.parse(truncatedString);
|
|
329
|
-
}
|
|
330
|
-
catch {
|
|
331
|
-
// If truncated JSON is invalid, return summary
|
|
332
|
-
return {
|
|
333
|
-
_truncated: true,
|
|
334
|
-
_originalSize: dataString.length,
|
|
335
|
-
_maxSize: maxSize,
|
|
336
|
-
_summary: this.generateDataSummary(data),
|
|
337
|
-
_note: 'Data was truncated due to size limits'
|
|
338
|
-
};
|
|
339
|
-
}
|
|
340
|
-
}
|
|
341
|
-
/**
|
|
342
|
-
* Generate summary of data structure
|
|
343
|
-
*/
|
|
344
|
-
generateDataSummary(data) {
|
|
345
|
-
if (Array.isArray(data)) {
|
|
346
|
-
return {
|
|
347
|
-
type: 'array',
|
|
348
|
-
length: data.length,
|
|
349
|
-
sampleItems: data.slice(0, 3),
|
|
350
|
-
hasMore: data.length > 3
|
|
351
|
-
};
|
|
352
|
-
}
|
|
353
|
-
if (typeof data === 'object' && data !== null) {
|
|
354
|
-
const keys = Object.keys(data);
|
|
355
|
-
const summary = {
|
|
356
|
-
type: 'object',
|
|
357
|
-
keys: keys.slice(0, 10),
|
|
358
|
-
hasMoreKeys: keys.length > 10
|
|
359
|
-
};
|
|
360
|
-
// Include sample values for first few keys
|
|
361
|
-
for (let i = 0; i < Math.min(3, keys.length); i++) {
|
|
362
|
-
const key = keys[i];
|
|
363
|
-
summary[key] = typeof data[key] === 'object'
|
|
364
|
-
? `[${typeof data[key]}]`
|
|
365
|
-
: data[key];
|
|
366
|
-
}
|
|
367
|
-
return summary;
|
|
368
|
-
}
|
|
369
|
-
return {
|
|
370
|
-
type: typeof data,
|
|
371
|
-
value: String(data).substring(0, 100)
|
|
372
|
-
};
|
|
373
|
-
}
|
|
374
|
-
}
|
|
375
|
-
exports.ResponseFormatter = ResponseFormatter;
|
|
376
|
-
// Export singleton instance
|
|
377
|
-
exports.responseFormatter = new ResponseFormatter();
|
|
378
|
-
//# sourceMappingURL=response-formatter.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"response-formatter.js","sourceRoot":"","sources":["../../src/utils/response-formatter.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/retry.d.ts
DELETED
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Simple retry helper with exponential backoff.
|
|
3
|
-
*/
|
|
4
|
-
export interface RetryOptions {
|
|
5
|
-
retries?: number;
|
|
6
|
-
factor?: number;
|
|
7
|
-
minTimeout?: number;
|
|
8
|
-
maxTimeout?: number;
|
|
9
|
-
retryOn?: (err: any) => boolean;
|
|
10
|
-
}
|
|
11
|
-
export declare function retry<T>(fn: () => Promise<T>, opts?: RetryOptions): Promise<T>;
|
|
12
|
-
//# sourceMappingURL=retry.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/utils/retry.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,GAAG,KAAK,OAAO,CAAC;CACjC;AAED,wBAAsB,KAAK,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,EAAE,IAAI,GAAE,YAAiB,GAAG,OAAO,CAAC,CAAC,CAAC,CA0BxF"}
|
package/dist/utils/retry.js
DELETED
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.retry = retry;
|
|
4
|
-
async function retry(fn, opts = {}) {
|
|
5
|
-
const retries = typeof opts.retries === 'number' ? opts.retries : 3;
|
|
6
|
-
const factor = opts.factor || 2;
|
|
7
|
-
const minTimeout = opts.minTimeout || 200;
|
|
8
|
-
const maxTimeout = opts.maxTimeout || 5000;
|
|
9
|
-
const retryOn = opts.retryOn || ((err) => true);
|
|
10
|
-
let attempt = 0;
|
|
11
|
-
let lastError = null;
|
|
12
|
-
while (attempt <= retries) {
|
|
13
|
-
try {
|
|
14
|
-
return await fn();
|
|
15
|
-
}
|
|
16
|
-
catch (err) {
|
|
17
|
-
lastError = err;
|
|
18
|
-
if (attempt === retries || !retryOn(err)) {
|
|
19
|
-
break;
|
|
20
|
-
}
|
|
21
|
-
const wait = Math.min(maxTimeout, Math.round(minTimeout * Math.pow(factor, attempt)));
|
|
22
|
-
await new Promise((resolve) => setTimeout(resolve, wait));
|
|
23
|
-
attempt += 1;
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
throw lastError;
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=retry.js.map
|
package/dist/utils/retry.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"retry.js","sourceRoot":"","sources":["../../src/utils/retry.ts"],"names":[],"mappings":";;AAWA,sBA0BC;AA1BM,KAAK,UAAU,KAAK,CAAI,EAAoB,EAAE,OAAqB,EAAE;IAC1E,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IACpE,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC;IAChC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,GAAG,CAAC;IAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC;IAC3C,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC;IAErD,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,SAAS,GAAQ,IAAI,CAAC;IAE1B,OAAO,OAAO,IAAI,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC;YACH,OAAO,MAAM,EAAE,EAAE,CAAC;QACpB,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,SAAS,GAAG,GAAG,CAAC;YAChB,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;gBACzC,MAAM;YACR,CAAC;YAED,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YACtF,MAAM,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YAC1D,OAAO,IAAI,CAAC,CAAC;QACf,CAAC;IACH,CAAC;IAED,MAAM,SAAS,CAAC;AAClB,CAAC"}
|
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Safety Warnings System
|
|
3
|
-
*
|
|
4
|
-
* Provides safety warnings and confirmations for destructive Git operations.
|
|
5
|
-
* Helps prevent accidental data loss by clearly communicating risks.
|
|
6
|
-
*/
|
|
7
|
-
export type WarningLevel = 'WARNING' | 'DANGER' | 'CRITICAL';
|
|
8
|
-
export interface SafetyWarning {
|
|
9
|
-
level: WarningLevel;
|
|
10
|
-
operation: string;
|
|
11
|
-
title: string;
|
|
12
|
-
message: string;
|
|
13
|
-
whatWillBeLost: string[];
|
|
14
|
-
suggestions: string[];
|
|
15
|
-
confirmationRequired: boolean;
|
|
16
|
-
alternatives?: string[];
|
|
17
|
-
}
|
|
18
|
-
export interface DestructiveOperationInfo {
|
|
19
|
-
operation: string;
|
|
20
|
-
riskLevel: WarningLevel;
|
|
21
|
-
irreversible: boolean;
|
|
22
|
-
dataLoss: boolean;
|
|
23
|
-
workLoss: boolean;
|
|
24
|
-
}
|
|
25
|
-
export declare class SafetyWarnings {
|
|
26
|
-
private static readonly DESTRUCTIVE_OPERATIONS;
|
|
27
|
-
/**
|
|
28
|
-
* Generate safety warning for a destructive operation
|
|
29
|
-
*/
|
|
30
|
-
static generateWarning(operationType: string, context?: any): SafetyWarning;
|
|
31
|
-
/**
|
|
32
|
-
* Check if an operation is destructive and requires warning
|
|
33
|
-
*/
|
|
34
|
-
static isDestructiveOperation(operation: string): boolean;
|
|
35
|
-
/**
|
|
36
|
-
* Get operation risk level
|
|
37
|
-
*/
|
|
38
|
-
static getRiskLevel(operation: string): WarningLevel | null;
|
|
39
|
-
/**
|
|
40
|
-
* Format warning message for display
|
|
41
|
-
*/
|
|
42
|
-
static formatWarning(warning: SafetyWarning): string;
|
|
43
|
-
/**
|
|
44
|
-
* Create warning for specific operation
|
|
45
|
-
*/
|
|
46
|
-
private static createWarningForOperation;
|
|
47
|
-
/**
|
|
48
|
-
* Get emoji for warning level
|
|
49
|
-
*/
|
|
50
|
-
private static getLevelEmoji;
|
|
51
|
-
/**
|
|
52
|
-
* Get color indicator for warning level
|
|
53
|
-
*/
|
|
54
|
-
private static getLevelColor;
|
|
55
|
-
}
|
|
56
|
-
//# sourceMappingURL=safety-warnings.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"safety-warnings.d.ts","sourceRoot":"","sources":["../../src/utils/safety-warnings.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,CAAC;AAE7D,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,YAAY,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,oBAAoB,EAAE,OAAO,CAAC;IAC9B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,YAAY,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAkD5C;IAEF;;OAEG;WACW,eAAe,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,aAAa;IAUlF;;OAEG;WACW,sBAAsB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO;IAIhE;;OAEG;WACW,YAAY,CAAC,SAAS,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI;IAKlE;;OAEG;WACW,aAAa,CAAC,OAAO,EAAE,aAAa,GAAG,MAAM;IAsC3D;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,yBAAyB;IAoMxC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;IAS5B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;CAQ7B"}
|