@andrebuzeli/git-mcp 3.4.0 → 4.0.3

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 (141) hide show
  1. package/EXEMPLOS.md +861 -0
  2. package/INSTRUCOES.md +444 -0
  3. package/README.md +63 -283
  4. package/dist/providers/base-provider.d.ts.map +1 -1
  5. package/dist/providers/base-provider.js +3 -26
  6. package/dist/providers/base-provider.js.map +1 -1
  7. package/dist/providers/gitea-provider.d.ts +0 -2
  8. package/dist/providers/gitea-provider.d.ts.map +1 -1
  9. package/dist/providers/gitea-provider.js +0 -62
  10. package/dist/providers/gitea-provider.js.map +1 -1
  11. package/dist/providers/github-provider.d.ts +0 -2
  12. package/dist/providers/github-provider.d.ts.map +1 -1
  13. package/dist/providers/github-provider.js +48 -105
  14. package/dist/providers/github-provider.js.map +1 -1
  15. package/dist/server.d.ts +0 -27
  16. package/dist/server.d.ts.map +1 -1
  17. package/dist/server.js +130 -1215
  18. package/dist/server.js.map +1 -1
  19. package/dist/tools/{git-commits.d.ts → git-analytics.d.ts} +4 -10
  20. package/dist/tools/git-analytics.d.ts.map +1 -0
  21. package/dist/tools/git-analytics.js +18 -0
  22. package/dist/tools/git-analytics.js.map +1 -0
  23. package/dist/tools/git-archive.d.ts +3 -0
  24. package/dist/tools/git-archive.d.ts.map +1 -1
  25. package/dist/tools/git-archive.js +2 -2
  26. package/dist/tools/git-archive.js.map +1 -1
  27. package/dist/tools/git-backup.d.ts +216 -0
  28. package/dist/tools/git-backup.d.ts.map +1 -0
  29. package/dist/tools/git-backup.js +813 -0
  30. package/dist/tools/git-backup.js.map +1 -0
  31. package/dist/tools/git-branches.d.ts +159 -8
  32. package/dist/tools/git-branches.d.ts.map +1 -1
  33. package/dist/tools/git-branches.js +554 -2
  34. package/dist/tools/git-branches.js.map +1 -1
  35. package/dist/tools/git-config.d.ts +3 -0
  36. package/dist/tools/git-config.d.ts.map +1 -1
  37. package/dist/tools/git-config.js +2 -2
  38. package/dist/tools/git-config.js.map +1 -1
  39. package/dist/tools/git-files.d.ts +130 -8
  40. package/dist/tools/git-files.d.ts.map +1 -1
  41. package/dist/tools/git-files.js +426 -2
  42. package/dist/tools/git-files.js.map +1 -1
  43. package/dist/tools/git-issues.d.ts +137 -471
  44. package/dist/tools/git-issues.d.ts.map +1 -1
  45. package/dist/tools/git-issues.js +605 -613
  46. package/dist/tools/git-issues.js.map +1 -1
  47. package/dist/tools/git-monitor.d.ts +161 -0
  48. package/dist/tools/git-monitor.d.ts.map +1 -0
  49. package/dist/tools/git-monitor.js +746 -0
  50. package/dist/tools/git-monitor.js.map +1 -0
  51. package/dist/tools/git-packages.d.ts +5 -2
  52. package/dist/tools/git-packages.d.ts.map +1 -1
  53. package/dist/tools/git-packages.js +3 -3
  54. package/dist/tools/git-packages.js.map +1 -1
  55. package/dist/tools/git-pulls.d.ts +38 -646
  56. package/dist/tools/git-pulls.d.ts.map +1 -1
  57. package/dist/tools/git-pulls.js +64 -716
  58. package/dist/tools/git-pulls.js.map +1 -1
  59. package/dist/tools/git-release.d.ts +187 -0
  60. package/dist/tools/git-release.d.ts.map +1 -0
  61. package/dist/tools/git-release.js +619 -0
  62. package/dist/tools/git-release.js.map +1 -0
  63. package/dist/tools/git-remote.d.ts +112 -77
  64. package/dist/tools/git-remote.d.ts.map +1 -1
  65. package/dist/tools/git-remote.js +481 -183
  66. package/dist/tools/git-remote.js.map +1 -1
  67. package/dist/tools/git-repos.d.ts +19 -0
  68. package/dist/tools/git-repos.d.ts.map +1 -0
  69. package/dist/tools/git-repos.js +18 -0
  70. package/dist/tools/git-repos.js.map +1 -0
  71. package/dist/tools/git-reset.d.ts +121 -74
  72. package/dist/tools/git-reset.d.ts.map +1 -1
  73. package/dist/tools/git-reset.js +540 -159
  74. package/dist/tools/git-reset.js.map +1 -1
  75. package/dist/tools/git-stash.d.ts +119 -78
  76. package/dist/tools/git-stash.d.ts.map +1 -1
  77. package/dist/tools/git-stash.js +560 -209
  78. package/dist/tools/git-stash.js.map +1 -1
  79. package/dist/tools/git-sync.d.ts +3 -163
  80. package/dist/tools/git-sync.d.ts.map +1 -1
  81. package/dist/tools/git-sync.js +9 -326
  82. package/dist/tools/git-sync.js.map +1 -1
  83. package/dist/tools/git-tags.d.ts +105 -331
  84. package/dist/tools/git-tags.d.ts.map +1 -1
  85. package/dist/tools/git-tags.js +545 -416
  86. package/dist/tools/git-tags.js.map +1 -1
  87. package/dist/tools/git-workflow.d.ts +127 -0
  88. package/dist/tools/git-workflow.d.ts.map +1 -0
  89. package/dist/tools/git-workflow.js +359 -0
  90. package/dist/tools/git-workflow.js.map +1 -0
  91. package/dist/utils/auto-detection.d.ts +113 -0
  92. package/dist/utils/auto-detection.d.ts.map +1 -0
  93. package/dist/utils/auto-detection.js +235 -0
  94. package/dist/utils/auto-detection.js.map +1 -0
  95. package/dist/utils/error-handler.d.ts +107 -0
  96. package/dist/utils/error-handler.d.ts.map +1 -0
  97. package/dist/utils/error-handler.js +331 -0
  98. package/dist/utils/error-handler.js.map +1 -0
  99. package/dist/utils/git-operations.d.ts.map +1 -1
  100. package/dist/utils/git-operations.js +6 -51
  101. package/dist/utils/git-operations.js.map +1 -1
  102. package/dist/utils/user-detection.d.ts +1 -13
  103. package/dist/utils/user-detection.d.ts.map +1 -1
  104. package/dist/utils/user-detection.js +1 -26
  105. package/dist/utils/user-detection.js.map +1 -1
  106. package/package.json +62 -60
  107. package/dist/client.d.ts +0 -307
  108. package/dist/client.d.ts.map +0 -1
  109. package/dist/client.js +0 -299
  110. package/dist/client.js.map +0 -1
  111. package/dist/tools/git-branch-protection.d.ts +0 -97
  112. package/dist/tools/git-branch-protection.d.ts.map +0 -1
  113. package/dist/tools/git-branch-protection.js +0 -182
  114. package/dist/tools/git-branch-protection.js.map +0 -1
  115. package/dist/tools/git-commits.d.ts.map +0 -1
  116. package/dist/tools/git-commits.js +0 -5
  117. package/dist/tools/git-commits.js.map +0 -1
  118. package/dist/tools/git-initialize.d.ts +0 -208
  119. package/dist/tools/git-initialize.d.ts.map +0 -1
  120. package/dist/tools/git-initialize.js +0 -470
  121. package/dist/tools/git-initialize.js.map +0 -1
  122. package/dist/tools/git-projects.d.ts +0 -112
  123. package/dist/tools/git-projects.d.ts.map +0 -1
  124. package/dist/tools/git-projects.js +0 -319
  125. package/dist/tools/git-projects.js.map +0 -1
  126. package/dist/tools/git-releases.d.ts +0 -486
  127. package/dist/tools/git-releases.d.ts.map +0 -1
  128. package/dist/tools/git-releases.js +0 -561
  129. package/dist/tools/git-releases.js.map +0 -1
  130. package/dist/tools/git-repositories.d.ts +0 -469
  131. package/dist/tools/git-repositories.d.ts.map +0 -1
  132. package/dist/tools/git-repositories.js +0 -637
  133. package/dist/tools/git-repositories.js.map +0 -1
  134. package/dist/tools/git-revert.d.ts +0 -147
  135. package/dist/tools/git-revert.d.ts.map +0 -1
  136. package/dist/tools/git-revert.js +0 -199
  137. package/dist/tools/git-revert.js.map +0 -1
  138. package/dist/tools/git-update-project.d.ts +0 -309
  139. package/dist/tools/git-update-project.d.ts.map +0 -1
  140. package/dist/tools/git-update-project.js +0 -878
  141. package/dist/tools/git-update-project.js.map +0 -1
package/EXEMPLOS.md ADDED
@@ -0,0 +1,861 @@
1
+ # 🚀 EXEMPLOS PRÁTICOS - MCP Git AI Unification Server
2
+
3
+ ## 📋 Casos de Uso Reais
4
+
5
+ ### 1. Inicialização de Projeto Novo
6
+
7
+ ```json
8
+ // git-workflow init - Começar projeto do zero
9
+ {
10
+ "action": "init",
11
+ "projectPath": "C:\\projetos\\meu-app",
12
+ "message": "feat: Inicialização do projeto React com TypeScript"
13
+ }
14
+ ```
15
+
16
+ **Resultado esperado:**
17
+ ```json
18
+ {
19
+ "success": true,
20
+ "action": "init",
21
+ "message": "Projeto inicializado com sucesso - repositório criado, remotes configurados",
22
+ "autoDetected": {
23
+ "repo": "meu-app",
24
+ "owner": "johndoe",
25
+ "providers": ["gitea"]
26
+ }
27
+ }
28
+ ```
29
+
30
+ ### 2. Desenvolvimento Diário - Commit + Push
31
+
32
+ ```json
33
+ // git-workflow commit - Após implementar uma feature
34
+ {
35
+ "action": "commit",
36
+ "projectPath": "C:\\projetos\\meu-app",
37
+ "message": "feat: Implementar autenticação JWT\n\n- Adicionar middleware de validação\n- Criar endpoints /login e /register\n- Implementar refresh token\n- Adicionar testes unitários"
38
+ }
39
+ ```
40
+
41
+ ### 3. Sincronização Antes de Trabalhar
42
+
43
+ ```json
44
+ // git-workflow sync - Atualizar com mudanças do time
45
+ {
46
+ "action": "sync",
47
+ "projectPath": "C:\\projetos\\meu-app"
48
+ }
49
+ ```
50
+
51
+ ### 4. Verificar Status do Projeto
52
+
53
+ ```json
54
+ // git-workflow status - Overview completo
55
+ {
56
+ "action": "status",
57
+ "projectPath": "C:\\projetos\\meu-app",
58
+ "detailed": true
59
+ }
60
+ ```
61
+
62
+ **Output inclui:**
63
+ - Status Git (modified, untracked, staged)
64
+ - Branches locais/remotas
65
+ - Últimos commits
66
+ - Status de sincronização com providers
67
+
68
+ ### 5. Backup Estratégico
69
+
70
+ ```json
71
+ // git-workflow backup - Antes de mudanças arriscadas
72
+ {
73
+ "action": "backup",
74
+ "projectPath": "C:\\projetos\\meu-app",
75
+ "description": "Backup antes de refatoração da API"
76
+ }
77
+ ```
78
+
79
+ ---
80
+
81
+ ## 📁 Gerenciamento de Arquivos
82
+
83
+ ### Criar Arquivo de Componente
84
+
85
+ ```json
86
+ // git-files write - Novo componente React
87
+ {
88
+ "action": "write",
89
+ "projectPath": "C:\\projetos\\meu-app",
90
+ "filePath": "src/components/LoginForm.tsx",
91
+ "content": "import React, { useState } from 'react';
92
+
93
+ interface LoginFormProps {
94
+ onLogin: (credentials: {email: string, password: string}) => void;
95
+ }
96
+
97
+ export const LoginForm: React.FC<LoginFormProps> = ({ onLogin }) => {
98
+ const [email, setEmail] = useState('');
99
+ const [password, setPassword] = useState('');
100
+
101
+ const handleSubmit = (e: React.FormEvent) => {
102
+ e.preventDefault();
103
+ onLogin({ email, password });
104
+ };
105
+
106
+ return (
107
+ <form onSubmit={handleSubmit}>
108
+ <input
109
+ type=\"email\"
110
+ value={email}
111
+ onChange={(e) => setEmail(e.target.value)}
112
+ placeholder=\"Email\"
113
+ required
114
+ />
115
+ <input
116
+ type=\"password\"
117
+ value={password}
118
+ onChange={(e) => setPassword(e.target.value)}
119
+ placeholder=\"Senha\"
120
+ required
121
+ />
122
+ <button type=\"submit\">Entrar</button>
123
+ </form>
124
+ );
125
+ };"
126
+ }
127
+ ```
128
+
129
+ ### Buscar Funções no Código
130
+
131
+ ```json
132
+ // git-files search - Encontrar todas as funções de validação
133
+ {
134
+ "action": "search",
135
+ "projectPath": "C:\\projetos\\meu-app",
136
+ "query": "function.*validate|const.*validate",
137
+ "path": "src",
138
+ "caseSensitive": false
139
+ }
140
+ ```
141
+
142
+ ### Backup de Arquivos de Configuração
143
+
144
+ ```json
145
+ // git-files backup-files - Salvar configs importantes
146
+ {
147
+ "action": "backup-files",
148
+ "projectPath": "C:\\projetos\\meu-app",
149
+ "patterns": ["*.json", "*.config.*", ".env*"],
150
+ "description": "Backup de arquivos de configuração"
151
+ }
152
+ ```
153
+
154
+ ---
155
+
156
+ ## 🚀 Gerenciamento de Releases
157
+
158
+ ### Release Patch (Correção de Bug)
159
+
160
+ ```json
161
+ // git-release create - Release automático de correção
162
+ {
163
+ "action": "create",
164
+ "projectPath": "C:\\projetos\\meu-app",
165
+ "changelog": true,
166
+ "notes": "Correção crítica no sistema de login",
167
+ "assets": ["dist/app.js", "dist/styles.css"]
168
+ }
169
+ ```
170
+
171
+ **Output:**
172
+ - Versão automaticamente incrementada (ex: v1.2.3)
173
+ - Changelog gerado automaticamente
174
+ - Publicação em todos os providers configurados
175
+
176
+ ### Bump de Versão Manual
177
+
178
+ ```json
179
+ // git-release version - Preparar para release major
180
+ {
181
+ "action": "version",
182
+ "projectPath": "C:\\projetos\\meu-app",
183
+ "type": "major"
184
+ }
185
+ ```
186
+
187
+ ### Rollback de Emergência
188
+
189
+ ```json
190
+ // git-release rollback - Reverter release problemático
191
+ {
192
+ "action": "rollback",
193
+ "projectPath": "C:\\projetos\\meu-app",
194
+ "createBackup": true
195
+ }
196
+ ```
197
+
198
+ ---
199
+
200
+ ## 📊 Monitoramento e Analytics
201
+
202
+ ### Status Completo do Projeto
203
+
204
+ ```json
205
+ // git-monitor status - Dashboard completo
206
+ {
207
+ "action": "status",
208
+ "projectPath": "C:\\projetos\\meu-app",
209
+ "includeMetrics": true,
210
+ "detailed": true
211
+ }
212
+ ```
213
+
214
+ **Métricas incluídas:**
215
+ - Commits por dia/semana
216
+ - Arquivos modificados
217
+ - Branches ativas
218
+ - Tamanho do repositório
219
+ - Status de sincronização
220
+
221
+ ### Análise de Produtividade
222
+
223
+ ```json
224
+ // git-monitor metrics - Métricas de desenvolvimento
225
+ {
226
+ "action": "metrics",
227
+ "projectPath": "C:\\projetos\\meu-app",
228
+ "period": "30d",
229
+ "includeCharts": true
230
+ }
231
+ ```
232
+
233
+ ### Check-up de Saúde
234
+
235
+ ```json
236
+ // git-monitor health - Diagnóstico de problemas
237
+ {
238
+ "action": "health",
239
+ "projectPath": "C:\\projetos\\meu-app",
240
+ "deep": true,
241
+ "suggestions": true
242
+ }
243
+ ```
244
+
245
+ ---
246
+
247
+ ## 💾 Sistema de Backup
248
+
249
+ ### Backup Completo
250
+
251
+ ```json
252
+ // git-backup create - Backup full do projeto
253
+ {
254
+ "action": "create",
255
+ "projectPath": "C:\\projetos\\meu-app",
256
+ "type": "full",
257
+ "name": "backup-semanal",
258
+ "compress": true,
259
+ "includeUntracked": true
260
+ }
261
+ ```
262
+
263
+ ### Restauração Seletiva
264
+
265
+ ```json
266
+ // git-backup restore - Restaurar versão específica
267
+ {
268
+ "action": "restore",
269
+ "projectPath": "C:\\projetos\\meu-app",
270
+ "backupId": "backup-2025-09-25-full",
271
+ "preview": true,
272
+ "targetPath": "C:\\restauracao\\meu-app"
273
+ }
274
+ ```
275
+
276
+ ### Backup Automático
277
+
278
+ ```json
279
+ // git-backup auto - Configurar backup diário
280
+ {
281
+ "action": "auto",
282
+ "projectPath": "C:\\projetos\\meu-app",
283
+ "enabled": true,
284
+ "schedule": "daily",
285
+ "retention": 30,
286
+ "maxBackups": 10
287
+ }
288
+ ```
289
+
290
+ ---
291
+
292
+ ## 🌿 Gerenciamento de Branches
293
+
294
+ ### Feature Branch Completo
295
+
296
+ ```json
297
+ // 1. Criar feature branch
298
+ {
299
+ "action": "create",
300
+ "projectPath": "C:\\projetos\\meu-app",
301
+ "name": "feature/user-authentication"
302
+ }
303
+
304
+ // 2. Trabalhar na feature (usar outras tools)
305
+
306
+ // 3. Comparar com main antes do merge
307
+ {
308
+ "action": "compare",
309
+ "projectPath": "C:\\projetos\\meu-app",
310
+ "base": "main",
311
+ "head": "feature/user-authentication",
312
+ "detailed": true
313
+ }
314
+
315
+ // 4. Merge inteligente
316
+ {
317
+ "action": "merge",
318
+ "projectPath": "C:\\projetos\\meu-app",
319
+ "branch": "feature/user-authentication",
320
+ "strategy": "squash"
321
+ }
322
+
323
+ // 5. Limpar branch
324
+ {
325
+ "action": "delete",
326
+ "projectPath": "C:\\projetos\\meu-app",
327
+ "name": "feature/user-authentication"
328
+ }
329
+ ```
330
+
331
+ ### Hotfix Urgente
332
+
333
+ ```json
334
+ // Criar hotfix branch
335
+ {
336
+ "action": "create",
337
+ "projectPath": "C:\\projetos\\meu-app",
338
+ "name": "hotfix/critical-security-patch",
339
+ "from": "main"
340
+ }
341
+
342
+ // Implementar correção (usar git-files, git-workflow)
343
+
344
+ // Merge direto na main
345
+ {
346
+ "action": "switch",
347
+ "projectPath": "C:\\projetos\\meu-app",
348
+ "name": "main"
349
+ }
350
+
351
+ {
352
+ "action": "merge",
353
+ "projectPath": "C:\\projetos\\meu-app",
354
+ "branch": "hotfix/critical-security-patch",
355
+ "strategy": "merge"
356
+ }
357
+ ```
358
+
359
+ ---
360
+
361
+ ## 📝 Sistema de Issues Local
362
+
363
+ ### Criar Issue Estruturada
364
+
365
+ ```json
366
+ // git-issues create - Nova feature
367
+ {
368
+ "action": "create",
369
+ "projectPath": "C:\\projetos\\meu-app",
370
+ "title": "Implementar sistema de notificações push",
371
+ "description": "Adicionar notificações em tempo real para ações do usuário",
372
+ "labels": ["feature", "frontend", "backend"],
373
+ "priority": "high",
374
+ "assignee": "johndoe",
375
+ "dueDate": "2025-10-15"
376
+ }
377
+ ```
378
+
379
+ ### Auto-detecção de TODOs
380
+
381
+ ```json
382
+ // git-issues scan - Converter TODOs em issues
383
+ {
384
+ "action": "scan",
385
+ "projectPath": "C:\\projetos\\meu-app",
386
+ "createIssues": true,
387
+ "patterns": ["TODO", "FIXME", "HACK", "XXX"]
388
+ }
389
+ ```
390
+
391
+ **Converte automaticamente:**
392
+ ```javascript
393
+ // TODO: Implementar validação de email
394
+ // FIXME: Corrigir bug no login mobile
395
+ ```
396
+ **Em issues estruturadas com:**
397
+ - Título extraído do comentário
398
+ - Prioridade baseada no tipo (TODO=medium, FIXME=high)
399
+ - Localização do arquivo
400
+ - Labels apropriadas
401
+
402
+ ### Gerenciamento de Sprint
403
+
404
+ ```json
405
+ // Listar issues da sprint atual
406
+ {
407
+ "action": "list",
408
+ "projectPath": "C:\\projetos\\meu-app",
409
+ "state": "open",
410
+ "sort": "priority",
411
+ "limit": 20
412
+ }
413
+
414
+ // Atualizar progresso
415
+ {
416
+ "action": "update",
417
+ "projectPath": "C:\\projetos\\meu-app",
418
+ "id": "ISSUE-123",
419
+ "status": "in_progress"
420
+ }
421
+
422
+ // Fechar issue completa
423
+ {
424
+ "action": "close",
425
+ "projectPath": "C:\\projetos\\meu-app",
426
+ "id": "ISSUE-123",
427
+ "comment": "Implementação concluída com testes unitários"
428
+ }
429
+ ```
430
+
431
+ ---
432
+
433
+ ## 🏷️ Gerenciamento de Tags
434
+
435
+ ### Versionamento Semântico
436
+
437
+ ```json
438
+ // Tag de release
439
+ {
440
+ "action": "create",
441
+ "projectPath": "C:\\projetos\\meu-app",
442
+ "name": "v2.1.0",
443
+ "message": "Release v2.1.0 - Sistema de notificações\n\nFeatures:\n- Notificações push em tempo real\n- Configurações de preferências\n- Suporte a múltiplos idiomas\n\nBugfixes:\n- Correção de memory leak\n- Validação de formulários aprimorada",
444
+ "type": "annotated"
445
+ }
446
+
447
+ // Tag de pré-release
448
+ {
449
+ "action": "create",
450
+ "projectPath": "C:\\projetos\\meu-app",
451
+ "name": "v2.1.0-beta.1",
452
+ "message": "Beta release para testes",
453
+ "type": "annotated"
454
+ }
455
+ ```
456
+
457
+ ### Busca de Tags
458
+
459
+ ```json
460
+ // Encontrar releases de produção
461
+ {
462
+ "action": "search",
463
+ "projectPath": "C:\\projetos\\meu-app",
464
+ "query": "^v\\d+\\.\\d+\\.\\d+$",
465
+ "sort": "version"
466
+ }
467
+ ```
468
+
469
+ ---
470
+
471
+ ## 💾 Gerenciamento de Stash
472
+
473
+ ### Work in Progress (WIP)
474
+
475
+ ```json
476
+ // Salvar trabalho em andamento
477
+ {
478
+ "action": "save",
479
+ "projectPath": "C:\\projetos\\meu-app",
480
+ "message": "WIP: Refatoração da API de usuários",
481
+ "includeUntracked": true,
482
+ "keepIndex": true
483
+ }
484
+
485
+ // Ver stashes disponíveis
486
+ {
487
+ "action": "list",
488
+ "projectPath": "C:\\projetos\\meu-app",
489
+ "detailed": true
490
+ }
491
+
492
+ // Aplicar stash específico
493
+ {
494
+ "action": "apply",
495
+ "projectPath": "C:\\projetos\\meu-app",
496
+ "index": "1"
497
+ }
498
+ ```
499
+
500
+ ### Context Switching
501
+
502
+ ```json
503
+ // Salvar contexto atual
504
+ {
505
+ "action": "save",
506
+ "projectPath": "C:\\projetos\\meu-app",
507
+ "message": "Context: Implementação do dashboard"
508
+ }
509
+
510
+ // Mudar para hotfix urgente
511
+ // ... trabalhar no hotfix ...
512
+
513
+ // Retornar ao contexto anterior
514
+ {
515
+ "action": "pop",
516
+ "projectPath": "C:\\projetos\\meu-app"
517
+ }
518
+ ```
519
+
520
+ ---
521
+
522
+ ## 🔧 Configuração e Remotos
523
+
524
+ ### Setup Inicial de Remotos
525
+
526
+ ```json
527
+ // Adicionar remote do Gitea
528
+ {
529
+ "action": "add",
530
+ "projectPath": "C:\\projetos\\meu-app",
531
+ "name": "origin",
532
+ "url": "https://gitea.example.com/johndoe/meu-app.git",
533
+ "provider": "gitea"
534
+ }
535
+
536
+ // Adicionar backup no GitHub
537
+ {
538
+ "action": "add",
539
+ "projectPath": "C:\\projetos\\meu-app",
540
+ "name": "github",
541
+ "url": "https://github.com/johndoe/meu-app.git",
542
+ "provider": "github"
543
+ }
544
+ ```
545
+
546
+ ### Sincronização Multi-Provider
547
+
548
+ ```json
549
+ // Verificar status de todos os remotos
550
+ {
551
+ "action": "show",
552
+ "projectPath": "C:\\projetos\\meu-app",
553
+ "detailed": true
554
+ }
555
+
556
+ // Limpar referências obsoletas
557
+ {
558
+ "action": "prune",
559
+ "projectPath": "C:\\projetos\\meu-app"
560
+ }
561
+ ```
562
+
563
+ ---
564
+
565
+ ## 🚨 Tratamento de Erros e Recovery
566
+
567
+ ### Exemplo de Auto-Recovery
568
+
569
+ ```json
570
+ // Request que pode falhar
571
+ {
572
+ "action": "commit",
573
+ "projectPath": "C:\\projetos\\meu-app",
574
+ "message": "feat: Nova funcionalidade"
575
+ }
576
+ ```
577
+
578
+ **Response com erro e sugestão:**
579
+ ```json
580
+ {
581
+ "success": false,
582
+ "action": "commit",
583
+ "message": "Falha no commit",
584
+ "error": {
585
+ "code": "GIT_PUSH_FAILED",
586
+ "message": "Não foi possível fazer push para o remote",
587
+ "cause": "Remote 'origin' não encontrado ou sem permissão",
588
+ "suggestion": "Execute 'git remote add origin <url>' ou verifique as credenciais"
589
+ },
590
+ "autoDetected": {
591
+ "repo": "meu-app",
592
+ "owner": "johndoe",
593
+ "providers": []
594
+ }
595
+ }
596
+ ```
597
+
598
+ ### Recovery Automático
599
+
600
+ ```json
601
+ // Sistema tenta corrigir automaticamente
602
+ {
603
+ "action": "sync",
604
+ "projectPath": "C:\\projetos\\meu-app"
605
+ }
606
+ ```
607
+
608
+ **Output:**
609
+ - Detecta problema
610
+ - Tenta `git pull --rebase`
611
+ - Se falhar, sugere resolução manual
612
+ - Backup automático antes de operações arriscadas
613
+
614
+ ---
615
+
616
+ ## 🎯 Workflows Completos
617
+
618
+ ### Workflow de Desenvolvimento Diário
619
+
620
+ ```json
621
+ // 1. Sincronizar com time
622
+ {
623
+ "action": "sync",
624
+ "projectPath": "C:\\projetos\\meu-app"
625
+ }
626
+
627
+ // 2. Ver status
628
+ {
629
+ "action": "status",
630
+ "projectPath": "C:\\projetos\\meu-app"
631
+ }
632
+
633
+ // 3. Criar feature branch
634
+ {
635
+ "action": "create",
636
+ "projectPath": "C:\\projetos\\meu-app",
637
+ "name": "feature/dark-mode"
638
+ }
639
+
640
+ // 4. Implementar (usar git-files, etc.)
641
+
642
+ // 5. Commit progressivo
643
+ {
644
+ "action": "commit",
645
+ "projectPath": "C:\\projetos\\meu-app",
646
+ "message": "feat: Implementar tema dark\n\n- Adicionar variáveis CSS\n- Toggle component\n- Persistir preferência"
647
+ }
648
+
649
+ // 6. Verificar qualidade
650
+ {
651
+ "action": "health",
652
+ "projectPath": "C:\\projetos\\meu-app"
653
+ }
654
+
655
+ // 7. Merge na main
656
+ {
657
+ "action": "merge",
658
+ "projectPath": "C:\\projetos\\meu-app",
659
+ "branch": "feature/dark-mode"
660
+ }
661
+ ```
662
+
663
+ ### Workflow de Release
664
+
665
+ ```json
666
+ // 1. Verificar saúde pré-release
667
+ {
668
+ "action": "health",
669
+ "projectPath": "C:\\projetos\\meu-app",
670
+ "deep": true
671
+ }
672
+
673
+ // 2. Backup estratégico
674
+ {
675
+ "action": "backup",
676
+ "projectPath": "C:\\projetos\\meu-app",
677
+ "description": "Backup pré-release v2.0.0"
678
+ }
679
+
680
+ // 3. Bump versão
681
+ {
682
+ "action": "version",
683
+ "projectPath": "C:\\projetos\\meu-app",
684
+ "type": "minor"
685
+ }
686
+
687
+ // 4. Release completo
688
+ {
689
+ "action": "create",
690
+ "projectPath": "C:\\projetos\\meu-app",
691
+ "changelog": true,
692
+ "notes": "Major release com redesign completo",
693
+ "assets": ["dist/bundle.js", "dist/styles.css"]
694
+ }
695
+
696
+ // 5. Tag de versão
697
+ {
698
+ "action": "create",
699
+ "projectPath": "C:\\projetos\\meu-app",
700
+ "name": "v2.0.0",
701
+ "type": "annotated",
702
+ "message": "Release v2.0.0 - Redesign completo da interface"
703
+ }
704
+ ```
705
+
706
+ ### Workflow de Troubleshooting
707
+
708
+ ```json
709
+ // 1. Diagnosticar problema
710
+ {
711
+ "action": "status",
712
+ "projectPath": "C:\\projetos\\meu-app",
713
+ "detailed": true
714
+ }
715
+
716
+ // 2. Verificar saúde
717
+ {
718
+ "action": "health",
719
+ "projectPath": "C:\\projetos\\meu-app",
720
+ "suggestions": true
721
+ }
722
+
723
+ // 3. Backup antes de mudanças
724
+ {
725
+ "action": "backup",
726
+ "projectPath": "C:\\projetos\\meu-app",
727
+ "description": "Backup antes de troubleshooting"
728
+ }
729
+
730
+ // 4. Reset se necessário
731
+ {
732
+ "action": "reset-to-commit",
733
+ "projectPath": "C:\\projetos\\meu-app",
734
+ "commit": "HEAD~1",
735
+ "type": "mixed"
736
+ }
737
+
738
+ // 5. Limpar stashes se houver
739
+ {
740
+ "action": "clear",
741
+ "projectPath": "C:\\projetos\\meu-app",
742
+ "confirm": true
743
+ }
744
+ ```
745
+
746
+ ---
747
+
748
+ ## 🔧 Configurações Avançadas
749
+
750
+ ### Ambiente de Desenvolvimento
751
+
752
+ ```bash
753
+ # .env file
754
+ GITEA_USERNAME=developer
755
+ GITEA_TOKEN=your_personal_token
756
+ GITEA_URL=https://gitea.company.com
757
+
758
+ GITHUB_USERNAME=developer
759
+ GITHUB_TOKEN=your_github_token
760
+
761
+ # Optional
762
+ DEMO_MODE=false
763
+ LOG_LEVEL=debug
764
+ ```
765
+
766
+ ### Configuração Multi-Projeto
767
+
768
+ ```json
769
+ // Para projetos diferentes, apenas mude o projectPath
770
+ {
771
+ "action": "status",
772
+ "projectPath": "C:\\projetos\\api-backend"
773
+ }
774
+
775
+ {
776
+ "action": "status",
777
+ "projectPath": "C:\\projetos\\web-frontend"
778
+ }
779
+
780
+ {
781
+ "action": "status",
782
+ "projectPath": "C:\\projetos\\mobile-app"
783
+ }
784
+ ```
785
+
786
+ ---
787
+
788
+ ## 💡 Dicas e Boas Práticas
789
+
790
+ ### 1. Commits Atômicos
791
+ ```json
792
+ // ❌ Ruim
793
+ {
794
+ "action": "commit",
795
+ "projectPath": "C:\\projetos\\meu-app",
796
+ "message": "Update"
797
+ }
798
+
799
+ // ✅ Bom
800
+ {
801
+ "action": "commit",
802
+ "projectPath": "C:\\projetos\\meu-app",
803
+ "message": "feat: Adicionar validação de formulário\n\n- Campo email obrigatório\n- Validação de formato\n- Mensagens de erro localizadas\n- Testes unitários incluídos"
804
+ }
805
+ ```
806
+
807
+ ### 2. Branches por Feature
808
+ ```json
809
+ {
810
+ "action": "create",
811
+ "projectPath": "C:\\projetos\\meu-app",
812
+ "name": "feature/user-profile-page"
813
+ }
814
+
815
+ {
816
+ "action": "create",
817
+ "projectPath": "C:\\projetos\\meu-app",
818
+ "name": "bugfix/login-validation"
819
+ }
820
+
821
+ {
822
+ "action": "create",
823
+ "projectPath": "C:\\projetos\\meu-app",
824
+ "name": "refactor/api-cleanup"
825
+ }
826
+ ```
827
+
828
+ ### 3. Backups Estratégicos
829
+ ```json
830
+ // Antes de mudanças arriscadas
831
+ {
832
+ "action": "backup",
833
+ "projectPath": "C:\\projetos\\meu-app",
834
+ "description": "Antes de refatoração da arquitetura"
835
+ }
836
+
837
+ // Backups automáticos
838
+ {
839
+ "action": "auto",
840
+ "projectPath": "C:\\projetos\\meu-app",
841
+ "enabled": true,
842
+ "schedule": "commit"
843
+ }
844
+ ```
845
+
846
+ ### 4. Monitoramento Contínuo
847
+ ```json
848
+ // Status diário
849
+ {
850
+ "action": "metrics",
851
+ "projectPath": "C:\\projetos\\meu-app",
852
+ "period": "7d"
853
+ }
854
+
855
+ // Health checks
856
+ {
857
+ "action": "health",
858
+ "projectPath": "C:\\projetos\\meu-app",
859
+ "suggestions": true
860
+ }
861
+ ```