@andrebuzeli/git-mcp 2.28.1 → 2.28.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/dist/client.d.ts +306 -306
- package/dist/client.js +298 -298
- package/dist/config.d.ts +310 -310
- package/dist/config.js +392 -392
- package/dist/index.d.ts +22 -22
- package/dist/index.js +89 -89
- package/dist/providers/base-provider.d.ts +160 -160
- package/dist/providers/base-provider.js +274 -274
- package/dist/providers/error-handler.d.ts +50 -50
- package/dist/providers/error-handler.js +175 -175
- package/dist/providers/gitea-provider.d.ts +97 -97
- package/dist/providers/gitea-provider.d.ts.map +1 -1
- package/dist/providers/gitea-provider.js +1015 -1001
- package/dist/providers/gitea-provider.js.map +1 -1
- package/dist/providers/github-provider.d.ts +104 -104
- package/dist/providers/github-provider.d.ts.map +1 -1
- package/dist/providers/github-provider.js +1248 -1234
- package/dist/providers/github-provider.js.map +1 -1
- package/dist/providers/index.d.ts +12 -12
- package/dist/providers/index.js +40 -40
- package/dist/providers/provider-factory.d.ts +74 -74
- package/dist/providers/provider-factory.d.ts.map +1 -1
- package/dist/providers/provider-factory.js +318 -311
- package/dist/providers/provider-factory.js.map +1 -1
- package/dist/providers/types.d.ts +318 -318
- package/dist/providers/types.js +6 -6
- package/dist/server.d.ts +76 -76
- package/dist/server.js +306 -306
- package/dist/tools/git-archive.d.ts +165 -165
- package/dist/tools/git-archive.js +233 -233
- package/dist/tools/git-branches.d.ts +430 -430
- package/dist/tools/git-branches.js +627 -627
- package/dist/tools/git-commits.d.ts +485 -485
- package/dist/tools/git-commits.js +735 -735
- package/dist/tools/git-commits.js.map +1 -1
- package/dist/tools/git-config.d.ts +140 -140
- package/dist/tools/git-config.js +268 -268
- package/dist/tools/git-files.d.ts +486 -486
- package/dist/tools/git-files.js +607 -607
- package/dist/tools/git-files.js.map +1 -1
- package/dist/tools/git-issues.d.ts +574 -571
- package/dist/tools/git-issues.d.ts.map +1 -1
- package/dist/tools/git-issues.js +741 -740
- package/dist/tools/git-issues.js.map +1 -1
- package/dist/tools/git-pulls.d.ts +697 -694
- package/dist/tools/git-pulls.d.ts.map +1 -1
- package/dist/tools/git-pulls.js +733 -732
- package/dist/tools/git-pulls.js.map +1 -1
- package/dist/tools/git-releases.d.ts +490 -487
- package/dist/tools/git-releases.d.ts.map +1 -1
- package/dist/tools/git-releases.js +558 -557
- package/dist/tools/git-releases.js.map +1 -1
- package/dist/tools/git-remote.d.ts +138 -138
- package/dist/tools/git-remote.js +274 -274
- package/dist/tools/git-repositories.d.ts +483 -483
- package/dist/tools/git-repositories.js +640 -640
- package/dist/tools/git-repositories.js.map +1 -1
- package/dist/tools/git-reset.d.ts +130 -130
- package/dist/tools/git-reset.js +223 -223
- package/dist/tools/git-revert.d.ts +149 -149
- package/dist/tools/git-revert.js +198 -198
- package/dist/tools/git-stash.d.ts +140 -140
- package/dist/tools/git-stash.js +269 -269
- package/dist/tools/git-sync.d.ts +178 -178
- package/dist/tools/git-sync.js +312 -312
- package/dist/tools/git-tags.d.ts +414 -411
- package/dist/tools/git-tags.d.ts.map +1 -1
- package/dist/tools/git-tags.js +486 -485
- package/dist/tools/git-tags.js.map +1 -1
- package/dist/tools/git-webhooks.d.ts +473 -470
- package/dist/tools/git-webhooks.d.ts.map +1 -1
- package/dist/tools/git-webhooks.js +544 -543
- package/dist/tools/git-webhooks.js.map +1 -1
- package/dist/utils/terminal-controller.d.ts +80 -80
- package/dist/utils/terminal-controller.js +345 -345
- package/dist/utils/user-detection.d.ts +24 -24
- package/dist/utils/user-detection.js +53 -53
- package/package.json +2 -2
- package/dist/tools/gh-actions.d.ts +0 -253
- package/dist/tools/gh-actions.d.ts.map +0 -1
- package/dist/tools/gh-actions.js +0 -390
- package/dist/tools/gh-actions.js.map +0 -1
- package/dist/tools/gh-analytics.d.ts +0 -264
- package/dist/tools/gh-analytics.d.ts.map +0 -1
- package/dist/tools/gh-analytics.js +0 -402
- package/dist/tools/gh-analytics.js.map +0 -1
- package/dist/tools/gh-code-review.d.ts +0 -305
- package/dist/tools/gh-code-review.d.ts.map +0 -1
- package/dist/tools/gh-code-review.js +0 -513
- package/dist/tools/gh-code-review.js.map +0 -1
- package/dist/tools/gh-codespaces.d.ts +0 -139
- package/dist/tools/gh-codespaces.d.ts.map +0 -1
- package/dist/tools/gh-codespaces.js +0 -283
- package/dist/tools/gh-codespaces.js.map +0 -1
- package/dist/tools/gh-deployments.d.ts +0 -301
- package/dist/tools/gh-deployments.d.ts.map +0 -1
- package/dist/tools/gh-deployments.js +0 -368
- package/dist/tools/gh-deployments.js.map +0 -1
- package/dist/tools/gh-gists.d.ts +0 -175
- package/dist/tools/gh-gists.d.ts.map +0 -1
- package/dist/tools/gh-gists.js +0 -322
- package/dist/tools/gh-gists.js.map +0 -1
- package/dist/tools/gh-projects.d.ts +0 -206
- package/dist/tools/gh-projects.d.ts.map +0 -1
- package/dist/tools/gh-projects.js +0 -359
- package/dist/tools/gh-projects.js.map +0 -1
- package/dist/tools/gh-security.d.ts +0 -275
- package/dist/tools/gh-security.d.ts.map +0 -1
- package/dist/tools/gh-security.js +0 -396
- package/dist/tools/gh-security.js.map +0 -1
- package/dist/tools/gh-sync.d.ts +0 -214
- package/dist/tools/gh-sync.d.ts.map +0 -1
- package/dist/tools/gh-sync.js +0 -379
- package/dist/tools/gh-sync.js.map +0 -1
- package/dist/tools/gh-workflows.d.ts +0 -291
- package/dist/tools/gh-workflows.d.ts.map +0 -1
- package/dist/tools/gh-workflows.js +0 -433
- package/dist/tools/gh-workflows.js.map +0 -1
- package/dist/tools/git-bundle.d.ts +0 -172
- package/dist/tools/git-bundle.d.ts.map +0 -1
- package/dist/tools/git-bundle.js +0 -242
- package/dist/tools/git-bundle.js.map +0 -1
- package/dist/tools/git-cherry-pick.d.ts +0 -159
- package/dist/tools/git-cherry-pick.d.ts.map +0 -1
- package/dist/tools/git-cherry-pick.js +0 -225
- package/dist/tools/git-cherry-pick.js.map +0 -1
- package/dist/tools/git-rebase.d.ts +0 -138
- package/dist/tools/git-rebase.d.ts.map +0 -1
- package/dist/tools/git-rebase.js +0 -214
- package/dist/tools/git-rebase.js.map +0 -1
- package/dist/tools/git-submodule.d.ts +0 -153
- package/dist/tools/git-submodule.d.ts.map +0 -1
- package/dist/tools/git-submodule.js +0 -290
- package/dist/tools/git-submodule.js.map +0 -1
- package/dist/tools/git-worktree.d.ts +0 -160
- package/dist/tools/git-worktree.d.ts.map +0 -1
- package/dist/tools/git-worktree.js +0 -270
- package/dist/tools/git-worktree.js.map +0 -1
- package/dist/tools/repositories.d.ts +0 -406
- package/dist/tools/repositories.d.ts.map +0 -1
- package/dist/tools/repositories.js +0 -570
- package/dist/tools/repositories.js.map +0 -1
- package/dist/tools/users.d.ts +0 -373
- package/dist/tools/users.d.ts.map +0 -1
- package/dist/tools/users.js +0 -500
- package/dist/tools/users.js.map +0 -1
- package/dist/tools/validator.d.ts +0 -171
- package/dist/tools/validator.d.ts.map +0 -1
- package/dist/tools/validator.js +0 -195
- package/dist/tools/validator.js.map +0 -1
- package/dist/tools/version-control.d.ts +0 -137
- package/dist/tools/version-control.d.ts.map +0 -1
- package/dist/tools/version-control.js +0 -165
- package/dist/tools/version-control.js.map +0 -1
|
@@ -1,396 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.securityTool = void 0;
|
|
4
|
-
const zod_1 = require("zod");
|
|
5
|
-
const index_js_1 = require("../providers/index.js");
|
|
6
|
-
const user_detection_js_1 = require("../utils/user-detection.js");
|
|
7
|
-
const validator_js_1 = require("./validator.js");
|
|
8
|
-
/**
|
|
9
|
-
* Tool: security
|
|
10
|
-
*
|
|
11
|
-
* DESCRIÇÃO:
|
|
12
|
-
* Gerenciamento completo de segurança e compliance com múltiplas ações
|
|
13
|
-
*
|
|
14
|
-
* FUNCIONALIDADES:
|
|
15
|
-
* - Execução de scans de segurança
|
|
16
|
-
* - Listagem de vulnerabilidades
|
|
17
|
-
* - Gerenciamento de alertas de segurança
|
|
18
|
-
* - Configuração de políticas de segurança
|
|
19
|
-
* - Verificação de compliance
|
|
20
|
-
* - Análise de dependências
|
|
21
|
-
*
|
|
22
|
-
* USO:
|
|
23
|
-
* - Para monitorar vulnerabilidades
|
|
24
|
-
* - Para configurar políticas de segurança
|
|
25
|
-
* - Para compliance e auditoria
|
|
26
|
-
* - Para análise de dependências
|
|
27
|
-
*
|
|
28
|
-
* RECOMENDAÇÕES:
|
|
29
|
-
* - Execute scans regularmente
|
|
30
|
-
* - Configure alertas automáticos
|
|
31
|
-
* - Mantenha dependências atualizadas
|
|
32
|
-
* - Implemente políticas rigorosas
|
|
33
|
-
*/
|
|
34
|
-
/**
|
|
35
|
-
* Schema de validação para entrada da tool security
|
|
36
|
-
*/
|
|
37
|
-
const SecurityInputSchema = zod_1.z.object({
|
|
38
|
-
action: zod_1.z.enum(['scan', 'vulnerabilities', 'alerts', 'policies', 'compliance', 'dependencies', 'advisories']),
|
|
39
|
-
// Parâmetros comuns
|
|
40
|
-
repo: validator_js_1.CommonSchemas.repo,
|
|
41
|
-
// Parâmetros para listagem
|
|
42
|
-
page: validator_js_1.CommonSchemas.page,
|
|
43
|
-
limit: validator_js_1.CommonSchemas.limit,
|
|
44
|
-
// Parâmetros para scan
|
|
45
|
-
scan_type: zod_1.z.enum(['code', 'dependencies', 'secrets', 'infrastructure']).optional(),
|
|
46
|
-
ref: validator_js_1.CommonSchemas.branch,
|
|
47
|
-
// Parâmetros para vulnerabilidades
|
|
48
|
-
severity: zod_1.z.enum(['low', 'medium', 'high', 'critical']).optional(),
|
|
49
|
-
state: zod_1.z.enum(['open', 'fixed', 'dismissed']).optional(),
|
|
50
|
-
ecosystem: validator_js_1.CommonSchemas.shortString,
|
|
51
|
-
package_name: validator_js_1.CommonSchemas.shortString,
|
|
52
|
-
// Parâmetros para alertas
|
|
53
|
-
alert_id: validator_js_1.CommonSchemas.shortString,
|
|
54
|
-
alert_number: zod_1.z.number().optional(),
|
|
55
|
-
dismiss_reason: zod_1.z.enum(['fix_started', 'inaccurate', 'no_bandwidth', 'not_used', 'tolerable_risk']).optional(),
|
|
56
|
-
dismiss_comment: validator_js_1.CommonSchemas.mediumString,
|
|
57
|
-
// Parâmetros para políticas
|
|
58
|
-
policy_name: validator_js_1.CommonSchemas.shortString,
|
|
59
|
-
policy_type: zod_1.z.enum(['branch_protection', 'required_reviews', 'status_checks', 'restrictions']).optional(),
|
|
60
|
-
policy_config: zod_1.z.record(zod_1.z.any()).optional(),
|
|
61
|
-
// Parâmetros para compliance
|
|
62
|
-
compliance_framework: zod_1.z.enum(['sox', 'pci', 'hipaa', 'gdpr', 'iso27001']).optional(),
|
|
63
|
-
report_format: zod_1.z.enum(['json', 'csv', 'pdf']).optional(),
|
|
64
|
-
// Filtros
|
|
65
|
-
created_after: zod_1.z.string().optional(),
|
|
66
|
-
created_before: zod_1.z.string().optional(),
|
|
67
|
-
updated_after: zod_1.z.string().optional(),
|
|
68
|
-
updated_before: zod_1.z.string().optional()
|
|
69
|
-
});
|
|
70
|
-
/**
|
|
71
|
-
* Schema de validação para resultado da tool security
|
|
72
|
-
*/
|
|
73
|
-
const SecurityResultSchema = zod_1.z.object({
|
|
74
|
-
success: zod_1.z.boolean(),
|
|
75
|
-
action: zod_1.z.string(),
|
|
76
|
-
message: zod_1.z.string(),
|
|
77
|
-
data: zod_1.z.any().optional(),
|
|
78
|
-
error: zod_1.z.string().optional()
|
|
79
|
-
});
|
|
80
|
-
/**
|
|
81
|
-
* Implementação da tool security
|
|
82
|
-
*/
|
|
83
|
-
exports.securityTool = {
|
|
84
|
-
name: 'gh-security',
|
|
85
|
-
description: 'tool: Gerencia segurança GitHub para proteção e compliance\n──────────────\naction scan: executa scan de segurança\naction scan requires: repo, scan_type, ref\n───────────────\naction vulnerabilities: lista vulnerabilidades\naction vulnerabilities requires: repo, severity, state, ecosystem, package_name, page, limit\n───────────────\naction alerts: lista alertas de segurança\naction alerts requires: repo, alert_id, alert_number, state, page, limit\n───────────────\naction policies: gerencia políticas de segurança\naction policies requires: repo, policy_name, policy_type, policy_config\n───────────────\naction compliance: verifica conformidade\naction compliance requires: repo, compliance_framework, report_format\n───────────────\naction dependencies: analisa dependências\naction dependencies requires: repo, ecosystem, package_name, page, limit\n───────────────\naction advisories: lista avisos de segurança\naction advisories requires: repo, ecosystem, package_name, page, limit',
|
|
86
|
-
inputSchema: {
|
|
87
|
-
type: 'object',
|
|
88
|
-
properties: {
|
|
89
|
-
action: {
|
|
90
|
-
type: 'string',
|
|
91
|
-
enum: ['scan', 'vulnerabilities', 'alerts', 'policies', 'compliance', 'dependencies', 'advisories'],
|
|
92
|
-
description: 'Action to perform on security'
|
|
93
|
-
},
|
|
94
|
-
repo: { type: 'string', description: 'Repository name' },
|
|
95
|
-
scan_type: { type: 'string', enum: ['code', 'dependencies', 'secrets', 'infrastructure'], description: 'Type of security scan' },
|
|
96
|
-
ref: { type: 'string', description: 'Git reference to scan' },
|
|
97
|
-
severity: { type: 'string', enum: ['low', 'medium', 'high', 'critical'], description: 'Vulnerability severity filter' },
|
|
98
|
-
state: { type: 'string', enum: ['open', 'fixed', 'dismissed'], description: 'Vulnerability state filter' },
|
|
99
|
-
ecosystem: { type: 'string', description: 'Package ecosystem' },
|
|
100
|
-
package_name: { type: 'string', description: 'Package name' },
|
|
101
|
-
alert_id: { type: 'string', description: 'Security alert ID' },
|
|
102
|
-
alert_number: { type: 'number', description: 'Security alert number' },
|
|
103
|
-
dismiss_reason: { type: 'string', enum: ['fix_started', 'inaccurate', 'no_bandwidth', 'not_used', 'tolerable_risk'], description: 'Reason for dismissing alert' },
|
|
104
|
-
dismiss_comment: { type: 'string', description: 'Comment for dismissing alert' },
|
|
105
|
-
policy_name: { type: 'string', description: 'Security policy name' },
|
|
106
|
-
policy_type: { type: 'string', enum: ['branch_protection', 'required_reviews', 'status_checks', 'restrictions'], description: 'Security policy type' },
|
|
107
|
-
policy_config: { type: 'object', description: 'Security policy configuration' },
|
|
108
|
-
compliance_framework: { type: 'string', enum: ['sox', 'pci', 'hipaa', 'gdpr', 'iso27001'], description: 'Compliance framework' },
|
|
109
|
-
report_format: { type: 'string', enum: ['json', 'csv', 'pdf'], description: 'Report format' },
|
|
110
|
-
created_after: { type: 'string', description: 'Filter items created after date' },
|
|
111
|
-
created_before: { type: 'string', description: 'Filter items created before date' },
|
|
112
|
-
updated_after: { type: 'string', description: 'Filter items updated after date' },
|
|
113
|
-
updated_before: { type: 'string', description: 'Filter items updated before date' },
|
|
114
|
-
page: { type: 'number', description: 'Page number', minimum: 1 },
|
|
115
|
-
limit: { type: 'number', description: 'Items per page', minimum: 1, maximum: 100 }
|
|
116
|
-
},
|
|
117
|
-
required: ['action', 'repo']
|
|
118
|
-
},
|
|
119
|
-
async handler(input) {
|
|
120
|
-
try {
|
|
121
|
-
const validatedInput = SecurityInputSchema.parse(input);
|
|
122
|
-
// Fixar provider como github para tools exclusivas do GitHub
|
|
123
|
-
const updatedParams = await (0, user_detection_js_1.applyAutoUserDetection)(validatedInput, 'github');
|
|
124
|
-
const provider = index_js_1.globalProviderFactory.getProvider('github');
|
|
125
|
-
if (!provider) {
|
|
126
|
-
throw new Error('Provider GitHub não encontrado');
|
|
127
|
-
}
|
|
128
|
-
switch (updatedParams.action) {
|
|
129
|
-
case 'scan':
|
|
130
|
-
return await this.runSecurityScan(updatedParams, provider);
|
|
131
|
-
case 'vulnerabilities':
|
|
132
|
-
return await this.listVulnerabilities(updatedParams, provider);
|
|
133
|
-
case 'alerts':
|
|
134
|
-
return await this.manageSecurityAlerts(updatedParams, provider);
|
|
135
|
-
case 'policies':
|
|
136
|
-
return await this.manageSecurityPolicies(updatedParams, provider);
|
|
137
|
-
case 'compliance':
|
|
138
|
-
return await this.checkCompliance(updatedParams, provider);
|
|
139
|
-
case 'dependencies':
|
|
140
|
-
return await this.analyzeDependencies(updatedParams, provider);
|
|
141
|
-
case 'advisories':
|
|
142
|
-
return await this.listSecurityAdvisories(updatedParams, provider);
|
|
143
|
-
default:
|
|
144
|
-
throw new Error(`Ação não suportada: ${updatedParams.action}`);
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
catch (error) {
|
|
148
|
-
return {
|
|
149
|
-
success: false,
|
|
150
|
-
action: input.action || 'unknown',
|
|
151
|
-
message: 'Erro na operação de security',
|
|
152
|
-
error: error instanceof Error ? error.message : String(error)
|
|
153
|
-
};
|
|
154
|
-
}
|
|
155
|
-
},
|
|
156
|
-
/**
|
|
157
|
-
* Executa scan de segurança
|
|
158
|
-
*/
|
|
159
|
-
async runSecurityScan(params, provider) {
|
|
160
|
-
try {
|
|
161
|
-
if (!provider.runSecurityScan) {
|
|
162
|
-
return {
|
|
163
|
-
success: true,
|
|
164
|
-
action: 'scan',
|
|
165
|
-
message: 'Funcionalidade de security scan não suportada por este provider',
|
|
166
|
-
data: {
|
|
167
|
-
scan_type: params.scan_type || 'code',
|
|
168
|
-
findings: [],
|
|
169
|
-
note: 'Security scan não disponível neste provider'
|
|
170
|
-
}
|
|
171
|
-
};
|
|
172
|
-
}
|
|
173
|
-
const result = await provider.runSecurityScan({
|
|
174
|
-
owner: (await provider.getCurrentUser()).login,
|
|
175
|
-
repo: params.repo,
|
|
176
|
-
scan_type: params.scan_type || 'code',
|
|
177
|
-
ref: params.ref || 'main'
|
|
178
|
-
});
|
|
179
|
-
return {
|
|
180
|
-
success: true,
|
|
181
|
-
action: 'scan',
|
|
182
|
-
message: `Scan de segurança executado com sucesso`,
|
|
183
|
-
data: result
|
|
184
|
-
};
|
|
185
|
-
}
|
|
186
|
-
catch (error) {
|
|
187
|
-
throw new Error(`Falha ao executar scan de segurança: ${error}`);
|
|
188
|
-
}
|
|
189
|
-
},
|
|
190
|
-
/**
|
|
191
|
-
* Lista vulnerabilidades
|
|
192
|
-
*/
|
|
193
|
-
async listVulnerabilities(params, provider) {
|
|
194
|
-
try {
|
|
195
|
-
// Auto-detecção de owner/username se não fornecidos
|
|
196
|
-
let updatedParams = { ...params };
|
|
197
|
-
const currentUser = await provider.getCurrentUser();
|
|
198
|
-
const owner = currentUser.login;
|
|
199
|
-
if (!provider.listSecurityVulnerabilities) {
|
|
200
|
-
return {
|
|
201
|
-
success: true,
|
|
202
|
-
action: 'vulnerabilities',
|
|
203
|
-
message: 'Funcionalidade de vulnerabilidades não suportada por este provider',
|
|
204
|
-
data: {
|
|
205
|
-
total_count: 0,
|
|
206
|
-
vulnerabilities: [],
|
|
207
|
-
note: 'Vulnerabilidades não disponíveis neste provider'
|
|
208
|
-
}
|
|
209
|
-
};
|
|
210
|
-
}
|
|
211
|
-
const result = await provider.listSecurityVulnerabilities({
|
|
212
|
-
owner: (await provider.getCurrentUser()).login,
|
|
213
|
-
repo: params.repo,
|
|
214
|
-
severity: params.severity,
|
|
215
|
-
state: params.state,
|
|
216
|
-
ecosystem: params.ecosystem,
|
|
217
|
-
package_name: params.package_name,
|
|
218
|
-
page: params.page,
|
|
219
|
-
limit: params.limit
|
|
220
|
-
});
|
|
221
|
-
return {
|
|
222
|
-
success: true,
|
|
223
|
-
action: 'vulnerabilities',
|
|
224
|
-
message: `${result.vulnerabilities?.length || 0} vulnerabilidades encontradas`,
|
|
225
|
-
data: result
|
|
226
|
-
};
|
|
227
|
-
}
|
|
228
|
-
catch (error) {
|
|
229
|
-
throw new Error(`Falha ao listar vulnerabilidades: ${error}`);
|
|
230
|
-
}
|
|
231
|
-
},
|
|
232
|
-
/**
|
|
233
|
-
* Gerencia alertas de segurança
|
|
234
|
-
*/
|
|
235
|
-
async manageSecurityAlerts(params, provider) {
|
|
236
|
-
try {
|
|
237
|
-
if (!provider.manageSecurityAlerts) {
|
|
238
|
-
return {
|
|
239
|
-
success: false,
|
|
240
|
-
action: 'manage-security-alerts',
|
|
241
|
-
message: 'Funcionalidade não suportada por este provider',
|
|
242
|
-
error: 'Provider não implementa manageSecurityAlerts'
|
|
243
|
-
};
|
|
244
|
-
}
|
|
245
|
-
const result = await provider.manageSecurityAlerts({
|
|
246
|
-
owner: (await provider.getCurrentUser()).login,
|
|
247
|
-
repo: params.repo,
|
|
248
|
-
action: 'dismiss', // ou 'reopen' baseado nos parâmetros
|
|
249
|
-
alert_number: params.alert_number,
|
|
250
|
-
dismiss_reason: params.dismiss_reason,
|
|
251
|
-
dismiss_comment: params.dismiss_comment
|
|
252
|
-
});
|
|
253
|
-
return {
|
|
254
|
-
success: true,
|
|
255
|
-
action: 'alerts',
|
|
256
|
-
message: `Alertas de segurança gerenciados com sucesso`,
|
|
257
|
-
data: result
|
|
258
|
-
};
|
|
259
|
-
}
|
|
260
|
-
catch (error) {
|
|
261
|
-
throw new Error(`Falha ao gerenciar alertas de segurança: ${error}`);
|
|
262
|
-
}
|
|
263
|
-
},
|
|
264
|
-
/**
|
|
265
|
-
* Gerencia políticas de segurança
|
|
266
|
-
*/
|
|
267
|
-
async manageSecurityPolicies(params, provider) {
|
|
268
|
-
try {
|
|
269
|
-
if (!provider.manageSecurityPolicies) {
|
|
270
|
-
return {
|
|
271
|
-
success: false,
|
|
272
|
-
action: 'manage-security-policies',
|
|
273
|
-
message: 'Funcionalidade não suportada por este provider',
|
|
274
|
-
error: 'Provider não implementa manageSecurityPolicies'
|
|
275
|
-
};
|
|
276
|
-
}
|
|
277
|
-
const result = await provider.manageSecurityPolicies({
|
|
278
|
-
owner: (await provider.getCurrentUser()).login,
|
|
279
|
-
repo: params.repo,
|
|
280
|
-
policy_name: params.policy_name,
|
|
281
|
-
policy_type: params.policy_type,
|
|
282
|
-
policy_config: params.policy_config,
|
|
283
|
-
page: params.page,
|
|
284
|
-
limit: params.limit
|
|
285
|
-
});
|
|
286
|
-
return {
|
|
287
|
-
success: true,
|
|
288
|
-
action: 'policies',
|
|
289
|
-
message: `Políticas de segurança gerenciadas com sucesso`,
|
|
290
|
-
data: result
|
|
291
|
-
};
|
|
292
|
-
}
|
|
293
|
-
catch (error) {
|
|
294
|
-
throw new Error(`Falha ao gerenciar políticas de segurança: ${error}`);
|
|
295
|
-
}
|
|
296
|
-
},
|
|
297
|
-
/**
|
|
298
|
-
* Verifica compliance
|
|
299
|
-
*/
|
|
300
|
-
async checkCompliance(params, provider) {
|
|
301
|
-
try {
|
|
302
|
-
if (!provider.checkCompliance) {
|
|
303
|
-
return {
|
|
304
|
-
success: false,
|
|
305
|
-
action: 'check-compliance',
|
|
306
|
-
message: 'Funcionalidade não suportada por este provider',
|
|
307
|
-
error: 'Provider não implementa checkCompliance'
|
|
308
|
-
};
|
|
309
|
-
}
|
|
310
|
-
const result = await provider.checkCompliance({
|
|
311
|
-
owner: (await provider.getCurrentUser()).login,
|
|
312
|
-
repo: params.repo,
|
|
313
|
-
framework: params.compliance_framework,
|
|
314
|
-
report_format: params.report_format || 'json'
|
|
315
|
-
});
|
|
316
|
-
return {
|
|
317
|
-
success: true,
|
|
318
|
-
action: 'compliance',
|
|
319
|
-
message: `Verificação de compliance executada com sucesso`,
|
|
320
|
-
data: result
|
|
321
|
-
};
|
|
322
|
-
}
|
|
323
|
-
catch (error) {
|
|
324
|
-
throw new Error(`Falha ao verificar compliance: ${error}`);
|
|
325
|
-
}
|
|
326
|
-
},
|
|
327
|
-
/**
|
|
328
|
-
* Analisa dependências
|
|
329
|
-
*/
|
|
330
|
-
async analyzeDependencies(params, provider) {
|
|
331
|
-
try {
|
|
332
|
-
if (!provider.analyzeDependencies) {
|
|
333
|
-
return {
|
|
334
|
-
success: false,
|
|
335
|
-
action: 'analyze-dependencies',
|
|
336
|
-
message: 'Funcionalidade não suportada por este provider',
|
|
337
|
-
error: 'Provider não implementa analyzeDependencies'
|
|
338
|
-
};
|
|
339
|
-
}
|
|
340
|
-
const result = await provider.analyzeDependencies({
|
|
341
|
-
owner: (await provider.getCurrentUser()).login,
|
|
342
|
-
repo: params.repo,
|
|
343
|
-
ecosystem: params.ecosystem,
|
|
344
|
-
package: params.package_name,
|
|
345
|
-
ref: params.ref
|
|
346
|
-
});
|
|
347
|
-
return {
|
|
348
|
-
success: true,
|
|
349
|
-
action: 'dependencies',
|
|
350
|
-
message: `Análise de dependências executada com sucesso`,
|
|
351
|
-
data: result
|
|
352
|
-
};
|
|
353
|
-
}
|
|
354
|
-
catch (error) {
|
|
355
|
-
throw new Error(`Falha ao analisar dependências: ${error}`);
|
|
356
|
-
}
|
|
357
|
-
},
|
|
358
|
-
/**
|
|
359
|
-
* Lista advisories de segurança
|
|
360
|
-
*/
|
|
361
|
-
async listSecurityAdvisories(params, provider) {
|
|
362
|
-
try {
|
|
363
|
-
// Auto-detecção de owner/username se não fornecidos
|
|
364
|
-
let updatedParams = { ...params };
|
|
365
|
-
const currentUser = await provider.getCurrentUser();
|
|
366
|
-
const owner = currentUser.login;
|
|
367
|
-
if (!provider.listSecurityAdvisories) {
|
|
368
|
-
return {
|
|
369
|
-
success: false,
|
|
370
|
-
action: 'list-security-advisories',
|
|
371
|
-
message: 'Funcionalidade não suportada por este provider',
|
|
372
|
-
error: 'Provider não implementa listSecurityAdvisories'
|
|
373
|
-
};
|
|
374
|
-
}
|
|
375
|
-
const result = await provider.listSecurityAdvisories({
|
|
376
|
-
owner: (await provider.getCurrentUser()).login,
|
|
377
|
-
repo: params.repo,
|
|
378
|
-
severity: params.severity,
|
|
379
|
-
ecosystem: params.ecosystem,
|
|
380
|
-
package: params.package_name,
|
|
381
|
-
page: params.page,
|
|
382
|
-
limit: params.limit
|
|
383
|
-
});
|
|
384
|
-
return {
|
|
385
|
-
success: true,
|
|
386
|
-
action: 'advisories',
|
|
387
|
-
message: `${result.advisories?.length || 0} advisories encontrados`,
|
|
388
|
-
data: result
|
|
389
|
-
};
|
|
390
|
-
}
|
|
391
|
-
catch (error) {
|
|
392
|
-
throw new Error(`Falha ao listar advisories: ${error}`);
|
|
393
|
-
}
|
|
394
|
-
}
|
|
395
|
-
};
|
|
396
|
-
//# sourceMappingURL=gh-security.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gh-security.js","sourceRoot":"","sources":["../../src/tools/gh-security.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/gh-sync.d.ts
DELETED
|
@@ -1,214 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
import { VcsOperations } from '../providers/index.js';
|
|
3
|
-
/**
|
|
4
|
-
* Tool: gh-sync
|
|
5
|
-
*
|
|
6
|
-
* DESCRIÇÃO:
|
|
7
|
-
* Sincronização GitHub (exclusivo GitHub) com múltiplas ações
|
|
8
|
-
*
|
|
9
|
-
* FUNCIONALIDADES:
|
|
10
|
-
* - Sincronizar repositórios
|
|
11
|
-
* - Sincronizar issues
|
|
12
|
-
* - Sincronizar pull requests
|
|
13
|
-
* - Sincronizar releases
|
|
14
|
-
* - Sincronizar webhooks
|
|
15
|
-
* - Sincronizar configurações
|
|
16
|
-
*
|
|
17
|
-
* USO:
|
|
18
|
-
* - Para manter repositórios em sincronia
|
|
19
|
-
* - Para backup de configurações
|
|
20
|
-
* - Para migração de dados
|
|
21
|
-
* - Para espelhamento de repositórios
|
|
22
|
-
*
|
|
23
|
-
* RECOMENDAÇÕES:
|
|
24
|
-
* - Use para repositórios críticos
|
|
25
|
-
* - Configure sincronização automática
|
|
26
|
-
* - Monitore status de sincronização
|
|
27
|
-
* - Teste em repositórios de teste primeiro
|
|
28
|
-
*/
|
|
29
|
-
declare const GhSyncInputSchema: z.ZodObject<{
|
|
30
|
-
action: z.ZodEnum<["sync-repos", "sync-issues", "sync-pulls", "sync-releases", "sync-webhooks", "sync-config"]>;
|
|
31
|
-
repo: z.ZodString;
|
|
32
|
-
projectPath: z.ZodString;
|
|
33
|
-
source_repo: z.ZodOptional<z.ZodString>;
|
|
34
|
-
target_repo: z.ZodOptional<z.ZodString>;
|
|
35
|
-
sync_branches: z.ZodOptional<z.ZodBoolean>;
|
|
36
|
-
sync_tags: z.ZodOptional<z.ZodBoolean>;
|
|
37
|
-
issue_number: z.ZodOptional<z.ZodNumber>;
|
|
38
|
-
sync_comments: z.ZodOptional<z.ZodBoolean>;
|
|
39
|
-
sync_labels: z.ZodOptional<z.ZodBoolean>;
|
|
40
|
-
pull_number: z.ZodOptional<z.ZodNumber>;
|
|
41
|
-
sync_reviews: z.ZodOptional<z.ZodBoolean>;
|
|
42
|
-
sync_commits: z.ZodOptional<z.ZodBoolean>;
|
|
43
|
-
release_tag: z.ZodOptional<z.ZodString>;
|
|
44
|
-
sync_assets: z.ZodOptional<z.ZodBoolean>;
|
|
45
|
-
webhook_id: z.ZodOptional<z.ZodString>;
|
|
46
|
-
sync_events: z.ZodOptional<z.ZodBoolean>;
|
|
47
|
-
config_type: z.ZodOptional<z.ZodEnum<["branches", "collaborators", "settings"]>>;
|
|
48
|
-
dry_run: z.ZodOptional<z.ZodBoolean>;
|
|
49
|
-
force: z.ZodOptional<z.ZodBoolean>;
|
|
50
|
-
}, "strip", z.ZodTypeAny, {
|
|
51
|
-
repo: string;
|
|
52
|
-
action: "sync-repos" | "sync-issues" | "sync-pulls" | "sync-releases" | "sync-webhooks" | "sync-config";
|
|
53
|
-
projectPath: string;
|
|
54
|
-
force?: boolean | undefined;
|
|
55
|
-
issue_number?: number | undefined;
|
|
56
|
-
pull_number?: number | undefined;
|
|
57
|
-
webhook_id?: string | undefined;
|
|
58
|
-
source_repo?: string | undefined;
|
|
59
|
-
target_repo?: string | undefined;
|
|
60
|
-
sync_branches?: boolean | undefined;
|
|
61
|
-
sync_tags?: boolean | undefined;
|
|
62
|
-
sync_comments?: boolean | undefined;
|
|
63
|
-
sync_labels?: boolean | undefined;
|
|
64
|
-
sync_reviews?: boolean | undefined;
|
|
65
|
-
sync_commits?: boolean | undefined;
|
|
66
|
-
release_tag?: string | undefined;
|
|
67
|
-
sync_assets?: boolean | undefined;
|
|
68
|
-
sync_events?: boolean | undefined;
|
|
69
|
-
config_type?: "branches" | "collaborators" | "settings" | undefined;
|
|
70
|
-
dry_run?: boolean | undefined;
|
|
71
|
-
}, {
|
|
72
|
-
repo: string;
|
|
73
|
-
action: "sync-repos" | "sync-issues" | "sync-pulls" | "sync-releases" | "sync-webhooks" | "sync-config";
|
|
74
|
-
projectPath: string;
|
|
75
|
-
force?: boolean | undefined;
|
|
76
|
-
issue_number?: number | undefined;
|
|
77
|
-
pull_number?: number | undefined;
|
|
78
|
-
webhook_id?: string | undefined;
|
|
79
|
-
source_repo?: string | undefined;
|
|
80
|
-
target_repo?: string | undefined;
|
|
81
|
-
sync_branches?: boolean | undefined;
|
|
82
|
-
sync_tags?: boolean | undefined;
|
|
83
|
-
sync_comments?: boolean | undefined;
|
|
84
|
-
sync_labels?: boolean | undefined;
|
|
85
|
-
sync_reviews?: boolean | undefined;
|
|
86
|
-
sync_commits?: boolean | undefined;
|
|
87
|
-
release_tag?: string | undefined;
|
|
88
|
-
sync_assets?: boolean | undefined;
|
|
89
|
-
sync_events?: boolean | undefined;
|
|
90
|
-
config_type?: "branches" | "collaborators" | "settings" | undefined;
|
|
91
|
-
dry_run?: boolean | undefined;
|
|
92
|
-
}>;
|
|
93
|
-
export type GhSyncInput = z.infer<typeof GhSyncInputSchema>;
|
|
94
|
-
declare const GhSyncResultSchema: z.ZodObject<{
|
|
95
|
-
success: z.ZodBoolean;
|
|
96
|
-
action: z.ZodString;
|
|
97
|
-
message: z.ZodString;
|
|
98
|
-
data: z.ZodOptional<z.ZodAny>;
|
|
99
|
-
error: z.ZodOptional<z.ZodString>;
|
|
100
|
-
}, "strip", z.ZodTypeAny, {
|
|
101
|
-
message: string;
|
|
102
|
-
action: string;
|
|
103
|
-
success: boolean;
|
|
104
|
-
error?: string | undefined;
|
|
105
|
-
data?: any;
|
|
106
|
-
}, {
|
|
107
|
-
message: string;
|
|
108
|
-
action: string;
|
|
109
|
-
success: boolean;
|
|
110
|
-
error?: string | undefined;
|
|
111
|
-
data?: any;
|
|
112
|
-
}>;
|
|
113
|
-
export type GhSyncResult = z.infer<typeof GhSyncResultSchema>;
|
|
114
|
-
export declare const ghSyncTool: {
|
|
115
|
-
name: string;
|
|
116
|
-
description: string;
|
|
117
|
-
inputSchema: {
|
|
118
|
-
type: string;
|
|
119
|
-
properties: {
|
|
120
|
-
action: {
|
|
121
|
-
type: string;
|
|
122
|
-
enum: string[];
|
|
123
|
-
description: string;
|
|
124
|
-
};
|
|
125
|
-
repo: {
|
|
126
|
-
type: string;
|
|
127
|
-
description: string;
|
|
128
|
-
};
|
|
129
|
-
projectPath: {
|
|
130
|
-
type: string;
|
|
131
|
-
description: string;
|
|
132
|
-
};
|
|
133
|
-
source_repo: {
|
|
134
|
-
type: string;
|
|
135
|
-
description: string;
|
|
136
|
-
};
|
|
137
|
-
target_repo: {
|
|
138
|
-
type: string;
|
|
139
|
-
description: string;
|
|
140
|
-
};
|
|
141
|
-
sync_branches: {
|
|
142
|
-
type: string;
|
|
143
|
-
description: string;
|
|
144
|
-
};
|
|
145
|
-
sync_tags: {
|
|
146
|
-
type: string;
|
|
147
|
-
description: string;
|
|
148
|
-
};
|
|
149
|
-
issue_number: {
|
|
150
|
-
type: string;
|
|
151
|
-
description: string;
|
|
152
|
-
};
|
|
153
|
-
sync_comments: {
|
|
154
|
-
type: string;
|
|
155
|
-
description: string;
|
|
156
|
-
};
|
|
157
|
-
sync_labels: {
|
|
158
|
-
type: string;
|
|
159
|
-
description: string;
|
|
160
|
-
};
|
|
161
|
-
pull_number: {
|
|
162
|
-
type: string;
|
|
163
|
-
description: string;
|
|
164
|
-
};
|
|
165
|
-
sync_reviews: {
|
|
166
|
-
type: string;
|
|
167
|
-
description: string;
|
|
168
|
-
};
|
|
169
|
-
sync_commits: {
|
|
170
|
-
type: string;
|
|
171
|
-
description: string;
|
|
172
|
-
};
|
|
173
|
-
release_tag: {
|
|
174
|
-
type: string;
|
|
175
|
-
description: string;
|
|
176
|
-
};
|
|
177
|
-
sync_assets: {
|
|
178
|
-
type: string;
|
|
179
|
-
description: string;
|
|
180
|
-
};
|
|
181
|
-
webhook_id: {
|
|
182
|
-
type: string;
|
|
183
|
-
description: string;
|
|
184
|
-
};
|
|
185
|
-
sync_events: {
|
|
186
|
-
type: string;
|
|
187
|
-
description: string;
|
|
188
|
-
};
|
|
189
|
-
config_type: {
|
|
190
|
-
type: string;
|
|
191
|
-
enum: string[];
|
|
192
|
-
description: string;
|
|
193
|
-
};
|
|
194
|
-
dry_run: {
|
|
195
|
-
type: string;
|
|
196
|
-
description: string;
|
|
197
|
-
};
|
|
198
|
-
force: {
|
|
199
|
-
type: string;
|
|
200
|
-
description: string;
|
|
201
|
-
};
|
|
202
|
-
};
|
|
203
|
-
required: string[];
|
|
204
|
-
};
|
|
205
|
-
handler(input: GhSyncInput): Promise<GhSyncResult>;
|
|
206
|
-
syncRepos(params: GhSyncInput, provider: VcsOperations): Promise<GhSyncResult>;
|
|
207
|
-
syncIssues(params: GhSyncInput, provider: VcsOperations): Promise<GhSyncResult>;
|
|
208
|
-
syncPulls(params: GhSyncInput, provider: VcsOperations): Promise<GhSyncResult>;
|
|
209
|
-
syncReleases(params: GhSyncInput, provider: VcsOperations): Promise<GhSyncResult>;
|
|
210
|
-
syncWebhooks(params: GhSyncInput, provider: VcsOperations): Promise<GhSyncResult>;
|
|
211
|
-
syncConfig(params: GhSyncInput, provider: VcsOperations): Promise<GhSyncResult>;
|
|
212
|
-
};
|
|
213
|
-
export {};
|
|
214
|
-
//# sourceMappingURL=gh-sync.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"gh-sync.d.ts","sourceRoot":"","sources":["../../src/tools/gh-sync.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAyB,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAE7E;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,QAAA,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAoCrB,CAAC;AAEH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;EAMtB,CAAC;AAEH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAkCA,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC;sBAqChC,WAAW,YAAY,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;uBAiD3D,WAAW,YAAY,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;sBA2C7D,WAAW,YAAY,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;yBA2CzD,WAAW,YAAY,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;yBAwC5D,WAAW,YAAY,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;uBAwC9D,WAAW,YAAY,aAAa,GAAG,OAAO,CAAC,YAAY,CAAC;CAuCtF,CAAC"}
|