gitcoach-cli 1.0.11 → 1.0.13
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/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +3 -6
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/init.js +4 -4
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/quick.d.ts.map +1 -1
- package/dist/commands/quick.js +2 -1
- package/dist/commands/quick.js.map +1 -1
- package/dist/i18n/locales/en.json +103 -11
- package/dist/i18n/locales/es.json +103 -11
- package/dist/i18n/locales/fr.json +103 -11
- package/dist/services/copilot-service.d.ts +1 -0
- package/dist/services/copilot-service.d.ts.map +1 -1
- package/dist/services/copilot-service.js +53 -24
- package/dist/services/copilot-service.js.map +1 -1
- package/dist/services/git-service.d.ts +10 -1
- package/dist/services/git-service.d.ts.map +1 -1
- package/dist/services/git-service.js +93 -2
- package/dist/services/git-service.js.map +1 -1
- package/dist/services/prevention-service.d.ts +5 -0
- package/dist/services/prevention-service.d.ts.map +1 -1
- package/dist/services/prevention-service.js +103 -5
- package/dist/services/prevention-service.js.map +1 -1
- package/dist/ui/components/prompt.d.ts +0 -1
- package/dist/ui/components/prompt.d.ts.map +1 -1
- package/dist/ui/components/prompt.js +0 -8
- package/dist/ui/components/prompt.js.map +1 -1
- package/dist/ui/menus/add-menu.d.ts.map +1 -1
- package/dist/ui/menus/add-menu.js +7 -4
- package/dist/ui/menus/add-menu.js.map +1 -1
- package/dist/ui/menus/branch-menu.d.ts.map +1 -1
- package/dist/ui/menus/branch-menu.js +7 -6
- package/dist/ui/menus/branch-menu.js.map +1 -1
- package/dist/ui/menus/commit-menu.d.ts.map +1 -1
- package/dist/ui/menus/commit-menu.js +12 -10
- package/dist/ui/menus/commit-menu.js.map +1 -1
- package/dist/ui/menus/config-menu.d.ts +1 -1
- package/dist/ui/menus/config-menu.d.ts.map +1 -1
- package/dist/ui/menus/config-menu.js +22 -6
- package/dist/ui/menus/config-menu.js.map +1 -1
- package/dist/ui/menus/detached-head-menu.d.ts.map +1 -1
- package/dist/ui/menus/detached-head-menu.js +7 -6
- package/dist/ui/menus/detached-head-menu.js.map +1 -1
- package/dist/ui/menus/help-menu.js +3 -2
- package/dist/ui/menus/help-menu.js.map +1 -1
- package/dist/ui/menus/history-menu.d.ts.map +1 -1
- package/dist/ui/menus/history-menu.js +27 -22
- package/dist/ui/menus/history-menu.js.map +1 -1
- package/dist/ui/menus/main-menu.d.ts.map +1 -1
- package/dist/ui/menus/main-menu.js +5 -4
- package/dist/ui/menus/main-menu.js.map +1 -1
- package/dist/ui/menus/pull-menu.d.ts.map +1 -1
- package/dist/ui/menus/pull-menu.js +163 -50
- package/dist/ui/menus/pull-menu.js.map +1 -1
- package/dist/ui/menus/push-menu.d.ts.map +1 -1
- package/dist/ui/menus/push-menu.js +5 -6
- package/dist/ui/menus/push-menu.js.map +1 -1
- package/dist/ui/menus/remote-menu.d.ts.map +1 -1
- package/dist/ui/menus/remote-menu.js +6 -4
- package/dist/ui/menus/remote-menu.js.map +1 -1
- package/dist/ui/menus/setup-menu.d.ts.map +1 -1
- package/dist/ui/menus/setup-menu.js +4 -7
- package/dist/ui/menus/setup-menu.js.map +1 -1
- package/dist/ui/menus/stash-menu.d.ts.map +1 -1
- package/dist/ui/menus/stash-menu.js +6 -15
- package/dist/ui/menus/stash-menu.js.map +1 -1
- package/dist/ui/menus/undo-menu.d.ts.map +1 -1
- package/dist/ui/menus/undo-menu.js +5 -12
- package/dist/ui/menus/undo-menu.js.map +1 -1
- package/dist/utils/error-mapper.d.ts +7 -0
- package/dist/utils/error-mapper.d.ts.map +1 -0
- package/dist/utils/error-mapper.js +96 -0
- package/dist/utils/error-mapper.js.map +1 -0
- package/dist/utils/helpers.d.ts.map +1 -1
- package/dist/utils/helpers.js +5 -3
- package/dist/utils/helpers.js.map +1 -1
- package/dist/utils/logger.d.ts +3 -0
- package/dist/utils/logger.d.ts.map +1 -1
- package/dist/utils/logger.js +26 -14
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/validators.d.ts.map +1 -1
- package/dist/utils/validators.js +4 -2
- package/dist/utils/validators.js.map +1 -1
- package/dist/utils/version.d.ts +1 -1
- package/dist/utils/version.js +1 -1
- package/package.json +1 -1
|
@@ -95,6 +95,20 @@
|
|
|
95
95
|
"quitIntermediate": "Quitter - Fermer",
|
|
96
96
|
"quitExpert": "quit"
|
|
97
97
|
},
|
|
98
|
+
"levels": {
|
|
99
|
+
"beginner": "Débutant",
|
|
100
|
+
"beginnerDesc": "Explications détaillées et guidage pas à pas",
|
|
101
|
+
"intermediate": "Intermédiaire",
|
|
102
|
+
"intermediateDesc": "Conseils utiles avec explications modérées",
|
|
103
|
+
"expert": "Expert",
|
|
104
|
+
"expertDesc": "Sortie minimale, uniquement avertissements et erreurs"
|
|
105
|
+
},
|
|
106
|
+
"themes": {
|
|
107
|
+
"colored": "Coloré",
|
|
108
|
+
"coloredDesc": "Sortie colorée avec coloration syntaxique",
|
|
109
|
+
"monochrome": "Monochrome",
|
|
110
|
+
"monochromeDesc": "Sortie en texte brut sans couleurs"
|
|
111
|
+
},
|
|
98
112
|
"commands": {
|
|
99
113
|
"status": {
|
|
100
114
|
"title": "Statut du Depot",
|
|
@@ -113,7 +127,11 @@
|
|
|
113
127
|
"noFiles": "Aucun fichier a indexer.",
|
|
114
128
|
"allFiles": "Indexer tous les fichiers",
|
|
115
129
|
"success": "{{count}} fichier(s) indexe(s) avec succes.",
|
|
116
|
-
"staged": "Indexe : {{file}}"
|
|
130
|
+
"staged": "Indexe : {{file}}",
|
|
131
|
+
"filesToStage": "{{count}} fichier(s) a indexer :",
|
|
132
|
+
"addAll": "git add -A",
|
|
133
|
+
"addPatch": "git add -p",
|
|
134
|
+
"staging": "Indexation de {{count}} fichier(s)..."
|
|
117
135
|
},
|
|
118
136
|
"commit": {
|
|
119
137
|
"title": "Commiter les Modifications",
|
|
@@ -132,7 +150,18 @@
|
|
|
132
150
|
"aiGenerationFailed": "Generation IA echouee - entrez le message manuellement",
|
|
133
151
|
"enterManually": "Entrez votre message de commit :",
|
|
134
152
|
"conflictsDetected": "Conflits de fusion detectes ! Resolvez-les avant de commiter.",
|
|
135
|
-
"conflictedFiles": "Fichiers en conflit :"
|
|
153
|
+
"conflictedFiles": "Fichiers en conflit :",
|
|
154
|
+
"stagedCount": "{{count}} fichier(s) indexe(s) :",
|
|
155
|
+
"committing": "Commit en cours...",
|
|
156
|
+
"commitAI": "git commit (IA)",
|
|
157
|
+
"commitManual": "git commit -m",
|
|
158
|
+
"convertToConventional": "Convertir en format commit conventionnel ?",
|
|
159
|
+
"keepAsIs": "Non, garder tel quel",
|
|
160
|
+
"typeFeature": "feat: (nouvelle fonctionnalite)",
|
|
161
|
+
"typeFix": "fix: (correction de bug)",
|
|
162
|
+
"typeDocs": "docs: (documentation)",
|
|
163
|
+
"typeRefactor": "refactor: (refactorisation)",
|
|
164
|
+
"typeChore": "chore: (maintenance)"
|
|
136
165
|
},
|
|
137
166
|
"push": {
|
|
138
167
|
"title": "Envoyer les Modifications",
|
|
@@ -149,7 +178,10 @@
|
|
|
149
178
|
"noUpstream": "La branche '{{branch}}' n'a pas d'upstream. {{count}} commit(s) seront envoyes.",
|
|
150
179
|
"firstPush": "Premier Push",
|
|
151
180
|
"noRemoteConfigured": "Aucun depot distant configure.",
|
|
152
|
-
"addRemoteQuestion": "Voulez-vous ajouter un remote origin pour push ?"
|
|
181
|
+
"addRemoteQuestion": "Voulez-vous ajouter un remote origin pour push ?",
|
|
182
|
+
"forceConfirmFinal": "Etes-vous absolument sur ? Cette action est irreversible.",
|
|
183
|
+
"forcePushing": "Envoi force vers {{remote}}...",
|
|
184
|
+
"commitsToDownload": "{{count}} commit(s) a telecharger depuis {{remote}}/{{branch}}"
|
|
153
185
|
},
|
|
154
186
|
"pull": {
|
|
155
187
|
"title": "Recuperer les Modifications",
|
|
@@ -157,7 +189,30 @@
|
|
|
157
189
|
"success": "{{count}} commit(s) recupere(s) avec succes.",
|
|
158
190
|
"upToDate": "Deja a jour.",
|
|
159
191
|
"conflicts": "Conflits de fusion detectes. Veuillez les resoudre manuellement.",
|
|
160
|
-
"failed": "Echec de la recuperation : {{error}}"
|
|
192
|
+
"failed": "Echec de la recuperation : {{error}}",
|
|
193
|
+
"noRemoteConfigured": "Aucun depot distant configure. Ajoutez un remote pour pouvoir pull.",
|
|
194
|
+
"selectRemote": "Selectionnez le remote depuis lequel recuperer :",
|
|
195
|
+
"noUpstream": "La branche '{{branch}}' n'a pas de branche de suivi configuree.",
|
|
196
|
+
"setUpstreamQuestion": "Configurer le suivi vers {{remote}}/{{branch}} ?",
|
|
197
|
+
"diverged": "Votre branche et le remote ont diverge.",
|
|
198
|
+
"divergedExplain": "Vous avez {{ahead}} commit(s) local(aux) et {{behind}} commit(s) distant(s) a integrer.",
|
|
199
|
+
"mergeOrRebase": "Comment souhaitez-vous integrer les modifications distantes ?",
|
|
200
|
+
"optionMerge": "Merge (cree un commit de fusion)",
|
|
201
|
+
"optionRebase": "Rebase (rejoue vos commits par-dessus)",
|
|
202
|
+
"conflictsDetected": "{{count}} fichier(s) ont des conflits de fusion a resoudre.",
|
|
203
|
+
"conflictedFiles": "Fichiers en conflit :",
|
|
204
|
+
"resolveInstructions": "Pour resoudre : editez les fichiers en conflit, puis lancez 'git add' et 'git commit'.",
|
|
205
|
+
"resolveOptions": "Que souhaitez-vous faire ?",
|
|
206
|
+
"abortMerge": "Annuler le merge et restaurer l'etat precedent",
|
|
207
|
+
"abortSuccess": "Merge annule avec succes. Votre branche est revenue a son etat precedent.",
|
|
208
|
+
"continueMerge": "Je vais resoudre les conflits manuellement",
|
|
209
|
+
"mergeInProgress": "Un merge est actuellement en cours.",
|
|
210
|
+
"rebaseInProgress": "Un rebase est actuellement en cours.",
|
|
211
|
+
"uncommittedWarning": "Vous avez des modifications non commitees. Elles pourraient etre perdues pendant le pull.",
|
|
212
|
+
"uncommittedOptions": "Que faire de vos modifications non commitees ?",
|
|
213
|
+
"optionCommit": "Commiter d'abord",
|
|
214
|
+
"optionStash": "Mettre de cote temporairement (stash)",
|
|
215
|
+
"optionContinue": "Continuer quand meme (risque)"
|
|
161
216
|
},
|
|
162
217
|
"branch": {
|
|
163
218
|
"title": "Gestion des Branches",
|
|
@@ -181,7 +236,12 @@
|
|
|
181
236
|
"merging": "Fusion de {{branch}}...",
|
|
182
237
|
"mergeSuccess": "Branche '{{branch}}' fusionnee avec succes !",
|
|
183
238
|
"mergeConflicts": "Conflits detectes ! Resolvez-les avant de continuer.",
|
|
184
|
-
"conflictedFiles": "Fichiers en conflit :"
|
|
239
|
+
"conflictedFiles": "Fichiers en conflit :",
|
|
240
|
+
"invalidName": "Nom de branche invalide",
|
|
241
|
+
"creating": "Creation de la branche {{branch}}...",
|
|
242
|
+
"switching": "Bascule vers {{branch}}...",
|
|
243
|
+
"deleting": "Suppression de la branche {{branch}}...",
|
|
244
|
+
"noBranchesAvailable": "Aucune autre branche disponible"
|
|
185
245
|
},
|
|
186
246
|
"remote": {
|
|
187
247
|
"title": "Gestion du Remote",
|
|
@@ -239,7 +299,12 @@
|
|
|
239
299
|
"selectCommit": "Selectionnez un commit pour voir les details :",
|
|
240
300
|
"commitDetails": "Details du Commit",
|
|
241
301
|
"commitNotFound": "Commit introuvable.",
|
|
242
|
-
"changedFiles": "Fichiers modifies dans ce commit :"
|
|
302
|
+
"changedFiles": "Fichiers modifies dans ce commit :",
|
|
303
|
+
"commitLabel": "Commit :",
|
|
304
|
+
"authorLabel": "Auteur :",
|
|
305
|
+
"dateLabel": "Date :",
|
|
306
|
+
"messageLabel": "Message :",
|
|
307
|
+
"fullDiffHint": "(Utilisez git show {{hash}} pour voir le diff complet)"
|
|
243
308
|
},
|
|
244
309
|
"stash": {
|
|
245
310
|
"title": "Stash - Mettre de Cote Temporairement",
|
|
@@ -295,7 +360,15 @@
|
|
|
295
360
|
"detachedHeadAction": "Creez une branche pour sauvegarder votre travail.",
|
|
296
361
|
"noRemote": "Aucun depot distant configure.",
|
|
297
362
|
"notGitRepo": "Ce repertoire n'est pas un depot Git.",
|
|
298
|
-
"copilotUnavailable": "GitHub Copilot CLI n'est pas disponible. Certaines fonctionnalites peuvent etre limitees."
|
|
363
|
+
"copilotUnavailable": "GitHub Copilot CLI n'est pas disponible. Certaines fonctionnalites peuvent etre limitees.",
|
|
364
|
+
"mergeInProgress": "Un merge est actuellement en cours.",
|
|
365
|
+
"mergeInProgressAction": "Terminez le merge avec 'git commit' ou annulez avec 'git merge --abort'.",
|
|
366
|
+
"rebaseInProgress": "Un rebase est actuellement en cours.",
|
|
367
|
+
"rebaseInProgressAction": "Continuez avec 'git rebase --continue' ou annulez avec 'git rebase --abort'.",
|
|
368
|
+
"cherryPickInProgress": "Un cherry-pick est actuellement en cours.",
|
|
369
|
+
"cherryPickInProgressAction": "Continuez avec 'git cherry-pick --continue' ou annulez avec 'git cherry-pick --abort'.",
|
|
370
|
+
"bisectInProgress": "Une session de bisect est en cours.",
|
|
371
|
+
"bisectInProgressAction": "Continuez le bisect ou terminez avec 'git bisect reset'."
|
|
299
372
|
},
|
|
300
373
|
"errors": {
|
|
301
374
|
"title": "Erreur",
|
|
@@ -307,6 +380,16 @@
|
|
|
307
380
|
"branchExists": "La branche '{{branch}}' existe deja.",
|
|
308
381
|
"branchNotFound": "Branche '{{branch}}' introuvable.",
|
|
309
382
|
"mergeConflict": "Conflit de fusion dans {{file}}.",
|
|
383
|
+
"unknownError": "Une erreur inconnue s'est produite.",
|
|
384
|
+
"authenticationFailed": "Echec d'authentification. Verifiez vos identifiants ou votre cle SSH. Lancez 'git config --list' pour verifier l'URL du remote.",
|
|
385
|
+
"pushRejected": "Le push a ete rejete. Le remote contient des commits que vous n'avez pas. Faites un pull d'abord, puis reessayez le push.",
|
|
386
|
+
"alreadyExists": "La ressource existe deja. Choisissez un autre nom ou supprimez celle existante.",
|
|
387
|
+
"fileNotFound": "Fichier ou chemin introuvable. Verifiez le nom du fichier et assurez-vous qu'il existe dans le depot.",
|
|
388
|
+
"diskFull": "Plus d'espace disque disponible. Liberez de l'espace et reessayez.",
|
|
389
|
+
"lockFileExists": "Un fichier de verrouillage Git existe (.git/index.lock). Un autre processus Git est peut-etre en cours. Sinon, supprimez le fichier manuellement.",
|
|
390
|
+
"timeout": "L'operation a expire. Verifiez votre connexion reseau et reessayez.",
|
|
391
|
+
"rateLimited": "Limite de requetes atteinte. Attendez un moment et reessayez.",
|
|
392
|
+
"detachedHead": "Vous etes en etat HEAD detache. Creez une branche pour sauvegarder votre travail avant de continuer.",
|
|
310
393
|
"explainWithAI": "Voulez-vous une explication IA de cette erreur ?",
|
|
311
394
|
"analyzing": "Analyse de l'erreur...",
|
|
312
395
|
"explanation": "Explication",
|
|
@@ -365,7 +448,8 @@
|
|
|
365
448
|
"copilotInstallNote": "Vous devrez peut-etre vous authentifier avec 'copilot auth' lors de la premiere utilisation.",
|
|
366
449
|
"copilotInstallFailed": "Echec de l'installation de GitHub Copilot CLI",
|
|
367
450
|
"copilotInstallFailedDetail": "L'installation automatique a echoue. Cela peut etre du a des problemes de permissions ou de reseau.",
|
|
368
|
-
"copilotManualInstall": "Pour installer manuellement, executez :\nnpm install -g @githubnext/github-copilot-cli"
|
|
451
|
+
"copilotManualInstall": "Pour installer manuellement, executez :\nnpm install -g @githubnext/github-copilot-cli",
|
|
452
|
+
"gitignoreOverwrite": ".gitignore existe deja. Ecraser ?"
|
|
369
453
|
},
|
|
370
454
|
"config": {
|
|
371
455
|
"title": "Parametres",
|
|
@@ -377,7 +461,11 @@
|
|
|
377
461
|
"autoCommitMsg": "Generer les Messages Automatiquement",
|
|
378
462
|
"defaultBranch": "Branche par Defaut",
|
|
379
463
|
"reset": "Reinitialiser par Defaut",
|
|
380
|
-
"resetConfirm": "Reinitialiser tous les parametres ?"
|
|
464
|
+
"resetConfirm": "Reinitialiser tous les parametres ?",
|
|
465
|
+
"copilotRefresh": "Re-verifier Copilot CLI",
|
|
466
|
+
"copilotAvailable": "GitHub Copilot CLI est disponible et pret !",
|
|
467
|
+
"copilotNotAvailable": "GitHub Copilot CLI n'est pas disponible.",
|
|
468
|
+
"copilotChecking": "Verification de Copilot CLI..."
|
|
381
469
|
},
|
|
382
470
|
"stats": {
|
|
383
471
|
"title": "Vos Statistiques",
|
|
@@ -389,6 +477,7 @@
|
|
|
389
477
|
"aiPercentage": "Commits assistes par l'IA : {{percentage}}%",
|
|
390
478
|
"mistakesAvoided": "Vous avez evite {{count}} erreur(s) potentielle(s) !"
|
|
391
479
|
},
|
|
480
|
+
"tipTitle": "Astuce",
|
|
392
481
|
"tips": {
|
|
393
482
|
"beginner": {
|
|
394
483
|
"status": "Utilisez 'Statut' pour voir les fichiers modifies avant de commiter.",
|
|
@@ -436,7 +525,9 @@
|
|
|
436
525
|
"feature2": "Messages de commit generes par l'IA avec Copilot CLI",
|
|
437
526
|
"feature3": "Prevention des erreurs et avertissements",
|
|
438
527
|
"feature4": "Support multilingue (EN, FR, ES)",
|
|
439
|
-
"feature5": "Modes Debutant, Intermediaire et Expert"
|
|
528
|
+
"feature5": "Modes Debutant, Intermediaire et Expert",
|
|
529
|
+
"aboutTitle": "A propos de GitCoach",
|
|
530
|
+
"builtFor": "Concu pour le GitHub Copilot CLI Challenge 2026"
|
|
440
531
|
},
|
|
441
532
|
"prompts": {
|
|
442
533
|
"confirm": "Etes-vous sur ?",
|
|
@@ -462,6 +553,7 @@
|
|
|
462
553
|
"branchCreated": "Branche '{{branch}}' creee ! Vos commits sont maintenant securises.",
|
|
463
554
|
"returnedToMain": "Revenu sur {{branch}}.",
|
|
464
555
|
"stashedAndReturned": "Modifications sauvegardees et revenu sur {{branch}}.",
|
|
465
|
-
"commandExecuted": "Commande executee : {{command}}"
|
|
556
|
+
"commandExecuted": "Commande executee : {{command}}",
|
|
557
|
+
"stashMessage": "Modifications HEAD detache"
|
|
466
558
|
}
|
|
467
559
|
}
|
|
@@ -29,6 +29,7 @@ declare class CopilotService {
|
|
|
29
29
|
* Explain a Git error and suggest solutions
|
|
30
30
|
*/
|
|
31
31
|
explainGitError(errorMessage: string, command?: string): Promise<CopilotSuggestion>;
|
|
32
|
+
private executeWithRetry;
|
|
32
33
|
private parseAnswer;
|
|
33
34
|
private parseCommitMessage;
|
|
34
35
|
private parseSuggestion;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilot-service.d.ts","sourceRoot":"","sources":["../../src/services/copilot-service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"copilot-service.d.ts","sourceRoot":"","sources":["../../src/services/copilot-service.ts"],"names":[],"mappings":"AAkBA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,cAAM,cAAc;IAClB,OAAO,CAAC,SAAS,CAAwB;IAEnC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAwBrC,iBAAiB,IAAI,IAAI;IAIzB;;;OAGG;IACG,iBAAiB,IAAI,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAoCnE,qBAAqB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA4DrE,OAAO,CAAC,aAAa;IAuCrB,OAAO,CAAC,cAAc;IAUhB,cAAc,CAClB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EAAE,EACrB,aAAa,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,iBAAiB,CAAC;IA+BvB,eAAe,CACnB,MAAM,EAAE,MAAM,EACd,aAAa,EAAE,MAAM,EACrB,cAAc,EAAE,OAAO,GACtB,OAAO,CAAC,iBAAiB,CAAC;IA+BvB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA8BjE;;OAEG;IACG,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA0ClE;;OAEG;IACG,eAAe,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;YA8C3E,gBAAgB;IAiB9B,OAAO,CAAC,WAAW;IAuCnB,OAAO,CAAC,kBAAkB;IAuE1B,OAAO,CAAC,eAAe;CAiCxB;AAED,eAAO,MAAM,cAAc,gBAAuB,CAAC;AACnD,eAAe,cAAc,CAAC"}
|
|
@@ -1,5 +1,18 @@
|
|
|
1
|
-
import { executeCommand } from '../utils/helpers.js';
|
|
1
|
+
import { executeCommand, sleep } from '../utils/helpers.js';
|
|
2
2
|
import { logger } from '../utils/logger.js';
|
|
3
|
+
import { t } from '../i18n/index.js';
|
|
4
|
+
const COPILOT_TIMEOUT_MS = 30000;
|
|
5
|
+
const COPILOT_RETRY_DELAY_MS = 1000;
|
|
6
|
+
const COPILOT_MAX_RETRIES = 1;
|
|
7
|
+
const COPILOT_INSTALL_TIMEOUT_MS = 120000;
|
|
8
|
+
const MAX_DIFF_FILES = 5;
|
|
9
|
+
const MAX_COMMIT_MSG_LENGTH = 100;
|
|
10
|
+
const MIN_COMMIT_MSG_LENGTH = 10;
|
|
11
|
+
const MIN_LINE_LENGTH = 5;
|
|
12
|
+
const MAX_SUGGESTION_LENGTH = 500;
|
|
13
|
+
function getCopilotCommand() {
|
|
14
|
+
return process.env.COPILOT_CLI_PATH || 'copilot';
|
|
15
|
+
}
|
|
3
16
|
class CopilotService {
|
|
4
17
|
available = null;
|
|
5
18
|
async isAvailable() {
|
|
@@ -8,7 +21,7 @@ class CopilotService {
|
|
|
8
21
|
}
|
|
9
22
|
try {
|
|
10
23
|
// Use the new GitHub Copilot CLI (not gh copilot extension)
|
|
11
|
-
const { stdout, stderr } = await executeCommand(
|
|
24
|
+
const { stdout, stderr } = await executeCommand(`${getCopilotCommand()} --version`);
|
|
12
25
|
// Check for version number in output (e.g., "0.0.393")
|
|
13
26
|
const hasVersion = /\d+\.\d+/.test(stdout);
|
|
14
27
|
const hasError = stderr.includes('not found') || stderr.includes('not recognized');
|
|
@@ -33,8 +46,7 @@ class CopilotService {
|
|
|
33
46
|
async installCopilotCli() {
|
|
34
47
|
try {
|
|
35
48
|
// Install the GitHub Copilot CLI package globally
|
|
36
|
-
const { stdout, stderr } = await executeCommand('npm install -g @githubnext/github-copilot-cli',
|
|
37
|
-
);
|
|
49
|
+
const { stdout, stderr } = await executeCommand('npm install -g @githubnext/github-copilot-cli', COPILOT_INSTALL_TIMEOUT_MS);
|
|
38
50
|
logger.debug('Copilot CLI installation output:', { stdout, stderr });
|
|
39
51
|
// Reset cached availability to force re-check
|
|
40
52
|
this.resetAvailability();
|
|
@@ -57,7 +69,7 @@ class CopilotService {
|
|
|
57
69
|
logger.debug('Copilot CLI installation failed:', error);
|
|
58
70
|
return {
|
|
59
71
|
success: false,
|
|
60
|
-
message: error instanceof Error ? error.message : '
|
|
72
|
+
message: error instanceof Error ? error.message : t('errors.unknownError')
|
|
61
73
|
};
|
|
62
74
|
}
|
|
63
75
|
}
|
|
@@ -81,8 +93,11 @@ class CopilotService {
|
|
|
81
93
|
const prompt = `Generate a conventional commit message for these file changes: ${diffSummary}. Use format type: description where type is feat fix docs refactor test or chore. Reply with only the commit message.`;
|
|
82
94
|
logger.debug('Copilot prompt:', prompt);
|
|
83
95
|
// Use copilot CLI in non-interactive mode with silent output
|
|
84
|
-
const
|
|
85
|
-
)
|
|
96
|
+
const result = await this.executeWithRetry(`${getCopilotCommand()} -p "${this.escapeForShell(prompt)}" -s`, COPILOT_TIMEOUT_MS);
|
|
97
|
+
if (!result) {
|
|
98
|
+
return { success: false, message: 'Could not generate a commit message' };
|
|
99
|
+
}
|
|
100
|
+
const { stdout, stderr } = result;
|
|
86
101
|
logger.debug('Copilot CLI response:', { stdout: stdout.substring(0, 500), stderr });
|
|
87
102
|
// Parse the response to extract the suggested commit message
|
|
88
103
|
const message = this.parseCommitMessage(stdout, stderr);
|
|
@@ -101,7 +116,7 @@ class CopilotService {
|
|
|
101
116
|
logger.debug('Copilot CLI suggestion failed:', error);
|
|
102
117
|
return {
|
|
103
118
|
success: false,
|
|
104
|
-
message: error instanceof Error ? error.message : '
|
|
119
|
+
message: error instanceof Error ? error.message : t('errors.unknownError')
|
|
105
120
|
};
|
|
106
121
|
}
|
|
107
122
|
}
|
|
@@ -130,7 +145,7 @@ class CopilotService {
|
|
|
130
145
|
const parts = [];
|
|
131
146
|
if (files.length > 0) {
|
|
132
147
|
// Clean file names (remove special chars)
|
|
133
|
-
const cleanFiles = files.slice(0,
|
|
148
|
+
const cleanFiles = files.slice(0, MAX_DIFF_FILES).map(f => f.replace(/[^a-zA-Z0-9._/-]/g, ''));
|
|
134
149
|
parts.push(`Files: ${cleanFiles.join(', ')}`);
|
|
135
150
|
}
|
|
136
151
|
if (additions > 0 || deletions > 0) {
|
|
@@ -157,7 +172,7 @@ class CopilotService {
|
|
|
157
172
|
try {
|
|
158
173
|
const context = `Branch: ${branch}. Staged files: ${stagedFiles.join(', ') || 'none'}. Modified files: ${modifiedFiles.join(', ') || 'none'}.`;
|
|
159
174
|
const prompt = `Given this git state: ${context} What should the user do next? Reply with a single brief suggestion in one sentence.`;
|
|
160
|
-
const { stdout, stderr } = await executeCommand(
|
|
175
|
+
const { stdout, stderr } = await executeCommand(`${getCopilotCommand()} -p "${this.escapeForShell(prompt)}" -s`, COPILOT_TIMEOUT_MS);
|
|
161
176
|
const suggestion = this.parseSuggestion(stdout, stderr);
|
|
162
177
|
return {
|
|
163
178
|
success: !!suggestion,
|
|
@@ -167,7 +182,7 @@ class CopilotService {
|
|
|
167
182
|
catch (error) {
|
|
168
183
|
return {
|
|
169
184
|
success: false,
|
|
170
|
-
message: error instanceof Error ? error.message : '
|
|
185
|
+
message: error instanceof Error ? error.message : t('errors.unknownError')
|
|
171
186
|
};
|
|
172
187
|
}
|
|
173
188
|
}
|
|
@@ -181,7 +196,7 @@ class CopilotService {
|
|
|
181
196
|
try {
|
|
182
197
|
const context = `Action: ${action}. Branch: ${currentBranch}. Uncommitted changes: ${hasUncommitted}.`;
|
|
183
198
|
const prompt = `Will this git action cause problems? ${context} Reply briefly in one sentence.`;
|
|
184
|
-
const { stdout, stderr } = await executeCommand(
|
|
199
|
+
const { stdout, stderr } = await executeCommand(`${getCopilotCommand()} -p "${this.escapeForShell(prompt)}" -s`, COPILOT_TIMEOUT_MS);
|
|
185
200
|
const prediction = this.parseSuggestion(stdout, stderr);
|
|
186
201
|
return {
|
|
187
202
|
success: true,
|
|
@@ -191,7 +206,7 @@ class CopilotService {
|
|
|
191
206
|
catch (error) {
|
|
192
207
|
return {
|
|
193
208
|
success: false,
|
|
194
|
-
message: error instanceof Error ? error.message : '
|
|
209
|
+
message: error instanceof Error ? error.message : t('errors.unknownError')
|
|
195
210
|
};
|
|
196
211
|
}
|
|
197
212
|
}
|
|
@@ -204,7 +219,7 @@ class CopilotService {
|
|
|
204
219
|
}
|
|
205
220
|
try {
|
|
206
221
|
const prompt = `Explain this Git concept briefly for a beginner in 2-3 sentences: ${concept}`;
|
|
207
|
-
const { stdout, stderr } = await executeCommand(
|
|
222
|
+
const { stdout, stderr } = await executeCommand(`${getCopilotCommand()} -p "${this.escapeForShell(prompt)}" -s`, COPILOT_TIMEOUT_MS);
|
|
208
223
|
const explanation = this.parseSuggestion(stdout, stderr);
|
|
209
224
|
return {
|
|
210
225
|
success: !!explanation,
|
|
@@ -214,7 +229,7 @@ class CopilotService {
|
|
|
214
229
|
catch (error) {
|
|
215
230
|
return {
|
|
216
231
|
success: false,
|
|
217
|
-
message: error instanceof Error ? error.message : '
|
|
232
|
+
message: error instanceof Error ? error.message : t('errors.unknownError')
|
|
218
233
|
};
|
|
219
234
|
}
|
|
220
235
|
}
|
|
@@ -240,7 +255,7 @@ class CopilotService {
|
|
|
240
255
|
Question: ${question}
|
|
241
256
|
|
|
242
257
|
Provide a helpful answer in 2-4 sentences. If relevant, include the Git command.`;
|
|
243
|
-
const { stdout, stderr } = await executeCommand(
|
|
258
|
+
const { stdout, stderr } = await executeCommand(`${getCopilotCommand()} -p "${this.escapeForShell(prompt)}" -s`, COPILOT_TIMEOUT_MS);
|
|
244
259
|
const answer = this.parseAnswer(stdout, stderr);
|
|
245
260
|
return {
|
|
246
261
|
success: !!answer,
|
|
@@ -251,7 +266,7 @@ Provide a helpful answer in 2-4 sentences. If relevant, include the Git command.
|
|
|
251
266
|
logger.debug('askGitQuestion failed:', error);
|
|
252
267
|
return {
|
|
253
268
|
success: false,
|
|
254
|
-
message: error instanceof Error ? error.message : '
|
|
269
|
+
message: error instanceof Error ? error.message : t('errors.unknownError')
|
|
255
270
|
};
|
|
256
271
|
}
|
|
257
272
|
}
|
|
@@ -281,7 +296,7 @@ ${commandContext}Error message: ${errorMessage}
|
|
|
281
296
|
2. Provide the solution or command to fix it (1-2 sentences)
|
|
282
297
|
|
|
283
298
|
Be concise and practical.`;
|
|
284
|
-
const { stdout, stderr } = await executeCommand(
|
|
299
|
+
const { stdout, stderr } = await executeCommand(`${getCopilotCommand()} -p "${this.escapeForShell(prompt)}" -s`, COPILOT_TIMEOUT_MS);
|
|
285
300
|
const explanation = this.parseAnswer(stdout, stderr);
|
|
286
301
|
return {
|
|
287
302
|
success: !!explanation,
|
|
@@ -292,10 +307,24 @@ Be concise and practical.`;
|
|
|
292
307
|
logger.debug('explainGitError failed:', error);
|
|
293
308
|
return {
|
|
294
309
|
success: false,
|
|
295
|
-
message: error instanceof Error ? error.message : '
|
|
310
|
+
message: error instanceof Error ? error.message : t('errors.unknownError')
|
|
296
311
|
};
|
|
297
312
|
}
|
|
298
313
|
}
|
|
314
|
+
async executeWithRetry(command, timeout) {
|
|
315
|
+
for (let attempt = 0; attempt <= COPILOT_MAX_RETRIES; attempt++) {
|
|
316
|
+
try {
|
|
317
|
+
return await executeCommand(command, timeout);
|
|
318
|
+
}
|
|
319
|
+
catch (error) {
|
|
320
|
+
logger.debug(`Copilot attempt ${attempt + 1} failed:`, error);
|
|
321
|
+
if (attempt < COPILOT_MAX_RETRIES) {
|
|
322
|
+
await sleep(COPILOT_RETRY_DELAY_MS);
|
|
323
|
+
}
|
|
324
|
+
}
|
|
325
|
+
}
|
|
326
|
+
return null;
|
|
327
|
+
}
|
|
299
328
|
parseAnswer(output, stderr) {
|
|
300
329
|
const combined = `${output}\n${stderr || ''}`.trim();
|
|
301
330
|
const lines = combined.split('\n');
|
|
@@ -318,7 +347,7 @@ Be concise and practical.`;
|
|
|
318
347
|
if (filterPatterns.some(pattern => pattern.test(trimmed))) {
|
|
319
348
|
continue;
|
|
320
349
|
}
|
|
321
|
-
if (trimmed.length >=
|
|
350
|
+
if (trimmed.length >= MIN_LINE_LENGTH) {
|
|
322
351
|
meaningfulLines.push(trimmed);
|
|
323
352
|
}
|
|
324
353
|
}
|
|
@@ -356,7 +385,7 @@ Be concise and practical.`;
|
|
|
356
385
|
// Match conventional commit format
|
|
357
386
|
if (/^(feat|fix|docs|style|refactor|perf|test|build|ci|chore|revert)(\(.+\))?!?:\s*.+/i.test(trimmed)) {
|
|
358
387
|
// Clean up the message (remove quotes, backticks)
|
|
359
|
-
return trimmed.replace(/^["'`]|["'`]$/g, '').substring(0,
|
|
388
|
+
return trimmed.replace(/^["'`]|["'`]$/g, '').substring(0, MAX_COMMIT_MSG_LENGTH);
|
|
360
389
|
}
|
|
361
390
|
}
|
|
362
391
|
// Second pass: look for any meaningful commit-like message
|
|
@@ -367,7 +396,7 @@ Be concise and practical.`;
|
|
|
367
396
|
continue;
|
|
368
397
|
}
|
|
369
398
|
// Accept lines that look like commit messages (start with verb, reasonable length)
|
|
370
|
-
if (trimmed.length >=
|
|
399
|
+
if (trimmed.length >= MIN_COMMIT_MSG_LENGTH && trimmed.length <= MAX_COMMIT_MSG_LENGTH) {
|
|
371
400
|
// Check if it starts with a common commit verb
|
|
372
401
|
if (/^(add|update|fix|remove|refactor|implement|create|delete|change|improve|move|rename)/i.test(trimmed)) {
|
|
373
402
|
return trimmed.replace(/^["'`]|["'`]$/g, '');
|
|
@@ -380,7 +409,7 @@ Be concise and practical.`;
|
|
|
380
409
|
if (filterPatterns.some(pattern => pattern.test(trimmed))) {
|
|
381
410
|
continue;
|
|
382
411
|
}
|
|
383
|
-
if (trimmed.length >=
|
|
412
|
+
if (trimmed.length >= MIN_LINE_LENGTH && trimmed.length <= MAX_COMMIT_MSG_LENGTH) {
|
|
384
413
|
return trimmed.replace(/^["'`]|["'`]$/g, '');
|
|
385
414
|
}
|
|
386
415
|
}
|
|
@@ -408,7 +437,7 @@ Be concise and practical.`;
|
|
|
408
437
|
if (filterPatterns.some(pattern => pattern.test(trimmed))) {
|
|
409
438
|
continue;
|
|
410
439
|
}
|
|
411
|
-
if (trimmed.length >=
|
|
440
|
+
if (trimmed.length >= MIN_COMMIT_MSG_LENGTH && trimmed.length <= MAX_SUGGESTION_LENGTH) {
|
|
412
441
|
return trimmed;
|
|
413
442
|
}
|
|
414
443
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"copilot-service.js","sourceRoot":"","sources":["../../src/services/copilot-service.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"copilot-service.js","sourceRoot":"","sources":["../../src/services/copilot-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,10 +24,12 @@ export interface CommitInfo {
|
|
|
24
24
|
}
|
|
25
25
|
declare class GitService {
|
|
26
26
|
private git;
|
|
27
|
+
private statusCache;
|
|
27
28
|
constructor(basePath?: string);
|
|
28
29
|
setWorkingDirectory(path: string): void;
|
|
30
|
+
invalidateCache(): void;
|
|
29
31
|
isGitRepo(): Promise<boolean>;
|
|
30
|
-
getStatus(): Promise<GitStatus>;
|
|
32
|
+
getStatus(useCache?: boolean): Promise<GitStatus>;
|
|
31
33
|
getRawStatus(): Promise<StatusResult>;
|
|
32
34
|
getCurrentBranch(): Promise<string | null>;
|
|
33
35
|
isDetachedHead(): Promise<boolean>;
|
|
@@ -74,6 +76,13 @@ declare class GitService {
|
|
|
74
76
|
getFileContent(file: string, ref?: string): Promise<string>;
|
|
75
77
|
init(): Promise<void>;
|
|
76
78
|
addRemote(name: string, url: string): Promise<void>;
|
|
79
|
+
isMergeInProgress(): Promise<boolean>;
|
|
80
|
+
isRebaseInProgress(): Promise<boolean>;
|
|
81
|
+
isCherryPickInProgress(): Promise<boolean>;
|
|
82
|
+
isBisectInProgress(): Promise<boolean>;
|
|
83
|
+
abortMerge(): Promise<void>;
|
|
84
|
+
abortRebase(): Promise<void>;
|
|
85
|
+
hasUpstream(branch?: string): Promise<boolean>;
|
|
77
86
|
clone(repoUrl: string, directory?: string): Promise<void>;
|
|
78
87
|
}
|
|
79
88
|
export declare const gitService: GitService;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-service.d.ts","sourceRoot":"","sources":["../../src/services/git-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,YAAY,EAA4B,UAAU,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"git-service.d.ts","sourceRoot":"","sources":["../../src/services/git-service.ts"],"names":[],"mappings":"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"}
|