DEV Community

Cover image for Antigravity CLI, pilote et assistant de mon activité quotidienne dans GitLab
Jean-Phi Baconnais for Zenika

Posted on

Antigravity CLI, pilote et assistant de mon activité quotidienne dans GitLab

đŸ—“ïž Mon quotidien avec GitLab

GĂ©rer mon activitĂ© professionnelle est un sujet de rĂ©flexion que j’ai depuis plusieurs annĂ©es. J’y ai mĂȘme consacrĂ© cet article sur dev.to pour expliquer mon raisonnement et le choix de l’outil 😁. Depuis maintenant 6 ans, j’utilise quotidiennement un projet GitLab pour tracer mes choses Ă  faire, que ce soit pour des projets open source, mes activitĂ©s au sein de Zenika ou bien tout ce qui concerne les communautĂ©s dans lesquelles je suis actif.

🙌 Antigravity, mon nouvel “IDE”

Antigravity, l’environnement de dĂ©veloppement agentique créé par Google, est devenu mon nouvel outil de travail. Si vous ne le connaissez pas, je vous oriente vers ces deux articles ici et lĂ . Dans ce post, je vais plutĂŽt me concentrer sur la maniĂšre dont Antigravity s’est immiscĂ© dans mon organisation du quotidien pour me permettre d’harmoniser mes tickets et me faire gagner du temps.

đŸ€– Antigravity CLI

Une version CLI d’Antigravity est apparue dans la version 2.0. Si vous Ă©tiez utilisateur·trice de Gemini CLI, quelques Ă©tapes de migration de votre configuration vous seront demandĂ©es. Cela se fait en quelques minutes.

Antigravity CLI peut ĂȘtre installĂ© sur les machines MacOS, Linux et Windows (cf doc d’install). Une fois installĂ©, la commande “agy” permet de lancer cette CLI et va permettre d’interagir sur vos projets.

🩊 Antigravity CLI & GitLab

Dans Antigravity, deux approches sont possibles pour interagir avec GitLab :

Si la solution MCP est Ă©lĂ©gante de par sa nouveautĂ© dans l’écosystĂšme de l’IA, j’ai optĂ© pour l’utilisation de la CLI de GitLab. Cela s’explique dans un premier temps par le fait d’utiliser glab depuis plusieurs annĂ©es (avant mĂȘme que GitLab rĂ©cupĂšre ce projet dans ses Ă©quipes) et de ce fait je maĂźtrise les commandes utilisĂ©es pour mon cas d’utilisation. De plus, le MCP est rĂ©cent, GitLab prend en compte des feedback qu’on lui apporte alors la stabilitĂ© de la CLI Ă©tait un autre argument. Un argument de poids, le coĂ»t en termes de token : en utilisant directement la CLI, je vais directement au but final, Ă©vitant de surconsommer des tokens.

Antigravity connaßt la CLI glab, je me suis amusé à lui poser la question :

Installation de la CLI glab

et a confirmé que la CLI était bien présente sur mon poste :

Confirmation de la présence de la CLI glab

Mais pour aiguiller l’agent Antigravity Ă  utiliser cet outil lors de mes demandes en lien avec GitLab et ne pas interroger le MCP ou d’autres outils, j’ai créé un skill pour lister les commandes que je vais avoir besoin alors l’identifiant de mon projet :

Skill pour la CLI glab

A partir de la, je vais pouvoir commencer à interroger via Antigravity CLI pour récupérer des informations sur mes tickets de ma milestone correspondant à ma semaine ou bien les tickets du jour.

Tickets de la milestone

Tickets du jour

Je peux Ă©galement lui demander de me crĂ©er un ticket avec peu d'informations. j’ai dĂ©taillĂ© plusieurs typologies d’issue pour qu’il fasse une premiĂšre affectation de labels :

Création d'une issue

Dans cet exemple, l’issue a bien Ă©tĂ© créée (c’est un bon premier point 😅) avec :

  • deux labels
  • un titre prĂ©fixĂ© par l’emoji que j’ai indiquĂ© dans le skill
  • la milestone en cours

âžĄïž Antigravity permet de crĂ©er rapidement des issues, avec des attributs positionnĂ©s en fonction des mes attentes (labels, milestone).

Lorsque je ne suis pas devant mon ordi et que je pense Ă  une tĂąche Ă  effectuer, qu’elle soit sortie de ma tĂȘte ou de la rĂ©ception de mail (oui je suis un adepte du “zero inbox” 😁), j’envoie ou transfĂšre le mail au “Service Desk” de mon projet mis Ă  disposition par GitLab. Une issue sera automatiquement mais l’assignation Ă  une milestone et le positionnement de labels ne sont malheureusement pas possible.

Avec Antigravity, je vais pouvoir lui demander de faire la “bascule tous les tickets sans milestone Ă  la milestone courante”. Cette requĂȘte fonctionne trĂšs bien et est utile pour traiter un lot de tickets. C’est gĂ©nĂ©ralement ce que je fais les matins oĂč j’ai utilisĂ© le Service Desk pour me crĂ©er des issues.

Déplacement de tickets

Le faire pour un ticket dans GitLab n’est pas une tĂąche trĂšs longue. Lorsqu’il y en a 5 ou 6 cela commence Ă  prendre un peu plus de temps et surtout ĂȘtre rĂ©barbatif. C’est lĂ  oĂč l’action “schedule” d’Antigravity entre en jeu. Cette commande permet de dĂ©finir une instruction qu’on dĂ©sire ĂȘtre exĂ©cutĂ©e plus tard ou bien de maniĂšre rĂ©pĂ©tĂ©e.

Commande schedule dans Antigravity

Planification programmée

Avec cette demande, je vais donc retrouver tous les lundis matin à 9h mes tickets créés le week-end dans ma milestone courante.

âžĄïž Cette programmation est un premier exemple d’action qu’on peut dĂ©lĂ©guer Ă  Antigravity. Me concernant et dans cet exemple, cela me rĂ©duit certes d’une seule action. Mais les opportunitĂ©s sont prĂ©sentes comme par exemple faire une revue de ticket pour harmoniser les labels.

Conclusion

Amener Antigravity dans mon organisation du quotidien m’amĂšne un confort et un gain de temps non nĂ©gligeable que ce soit dans la crĂ©ation ou la gestion de mes issues du quotidien sans quitter mon terminal.

J’ai Ă©galement dĂ©taillĂ© dans un skill la maniĂšre de crĂ©er mes milestones pour n’avoir qu’à demander Ă  Antigravity de “crĂ©er les 10 prochaines milestones”. Quand arrive le vendredi soir et qu’il me reste plusieurs tickets qu’habituellement j’aurai Ă©ditĂ© pour modifier la milestone, le label associĂ© au jour, je n’ai plus qu’à le demander Ă  Antigravity. Le gain de temps de rĂ©el.

La gestion de mes activitĂ©s m’a fait rĂ©flĂ©chir depuis plusieurs annĂ©es. Le faire dans GitLab est la solution qui me convient le plus, et encore aujourd’hui. Avec Antigravity comme assistant, l’organisation de mon activitĂ© et de mon temps me fait tout simplement gagner 
 du temps 😁.

Top comments (0)