@andrebuzeli/git-mcp 3.0.1 → 3.1.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 (61) hide show
  1. package/README.md +329 -356
  2. package/dist/server.d.ts.map +1 -1
  3. package/dist/server.js +83 -82
  4. package/dist/server.js.map +1 -1
  5. package/dist/tools/git-branches.d.ts +359 -125
  6. package/dist/tools/git-branches.d.ts.map +1 -1
  7. package/dist/tools/git-branches.js +530 -179
  8. package/dist/tools/git-branches.js.map +1 -1
  9. package/dist/tools/git-commits.d.ts +2 -2
  10. package/dist/tools/git-config.d.ts +2 -2
  11. package/dist/tools/git-files.d.ts +406 -246
  12. package/dist/tools/git-files.d.ts.map +1 -1
  13. package/dist/tools/git-files.js +499 -556
  14. package/dist/tools/git-files.js.map +1 -1
  15. package/dist/tools/git-issues.d.ts +10 -10
  16. package/dist/tools/git-packages.d.ts +2 -2
  17. package/dist/tools/git-projects.d.ts +57 -142
  18. package/dist/tools/git-projects.d.ts.map +1 -1
  19. package/dist/tools/git-projects.js +283 -281
  20. package/dist/tools/git-projects.js.map +1 -1
  21. package/dist/tools/git-publish.d.ts +327 -0
  22. package/dist/tools/git-publish.d.ts.map +1 -0
  23. package/dist/tools/git-publish.js +632 -0
  24. package/dist/tools/git-publish.js.map +1 -0
  25. package/dist/tools/git-pulls.d.ts +16 -16
  26. package/dist/tools/git-releases.d.ts +401 -131
  27. package/dist/tools/git-releases.d.ts.map +1 -1
  28. package/dist/tools/git-releases.js +469 -374
  29. package/dist/tools/git-releases.js.map +1 -1
  30. package/dist/tools/git-remote.d.ts +4 -4
  31. package/dist/tools/git-repositories.d.ts +8 -8
  32. package/dist/tools/git-reset.d.ts +65 -106
  33. package/dist/tools/git-reset.d.ts.map +1 -1
  34. package/dist/tools/git-reset.js +149 -265
  35. package/dist/tools/git-reset.js.map +1 -1
  36. package/dist/tools/git-stash.d.ts +68 -110
  37. package/dist/tools/git-stash.d.ts.map +1 -1
  38. package/dist/tools/git-stash.js +186 -311
  39. package/dist/tools/git-stash.js.map +1 -1
  40. package/dist/tools/git-sync.d.ts +80 -149
  41. package/dist/tools/git-sync.d.ts.map +1 -1
  42. package/dist/tools/git-sync.js +246 -346
  43. package/dist/tools/git-sync.js.map +1 -1
  44. package/dist/tools/git-tags.d.ts +2 -2
  45. package/dist/tools/git-update-project.d.ts +159 -4
  46. package/dist/tools/git-update-project.d.ts.map +1 -1
  47. package/dist/tools/git-update-project.js +349 -7
  48. package/dist/tools/git-update-project.js.map +1 -1
  49. package/dist/tools/git-workflow.d.ts +259 -200
  50. package/dist/tools/git-workflow.d.ts.map +1 -1
  51. package/dist/tools/git-workflow.js +498 -424
  52. package/dist/tools/git-workflow.js.map +1 -1
  53. package/package.json +14 -5
  54. package/dist/tools/git-undo.d.ts +0 -268
  55. package/dist/tools/git-undo.d.ts.map +0 -1
  56. package/dist/tools/git-undo.js +0 -516
  57. package/dist/tools/git-undo.js.map +0 -1
  58. package/dist/tools/git-versioning.d.ts +0 -286
  59. package/dist/tools/git-versioning.d.ts.map +0 -1
  60. package/dist/tools/git-versioning.js +0 -483
  61. package/dist/tools/git-versioning.js.map +0 -1
@@ -1,228 +1,186 @@
1
1
  import { z } from 'zod';
2
+ import { VcsOperations } from '../providers/index.js';
2
3
  /**
3
- * Tool: git-files
4
+ * Tool: files
4
5
  *
5
- * GERENCIAMENTO DE ARQUIVOS - Expandido com bulk operations
6
- * Funcionalidades avançadas para manipulação de arquivos
6
+ * DESCRIÇÃO:
7
+ * Gerenciamento completo de arquivos e diretórios Gitea com múltiplas ações
7
8
  *
8
- * DESIGNED FOR: Programador individual autônomo
9
- * PHILOSOPHY: Operações em lote e manipulação avançada de arquivos
9
+ * FUNCIONALIDADES:
10
+ * - Criação de arquivos e diretórios
11
+ * - Leitura e listagem de conteúdo
12
+ * - Atualização de arquivos existentes
13
+ * - Exclusão de arquivos e diretórios
14
+ * - Busca por conteúdo e nome
15
+ * - Controle de versão de arquivos
16
+ *
17
+ * USO:
18
+ * - Para gerenciar arquivos de projeto
19
+ * - Para automatizar criação de arquivos
20
+ * - Para backup e migração de conteúdo
21
+ * - Para sincronização de arquivos
22
+ *
23
+ * RECOMENDAÇÕES:
24
+ * - Use mensagens de commit descritivas
25
+ * - Mantenha estrutura de diretórios organizada
26
+ * - Valide conteúdo antes de enviar
27
+ * - Use branches para mudanças grandes
10
28
  */
11
- declare const GitFilesInputSchema: z.ZodDiscriminatedUnion<"action", [z.ZodObject<{
12
- action: z.ZodLiteral<"read">;
13
- projectPath: z.ZodString;
14
- filePath: z.ZodString;
15
- }, "strip", z.ZodTypeAny, {
16
- action: "read";
17
- projectPath: string;
18
- filePath: string;
19
- }, {
20
- action: "read";
21
- projectPath: string;
22
- filePath: string;
23
- }>, z.ZodObject<{
24
- action: z.ZodLiteral<"create">;
25
- projectPath: z.ZodString;
26
- filePath: z.ZodString;
27
- content: z.ZodString;
28
- }, "strip", z.ZodTypeAny, {
29
- action: "create";
30
- projectPath: string;
31
- filePath: string;
32
- content: string;
33
- }, {
34
- action: "create";
35
- projectPath: string;
36
- filePath: string;
37
- content: string;
38
- }>, z.ZodObject<{
39
- action: z.ZodLiteral<"update">;
40
- projectPath: z.ZodString;
41
- filePath: z.ZodString;
42
- content: z.ZodString;
43
- }, "strip", z.ZodTypeAny, {
44
- action: "update";
45
- projectPath: string;
46
- filePath: string;
47
- content: string;
48
- }, {
49
- action: "update";
50
- projectPath: string;
51
- filePath: string;
52
- content: string;
53
- }>, z.ZodObject<{
54
- action: z.ZodLiteral<"delete">;
55
- projectPath: z.ZodString;
56
- filePath: z.ZodString;
57
- }, "strip", z.ZodTypeAny, {
58
- action: "delete";
59
- projectPath: string;
60
- filePath: string;
61
- }, {
62
- action: "delete";
63
- projectPath: string;
64
- filePath: string;
65
- }>, z.ZodObject<{
66
- action: z.ZodLiteral<"list">;
29
+ /**
30
+ * Schema de validação para entrada da tool files
31
+ *
32
+ * VALIDAÇÕES:
33
+ * - action: Ação obrigatória (get, create, update, delete, list, search)
34
+ * - Parâmetros específicos por ação
35
+ * - Validação de tipos e formatos
36
+ *
37
+ * RECOMENDAÇÕES:
38
+ * - Sempre valide entrada antes de usar
39
+ * - Use parâmetros opcionais adequadamente
40
+ * - Documente parâmetros obrigatórios
41
+ */
42
+ declare const FilesInputSchema: z.ZodObject<{
43
+ action: z.ZodEnum<["get", "create", "update", "delete", "list", "search", "upload-project"]>;
44
+ repo: z.ZodString;
45
+ path: z.ZodOptional<z.ZodString>;
67
46
  projectPath: z.ZodString;
68
- path: z.ZodDefault<z.ZodOptional<z.ZodString>>;
69
- recursive: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
47
+ provider: z.ZodEnum<["gitea", "github"]>;
48
+ content: z.ZodOptional<z.ZodString>;
49
+ message: z.ZodOptional<z.ZodString>;
50
+ branch: z.ZodOptional<z.ZodString>;
51
+ sha: z.ZodOptional<z.ZodString>;
52
+ ref: z.ZodOptional<z.ZodString>;
53
+ query: z.ZodOptional<z.ZodString>;
54
+ page: z.ZodOptional<z.ZodNumber>;
55
+ limit: z.ZodOptional<z.ZodNumber>;
70
56
  }, "strip", z.ZodTypeAny, {
71
- path: string;
72
- recursive: boolean;
73
- action: "list";
74
- projectPath: string;
75
- }, {
76
- action: "list";
57
+ provider: "gitea" | "github";
58
+ repo: string;
59
+ action: "delete" | "get" | "search" | "list" | "create" | "update" | "upload-project";
77
60
  projectPath: string;
78
61
  path?: string | undefined;
79
- recursive?: boolean | undefined;
80
- }>, z.ZodObject<{
81
- action: z.ZodLiteral<"create-dir">;
82
- projectPath: z.ZodString;
83
- dirPath: z.ZodString;
84
- }, "strip", z.ZodTypeAny, {
85
- action: "create-dir";
86
- projectPath: string;
87
- dirPath: string;
88
- }, {
89
- action: "create-dir";
90
- projectPath: string;
91
- dirPath: string;
92
- }>, z.ZodObject<{
93
- action: z.ZodLiteral<"bulk-create">;
94
- projectPath: z.ZodString;
95
- files: z.ZodArray<z.ZodObject<{
96
- path: z.ZodString;
97
- content: z.ZodString;
98
- }, "strip", z.ZodTypeAny, {
99
- path: string;
100
- content: string;
101
- }, {
102
- path: string;
103
- content: string;
104
- }>, "many">;
105
- }, "strip", z.ZodTypeAny, {
106
- action: "bulk-create";
107
- projectPath: string;
108
- files: {
109
- path: string;
110
- content: string;
111
- }[];
112
- }, {
113
- action: "bulk-create";
114
- projectPath: string;
115
- files: {
116
- path: string;
117
- content: string;
118
- }[];
119
- }>, z.ZodObject<{
120
- action: z.ZodLiteral<"bulk-delete">;
121
- projectPath: z.ZodString;
122
- files: z.ZodArray<z.ZodString, "many">;
123
- confirm: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
124
- }, "strip", z.ZodTypeAny, {
125
- action: "bulk-delete";
126
- projectPath: string;
127
- files: string[];
128
- confirm: boolean;
62
+ message?: string | undefined;
63
+ ref?: string | undefined;
64
+ page?: number | undefined;
65
+ limit?: number | undefined;
66
+ sha?: string | undefined;
67
+ branch?: string | undefined;
68
+ query?: string | undefined;
69
+ content?: string | undefined;
129
70
  }, {
130
- action: "bulk-delete";
71
+ provider: "gitea" | "github";
72
+ repo: string;
73
+ action: "delete" | "get" | "search" | "list" | "create" | "update" | "upload-project";
131
74
  projectPath: string;
132
- files: string[];
133
- confirm?: boolean | undefined;
134
- }>, z.ZodObject<{
135
- action: z.ZodLiteral<"bulk-copy">;
136
- projectPath: z.ZodString;
137
- files: z.ZodArray<z.ZodObject<{
138
- from: z.ZodString;
139
- to: z.ZodString;
140
- }, "strip", z.ZodTypeAny, {
141
- from: string;
142
- to: string;
143
- }, {
144
- from: string;
145
- to: string;
146
- }>, "many">;
147
- }, "strip", z.ZodTypeAny, {
148
- action: "bulk-copy";
149
- projectPath: string;
150
- files: {
151
- from: string;
152
- to: string;
153
- }[];
154
- }, {
155
- action: "bulk-copy";
156
- projectPath: string;
157
- files: {
158
- from: string;
159
- to: string;
160
- }[];
161
- }>, z.ZodObject<{
162
- action: z.ZodLiteral<"search">;
163
- projectPath: z.ZodString;
164
- query: z.ZodString;
165
- path: z.ZodDefault<z.ZodOptional<z.ZodString>>;
166
- caseSensitive: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
167
- }, "strip", z.ZodTypeAny, {
168
- path: string;
169
- action: "search";
170
- projectPath: string;
171
- query: string;
172
- caseSensitive: boolean;
173
- }, {
174
- action: "search";
175
- projectPath: string;
176
- query: string;
177
75
  path?: string | undefined;
178
- caseSensitive?: boolean | undefined;
179
- }>, z.ZodObject<{
180
- action: z.ZodLiteral<"create-template">;
181
- projectPath: z.ZodString;
182
- template: z.ZodEnum<["gitignore", "readme", "license", "dockerfile", "package-json"]>;
183
- name: z.ZodOptional<z.ZodString>;
184
- }, "strip", z.ZodTypeAny, {
185
- action: "create-template";
186
- projectPath: string;
187
- template: "gitignore" | "readme" | "license" | "dockerfile" | "package-json";
188
- name?: string | undefined;
189
- }, {
190
- action: "create-template";
191
- projectPath: string;
192
- template: "gitignore" | "readme" | "license" | "dockerfile" | "package-json";
193
- name?: string | undefined;
194
- }>]>;
195
- export type GitFilesInput = z.infer<typeof GitFilesInputSchema>;
196
- declare const GitFilesResultSchema: z.ZodObject<{
76
+ message?: string | undefined;
77
+ ref?: string | undefined;
78
+ page?: number | undefined;
79
+ limit?: number | undefined;
80
+ sha?: string | undefined;
81
+ branch?: string | undefined;
82
+ query?: string | undefined;
83
+ content?: string | undefined;
84
+ }>;
85
+ export type FilesInput = z.infer<typeof FilesInputSchema>;
86
+ /**
87
+ * Schema de saída padronizado
88
+ *
89
+ * ESTRUTURA:
90
+ * - success: Status da operação
91
+ * - action: Ação executada
92
+ * - message: Mensagem descritiva
93
+ * - data: Dados retornados (opcional)
94
+ * - error: Detalhes do erro (opcional)
95
+ */
96
+ declare const FilesResultSchema: z.ZodObject<{
197
97
  success: z.ZodBoolean;
198
98
  action: z.ZodString;
199
99
  message: z.ZodString;
200
100
  data: z.ZodOptional<z.ZodAny>;
201
101
  error: z.ZodOptional<z.ZodString>;
202
- recoverable: z.ZodOptional<z.ZodBoolean>;
203
- suggestion: z.ZodOptional<z.ZodString>;
204
- warning: z.ZodOptional<z.ZodString>;
205
102
  }, "strip", z.ZodTypeAny, {
206
103
  message: string;
207
104
  action: string;
208
105
  success: boolean;
209
106
  error?: string | undefined;
210
107
  data?: any;
211
- recoverable?: boolean | undefined;
212
- suggestion?: string | undefined;
213
- warning?: string | undefined;
214
108
  }, {
215
109
  message: string;
216
110
  action: string;
217
111
  success: boolean;
218
112
  error?: string | undefined;
219
113
  data?: any;
220
- recoverable?: boolean | undefined;
221
- suggestion?: string | undefined;
222
- warning?: string | undefined;
223
114
  }>;
224
- export type GitFilesResult = z.infer<typeof GitFilesResultSchema>;
225
- export declare const gitFilesTool: {
115
+ export type FilesResult = z.infer<typeof FilesResultSchema>;
116
+ /**
117
+ * Tool: files
118
+ *
119
+ * DESCRIÇÃO:
120
+ * Gerenciamento completo de arquivos e diretórios Gitea com múltiplas ações
121
+ *
122
+ * ACTIONS DISPONÍVEIS:
123
+ *
124
+ * 1. get - Obter conteúdo de arquivo
125
+ * Parâmetros:
126
+ * - owner (obrigatório): Proprietário do repositório
127
+ * - repo (obrigatório): Nome do repositório
128
+ * - path (obrigatório): Caminho do arquivo
129
+ * - ref (opcional): Branch, tag ou commit (padrão: branch padrão)
130
+ *
131
+ * 2. create - Criar novo arquivo
132
+ * Parâmetros:
133
+ * - owner (obrigatório): Proprietário do repositório
134
+ * - repo (obrigatório): Nome do repositório
135
+ * - path (obrigatório): Caminho do arquivo
136
+ * - content (obrigatório): Conteúdo do arquivo
137
+ * - message (obrigatório): Mensagem de commit
138
+ * - branch (opcional): Branch de destino (padrão: branch padrão)
139
+ *
140
+ * 3. update - Atualizar arquivo existente
141
+ * Parâmetros:
142
+ * - owner (obrigatório): Proprietário do repositório
143
+ * - repo (obrigatório): Nome do repositório
144
+ * - path (obrigatório): Caminho do arquivo
145
+ * - content (obrigatório): Novo conteúdo
146
+ * - message (obrigatório): Mensagem de commit
147
+ * - sha (obrigatório): SHA do arquivo atual
148
+ * - branch (opcional): Branch de destino (padrão: branch padrão)
149
+ *
150
+ * 4. delete - Deletar arquivo
151
+ * Parâmetros:
152
+ * - owner (obrigatório): Proprietário do repositório
153
+ * - repo (obrigatório): Nome do repositório
154
+ * - path (obrigatório): Caminho do arquivo
155
+ * - message (obrigatório): Mensagem de commit
156
+ * - sha (obrigatório): SHA do arquivo
157
+ * - branch (opcional): Branch de destino (padrão: branch padrão)
158
+ *
159
+ * 5. list - Listar conteúdo de diretório
160
+ * Parâmetros:
161
+ * - owner (obrigatório): Proprietário do repositório
162
+ * - repo (obrigatório): Nome do repositório
163
+ * - path (opcional): Caminho do diretório (padrão: raiz)
164
+ * - ref (opcional): Branch, tag ou commit (padrão: branch padrão)
165
+ * - page (opcional): Página da listagem (padrão: 1)
166
+ * - limit (opcional): Itens por página (padrão: 30, máximo: 100)
167
+ *
168
+ * 6. search - Buscar arquivos por conteúdo
169
+ * Parâmetros:
170
+ * - owner (obrigatório): Proprietário do repositório
171
+ * - repo (obrigatório): Nome do repositório
172
+ * - query (obrigatório): Termo de busca
173
+ * - ref (opcional): Branch, tag ou commit (padrão: branch padrão)
174
+ *
175
+ * RECOMENDAÇÕES DE USO:
176
+ * - Use mensagens de commit descritivas
177
+ * - Mantenha estrutura de diretórios organizada
178
+ * - Valide conteúdo antes de enviar
179
+ * - Use branches para mudanças grandes
180
+ * - Documente mudanças importantes
181
+ * - Mantenha histórico de commits limpo
182
+ */
183
+ export declare const filesTool: {
226
184
  name: string;
227
185
  description: string;
228
186
  inputSchema: {
@@ -233,96 +191,298 @@ export declare const gitFilesTool: {
233
191
  enum: string[];
234
192
  description: string;
235
193
  };
236
- projectPath: {
194
+ repo: {
237
195
  type: string;
238
196
  description: string;
239
197
  };
240
- filePath: {
198
+ provider: {
241
199
  type: string;
200
+ enum: string[];
242
201
  description: string;
243
202
  };
244
- content: {
203
+ path: {
245
204
  type: string;
246
205
  description: string;
247
206
  };
248
- path: {
207
+ projectPath: {
249
208
  type: string;
250
209
  description: string;
251
- default: string;
252
210
  };
253
- recursive: {
211
+ content: {
254
212
  type: string;
255
213
  description: string;
256
- default: boolean;
257
214
  };
258
- dirPath: {
215
+ message: {
259
216
  type: string;
260
217
  description: string;
261
218
  };
262
- files: {
219
+ branch: {
263
220
  type: string;
264
221
  description: string;
265
222
  };
266
- confirm: {
223
+ sha: {
267
224
  type: string;
268
225
  description: string;
269
- default: boolean;
270
226
  };
271
- query: {
227
+ ref: {
272
228
  type: string;
273
229
  description: string;
274
230
  };
275
- caseSensitive: {
231
+ query: {
276
232
  type: string;
277
233
  description: string;
278
- default: boolean;
279
234
  };
280
- template: {
235
+ page: {
281
236
  type: string;
282
- enum: string[];
283
237
  description: string;
238
+ minimum: number;
284
239
  };
285
- name: {
240
+ limit: {
286
241
  type: string;
287
242
  description: string;
243
+ minimum: number;
244
+ maximum: number;
288
245
  };
289
246
  };
290
247
  required: string[];
291
248
  };
292
- handler(input: GitFilesInput): Promise<GitFilesResult>;
293
- handleRead(params: GitFilesInput & {
294
- action: "read";
295
- }): Promise<GitFilesResult>;
296
- handleCreate(params: GitFilesInput & {
297
- action: "create";
298
- }): Promise<GitFilesResult>;
299
- handleUpdate(params: GitFilesInput & {
300
- action: "update";
301
- }): Promise<GitFilesResult>;
302
- handleDelete(params: GitFilesInput & {
303
- action: "delete";
304
- }): Promise<GitFilesResult>;
305
- handleList(params: GitFilesInput & {
306
- action: "list";
307
- }): Promise<GitFilesResult>;
308
- handleCreateDir(params: GitFilesInput & {
309
- action: "create-dir";
310
- }): Promise<GitFilesResult>;
311
- handleBulkCreate(params: GitFilesInput & {
312
- action: "bulk-create";
313
- }): Promise<GitFilesResult>;
314
- handleBulkDelete(params: GitFilesInput & {
315
- action: "bulk-delete";
316
- }): Promise<GitFilesResult>;
317
- handleBulkCopy(params: GitFilesInput & {
318
- action: "bulk-copy";
319
- }): Promise<GitFilesResult>;
320
- handleSearch(params: GitFilesInput & {
321
- action: "search";
322
- }): Promise<GitFilesResult>;
323
- handleCreateTemplate(params: GitFilesInput & {
324
- action: "create-template";
325
- }): Promise<GitFilesResult>;
249
+ /**
250
+ * Handler principal da tool files
251
+ *
252
+ * FUNCIONALIDADE:
253
+ * - Valida entrada usando Zod schema
254
+ * - Roteia para método específico baseado na ação
255
+ * - Trata erros de forma uniforme
256
+ * - Retorna resultado padronizado
257
+ *
258
+ * FLUXO:
259
+ * 1. Validação de entrada
260
+ * 2. Roteamento por ação
261
+ * 3. Execução do método específico
262
+ * 4. Tratamento de erros
263
+ * 5. Retorno de resultado
264
+ *
265
+ * TRATAMENTO DE ERROS:
266
+ * - Validação: erro de schema
267
+ * - Execução: erro da operação
268
+ * - Roteamento: ação não suportada
269
+ *
270
+ * RECOMENDAÇÕES:
271
+ * - Sempre valide entrada antes de processar
272
+ * - Trate erros específicos adequadamente
273
+ * - Log detalhes de erro para debug
274
+ * - Retorne mensagens de erro úteis
275
+ */
276
+ handler(input: FilesInput): Promise<FilesResult>;
277
+ /**
278
+ * Obtém o conteúdo de um arquivo específico
279
+ *
280
+ * FUNCIONALIDADE:
281
+ * - Retorna conteúdo completo do arquivo
282
+ * - Inclui metadados (SHA, tamanho, tipo)
283
+ * - Suporta diferentes referências (branch, tag, commit)
284
+ *
285
+ * PARÂMETROS OBRIGATÓRIOS:
286
+ * - projectPath: Caminho do projeto local (OBRIGATÓRIO para TODAS as operações)
287
+ * - provider: Provedor a usar (gitea ou github)
288
+ * - repo: Nome do repositório
289
+ * - path: Caminho do arquivo
290
+ *
291
+ * PARÂMETROS OPCIONAIS:
292
+ * - ref: Branch, tag ou commit (padrão: branch padrão)
293
+ *
294
+ * VALIDAÇÕES:
295
+ * - Todos os parâmetros obrigatórios
296
+ * - Arquivo deve existir no caminho especificado
297
+ * - Referência deve ser válida
298
+ *
299
+ * RECOMENDAÇÕES:
300
+ * - Use para leitura de arquivos de configuração
301
+ * - Verifique tamanho antes de ler arquivos grandes
302
+ * - Use referências específicas para versões
303
+ * - Trate arquivos binários adequadamente
304
+ */
305
+ getFile(params: FilesInput, provider: VcsOperations, owner: string): Promise<FilesResult>;
306
+ /**
307
+ * Cria um novo arquivo no repositório
308
+ *
309
+ * FUNCIONALIDADE:
310
+ * - Cria arquivo com conteúdo especificado
311
+ * - Faz commit automático com mensagem
312
+ * - Suporta criação em branches específicas
313
+ *
314
+ * PARÂMETROS OBRIGATÓRIOS:
315
+ * - owner: Proprietário do repositório
316
+ * - repo: Nome do repositório
317
+ * - path: Caminho do arquivo
318
+ * - content: Conteúdo do arquivo
319
+ * - message: Mensagem de commit
320
+ *
321
+ * PARÂMETROS OPCIONAIS:
322
+ * - branch: Branch de destino (padrão: branch padrão)
323
+ *
324
+ * VALIDAÇÕES:
325
+ * - Todos os parâmetros obrigatórios
326
+ * - Caminho deve ser válido
327
+ * - Usuário deve ter permissão de escrita
328
+ *
329
+ * RECOMENDAÇÕES:
330
+ * - Use mensagens de commit descritivas
331
+ * - Valide conteúdo antes de enviar
332
+ * - Use branches para mudanças grandes
333
+ * - Documente propósito do arquivo
334
+ */
335
+ createFile(params: FilesInput, provider: VcsOperations, owner: string): Promise<FilesResult>;
336
+ /**
337
+ * Atualiza um arquivo existente no repositório
338
+ *
339
+ * FUNCIONALIDADE:
340
+ * - Atualiza conteúdo do arquivo
341
+ * - Faz commit com nova versão
342
+ * - Requer SHA do arquivo atual
343
+ *
344
+ * PARÂMETROS OBRIGATÓRIOS:
345
+ * - owner: Proprietário do repositório
346
+ * - repo: Nome do repositório
347
+ * - path: Caminho do arquivo
348
+ * - content: Novo conteúdo
349
+ * - message: Mensagem de commit
350
+ * - sha: SHA do arquivo atual
351
+ *
352
+ * PARÂMETROS OPCIONAIS:
353
+ * - branch: Branch de destino (padrão: branch padrão)
354
+ *
355
+ * VALIDAÇÕES:
356
+ * - Todos os parâmetros obrigatórios
357
+ * - Arquivo deve existir
358
+ * - SHA deve ser válido
359
+ *
360
+ * RECOMENDAÇÕES:
361
+ * - Sempre obtenha SHA atual antes de atualizar
362
+ * - Use mensagens de commit descritivas
363
+ * - Verifique se arquivo não foi modificado por outro usuário
364
+ * - Teste mudanças antes de commitar
365
+ */
366
+ updateFile(params: FilesInput, provider: VcsOperations, owner: string): Promise<FilesResult>;
367
+ /**
368
+ * Deleta um arquivo do repositório
369
+ *
370
+ * FUNCIONALIDADE:
371
+ * - Remove arquivo especificado
372
+ * - Faz commit de exclusão
373
+ * - Requer SHA do arquivo
374
+ *
375
+ * PARÂMETROS OBRIGATÓRIOS:
376
+ * - owner: Proprietário do repositório
377
+ * - repo: Nome do repositório
378
+ * - path: Caminho do arquivo
379
+ * - message: Mensagem de commit
380
+ * - sha: SHA do arquivo
381
+ *
382
+ * PARÂMETROS OPCIONAIS:
383
+ * - branch: Branch de destino (padrão: branch padrão)
384
+ *
385
+ * VALIDAÇÕES:
386
+ * - Todos os parâmetros obrigatórios
387
+ * - Arquivo deve existir
388
+ * - SHA deve ser válido
389
+ *
390
+ * RECOMENDAÇÕES:
391
+ * - Confirme exclusão antes de executar
392
+ * - Use mensagens de commit descritivas
393
+ * - Verifique dependências do arquivo
394
+ * - Mantenha backup se necessário
395
+ */
396
+ deleteFile(params: FilesInput, provider: VcsOperations, owner: string): Promise<FilesResult>;
397
+ /**
398
+ * Lista conteúdo de um diretório
399
+ *
400
+ * FUNCIONALIDADE:
401
+ * - Lista arquivos e subdiretórios
402
+ * - Suporta paginação
403
+ * - Inclui metadados de cada item
404
+ *
405
+ * PARÂMETROS OBRIGATÓRIOS:
406
+ * - owner: Proprietário do repositório
407
+ * - repo: Nome do repositório
408
+ *
409
+ * PARÂMETROS OPCIONAIS:
410
+ * - path: Caminho do diretório (padrão: raiz)
411
+ * - ref: Branch, tag ou commit (padrão: branch padrão)
412
+ * - page: Página da listagem (padrão: 1)
413
+ * - limit: Itens por página (padrão: 30, máximo: 100)
414
+ *
415
+ * VALIDAÇÕES:
416
+ * - e repo obrigatórios
417
+ * - Diretório deve existir
418
+ * - Page deve ser >= 1
419
+ * - Limit deve ser entre 1 e 100
420
+ *
421
+ * RECOMENDAÇÕES:
422
+ * - Use paginação para diretórios grandes
423
+ * - Monitore número total de itens
424
+ * - Use referências específicas para versões
425
+ * - Organize estrutura de diretórios
426
+ */
427
+ listFiles(params: FilesInput, provider: VcsOperations, owner: string): Promise<FilesResult>;
428
+ /**
429
+ * Busca arquivos por conteúdo
430
+ *
431
+ * FUNCIONALIDADE:
432
+ * - Busca arquivos que contenham texto específico
433
+ * - Suporta diferentes referências
434
+ * - Retorna resultados relevantes
435
+ *
436
+ * PARÂMETROS OBRIGATÓRIOS:
437
+ * - owner: Proprietário do repositório
438
+ * - repo: Nome do repositório
439
+ * - query: Termo de busca
440
+ *
441
+ * PARÂMETROS OPCIONAIS:
442
+ * - ref: Branch, tag ou commit (padrão: branch padrão)
443
+ *
444
+ * VALIDAÇÕES:
445
+ * - Todos os parâmetros obrigatórios
446
+ * - Query deve ter pelo menos 3 caracteres
447
+ * - Repositório deve existir
448
+ *
449
+ * RECOMENDAÇÕES:
450
+ * - Use termos de busca específicos
451
+ * - Combine com filtros de diretório
452
+ * - Use referências para versões específicas
453
+ * - Analise resultados para relevância
454
+ */
455
+ searchFiles(params: FilesInput, provider: VcsOperations, owner: string): Promise<FilesResult>;
456
+ /**
457
+ * Faz upload de todo o projeto para o repositório
458
+ *
459
+ * FUNCIONALIDADE:
460
+ * - Envia todos os arquivos do projeto local
461
+ * - Ignora diretórios desnecessários (node_modules, .git, dist)
462
+ * - Ignora arquivos temporários e logs
463
+ * - Faz commit com mensagem personalizada
464
+ *
465
+ * PARÂMETROS OBRIGATÓRIOS:
466
+ * - owner: Proprietário do repositório
467
+ * - repo: Nome do repositório
468
+ * - projectPath: Caminho do projeto local
469
+ * - message: Mensagem de commit
470
+ *
471
+ * PARÂMETROS OPCIONAIS:
472
+ * - branch: Branch de destino (padrão: branch padrão)
473
+ *
474
+ * VALIDAÇÕES:
475
+ * - Todos os parâmetros obrigatórios
476
+ * - Projeto deve existir no caminho especificado
477
+ * - Usuário deve ter permissão de escrita
478
+ *
479
+ * RECOMENDAÇÕES:
480
+ * - Use mensagens de commit descritivas
481
+ * - Verifique se o repositório está limpo
482
+ * - Use branches para mudanças grandes
483
+ * - Monitore erros de upload
484
+ */
485
+ uploadProject(params: FilesInput, provider: VcsOperations, owner: string): Promise<FilesResult>;
326
486
  };
327
487
  export {};
328
488
  //# sourceMappingURL=git-files.d.ts.map