gwscli : Tout Google Workspace dans un seul CLI conçu pour les agents (avec Claude Code)

BBetter Stack
컴퓨터/소프트웨어창업/스타트업AI/미래기술

Transcript

00:00:00Google Workspace vient de faire un grand bond en avant pour les agents IA grâce à la sortie d'un
00:00:04outil CLI robuste qui permet à votre agent d'interagir avec n'importe quelle API Google Workspace.
00:00:09Lire des fichiers sur Drive, envoyer des emails ou même créer des slides, tout a été conçu
00:00:14pour l'IA, ce qui signifie une consommation minimale de tokens et une création de commandes
00:00:19dynamique pour des API toujours à jour. Mais quand un géant comme Google
00:00:24crée un CLI pour ce qui était (et reste) un serveur MCP, qu'est-ce que cela signifie
00:00:29pour l'avenir du protocole MCP ? Abonnez-vous et découvrons-le ensemble.
00:00:33Le mois dernier, j'ai fait une vidéo sur Playwright qui lançait un CLI pour son serveur MCP.
00:00:42Aujourd'hui, Google Workspace fait de même et tout le monde s'enflamme sur Twitter.
00:00:46C'est un outil CLI construit par Justin, qui explique dans un blog comment il l'a optimisé
00:00:52spécifiquement pour les agents. Il propose plus de 100
00:00:57compétences téléchargeables sur skills.sh, ce qui ravit notre ami le "g-man".
00:01:01Mais avant de voir ses capacités, passons par l'étape de configuration car, comme souvent
00:01:06avec les outils Google Cloud, ce n'est pas si simple. Regardez.
00:01:10D'abord, et c'est le plus important, il vous faut un accès à la console Google Cloud.
00:01:15Créez un projet ou utilisez-en un existant. J'en ai créé un. Installez ensuite le gcloud CLI,
00:01:21via Brew sur Mac par exemple. Une fois le CLI Google Workspace installé,
00:01:26lancez cette commande pour démarrer la configuration, qui est assez intuitive.
00:01:31Utilisez votre email, choisissez votre projet GCP et sélectionnez les API souhaitées.
00:01:37Ensuite, allez dans "API et services", puis "Identifiants"
00:01:42pour créer un nouvel ID client OAuth. Je pense que n'importe quel type d'application fonctionne ;
00:01:48j'ai choisi "Web", mais "Bureau" devrait marcher car il ne faut que l'ID et le secret.
00:01:53L'étape suivante est un peu plus délicate : après avoir lancé cette commande,
00:01:57vous devrez choisir votre périmètre d'authentification. J'ai tout coché pour ce test,
00:02:02ce qui n'est pas idéal mais pratique pour l'essai. Vous obtiendrez une longue URL.
00:02:08Vérifiez bien qu'il n'y a pas de fautes de frappe pour éviter les erreurs,
00:02:12et notez bien le numéro de port après "localhost", dans mon cas : 51065.
00:02:18Retournez dans la console Cloud, section "Écran de consentement OAuth",
00:02:23cliquez sur vos clients Web. Plus bas, dans "URI de redirection autorisés",
00:02:28ajoutez ce numéro de port (51065). Mais ce n'est pas tout.
00:02:33Allez dans "Audience" et ajoutez votre adresse email si elle n'y est pas.
00:02:37Si votre application est déjà publiée, vous n'aurez pas ce problème,
00:02:40mais comme je ne fais que tester l'API, je suis en mode test.
00:02:44Je dois donc m'ajouter comme utilisateur test, ainsi que toute personne utilisant ce CLI.
00:02:48Ceci fait, copiez l'URL et suivez les étapes pour configurer le CLI.
00:02:52À la fin, vous devriez voir un message de succès. Si l'écran n'apparaît pas,
00:02:56attendez quelques secondes car l'enregistrement de l'URI de redirection peut être long.
00:03:01C'est cette phase de configuration qui m'a pris le plus de temps à comprendre,
00:03:06ce qui prouve que je n'utilise pas Google Cloud tous les jours. Mais une fois fini,
00:03:11vos informations s'affichent et le vrai plaisir commence. Regardez ça.
00:03:15Je commence simplement en demandant à Claude des infos sur mes 10 derniers emails.
00:03:19J'espère qu'il n'y a rien de trop confidentiel. En utilisant le CLI GWS,
00:03:24il me donne l'expéditeur, l'objet, la date et les libellés de chaque message.
00:03:28On remarque que cette tâche n'a consommé que 9 % du contexte global car il n'y a
00:03:33aucun outil MCP ici. L'essentiel du contexte vient des messages. Essayons autre chose.
00:03:38Je demande à Claude de rédiger un brouillon d'email avec l'objet "J'aime Claude"
00:03:44et un joli poème en corps de texte. Il utilise à nouveau le CLI GWS via Python et Bash.
00:03:50Et voilà, j'ai un nouveau brouillon écrit par Claude. Zoomons un peu :
00:03:56un email contenant un poème sur son amour pour Claude. La façon dont Claude utilise
00:04:00le CLI GWS est fascinante. Si on regarde les commandes passées,
00:04:05on voit beaucoup de sous-commandes et un flag "params" avec du JSON à l'intérieur.
00:04:11Ce qui est incroyable, c'est que si moi, humain, je tapais "gws help"
00:04:16pour voir les options, je n'en verrais qu'une poignée. Pour aller plus loin,
00:04:23je devrais utiliser "help" de manière répétitive sur chaque sous-commande.
00:04:28Mais l'agent, lui, récupère ces informations instantanément. Il connaît
00:04:32les paramètres exacts pour obtenir les bonnes données du premier coup.
00:04:37Regardez : j'ai tapé ma demande, il a utilisé "help" une seule fois
00:04:43et a tout compris tout de suite. Nous allons détailler comment cela fonctionne,
00:04:48mais on voit que l'aide du CLI définit l'usage par service, ressource et sous-ressource.
00:04:53Le service est listé en bas. Et pour plus de détails,
00:04:57on peut utiliser "gws schema" avec le service et la méthode. Allez, un dernier test.
00:05:03Je demande à Claude de créer une présentation Google Slides avec un titre
00:05:08"Claude cat" et quatre autres diapositives contenant des images de chats. Il utilise le CLI,
00:05:15demande de l'aide pour les commandes "slides" et "presentations", et termine le travail.
00:05:20Voyons le résultat dans le navigateur. Le voici. J'avais déjà fait un test
00:05:24avec des chiens, mais voyons celui-ci. Titre : "Claude cats", sous-titre :
00:05:30"A purified collection" et cinq slides avec des images de chats. C'est génial.
00:05:36Et nous n'avons utilisé que 15 % du contexte. On pourrait continuer ainsi longtemps,
00:05:42comme ici où j'ai créé un Google Sheets avec la population des États américains,
00:05:47un total en bas, et j'ai même planifié des événements dans mon calendrier.
00:05:52Vous avez noté que j'ai fait tout ça sans installer de compétences spécifiques,
00:05:58mais le projet propose plein de "skills" (assistants, personas, recettes) pour des actions
00:06:05complexes comme bloquer du temps de concentration. Comment Justin a-t-il réussi cela ?
00:06:10D'abord, il a privilégié le JSON imbriqué, illisible pour l'homme mais idéal pour les agents.
00:06:16Il a aussi rendu la documentation interrogeable à l'exécution. Grâce à la section
00:06:21"schema", si une API change ou si l'agent se trompe de paramètre,
00:06:26il sait exactement où vérifier la correction sans aucune confusion.
00:06:31Les paramètres et champs permettent aussi de filtrer les données renvoyées par l'API.
00:06:36L'agent ne reçoit que le strict nécessaire au lieu d'un surplus d'informations,
00:06:42ce qui économise énormément de tokens. Enfin, il utilise les "skills" pour
00:06:47guider l'agent. Je ne les ai pas utilisés ici, mais ils offrent bien plus d'infos
00:06:53que le simple flag "help". Alors, les serveurs MCP sont-ils finis au profit des CLI ? Pas vraiment.
00:06:59Car avec MCP, l'agent appelle les fonctions directement sans avoir
00:07:06à construire des commandes shell ou manipuler du JSON manuellement comme le fait le CLI.
00:07:11Les outils MCP sont aussi plus performants pour enchaîner des étapes complexes sans terminal,
00:07:16c'est pourquoi le CLI Google Workspace propose une option MCP. Cependant, les CLI
00:07:24consomment beaucoup moins de tokens. Ils sont portables, fonctionnant avec ou sans
00:07:28framework d'agent. Et il est très facile de reproduire une commande pour le débogage.
00:07:34Tout dépend donc de votre usage. J'ai tout de même eu quelques soucis avec le CLI,
00:07:40comme des fautes de frappe dans les URL générées, je ne sais pas trop comment.
00:07:47L'histoire du port localhost pour la redirection m'a aussi pris du temps.
00:07:52Est-ce lié à Google Cloud ou au CLI ? Peu importe, ce n'était pas drôle. Et j'ai eu
00:07:59un problème de mise à jour des tokens, au point de créer un ticket sur GitHub.
00:08:05Enfin, c'est Claude qui l'a écrit pour moi ! Mais pour un projet vieux
00:08:10de moins d'une semaine avec déjà 10k étoiles sur GitHub, l'avenir semble radieux.
00:08:16D'ailleurs, si vous voulez créer une application Electron boostée par Bun,
00:08:21pour gagner en vitesse et en légèreté, allez voir ma vidéo sur
00:08:26Electrobahn. Je vous montre comment l'utiliser pour un projet Vite simple.

Key Takeaway

Le gwscli transforme Google Workspace en un terrain de jeu optimisé pour les agents IA, offrant une alternative légère et économe en tokens au protocole MCP traditionnel.

Highlights

Lancement de gwscli, un outil d'interface en ligne de commande (CLI) optimisé pour permettre aux agents IA d'interagir avec les API Google Workspace.

Réduction significative de la consommation de tokens (environ 9 % à 15 %) grâce à l'utilisation de JSON compact et de filtrage de données précis.

Capacité des agents à auto-explorer la documentation via des commandes comme "help" et "schema" pour une exécution dynamique sans erreurs.

Démonstrations concrètes incluant la lecture d'emails, la rédaction de brouillons, la création de Google Slides et la gestion de Google Sheets.

Comparaison entre l'approche CLI (plus légère et portable) et le protocole MCP (plus performant pour des flux de travail complexes sans terminal).

Disponibilité de plus de 100 "skills" téléchargeables sur skills.sh pour étendre les capacités de l'agent avec des personas et des recettes complexes.

Succès fulgurant du projet avec déjà 10 000 étoiles sur GitHub en moins d'une semaine malgré des défis de configuration initiale.

Timeline

Introduction et importance du CLI pour les agents IA

L'orateur présente gwscli comme une avancée majeure permettant aux agents d'interagir nativement avec Drive, Gmail ou Slides. Cet outil est spécifiquement conçu pour l'IA, mettant l'accent sur une consommation minimale de tokens et une mise à jour dynamique des commandes. La vidéo pose une question centrale sur l'avenir du protocole MCP (Model Context Protocol) face à l'émergence de tels outils CLI. L'enthousiasme sur les réseaux sociaux, notamment Twitter, souligne l'impact de cette sortie par Justin de Google. Cette section établit le contexte d'un outil déjà riche de 100 compétences disponibles pour les développeurs.

Configuration technique et défis de Google Cloud

La configuration de gwscli est décrite comme une étape complexe nécessitant un accès à la console Google Cloud et l'installation du gcloud CLI via Brew. Le processus implique la création d'identifiants OAuth, le choix des périmètres d'authentification et la gestion délicate des URI de redirection localhost. L'orateur insiste sur l'importance de bien configurer le numéro de port, comme le 51065 dans son exemple, pour éviter les erreurs de redirection. Il mentionne également la nécessité d'ajouter des utilisateurs de test dans l'écran de consentement OAuth pour les applications non publiées. Cette phase est présentée comme le principal point de friction avant de pouvoir exploiter la puissance de l'outil.

Démonstrations pratiques : Gmail et rédaction automatique

Une fois configuré, l'outil permet à Claude d'extraire les informations des dix derniers emails de l'utilisateur avec une efficacité surprenante. Les données récupérées incluent l'expéditeur, l'objet et les libellés, tout en ne consommant que 9 % du contexte total. Claude parvient ensuite à rédiger un brouillon d'email contenant un poème original en utilisant des commandes Bash et Python via le CLI. Cette démonstration prouve que l'agent peut manipuler des services de productivité de manière fluide et autonome. L'absence d'outils MCP dans cet exemple souligne la légèreté de l'approche CLI pour des tâches quotidiennes.

Analyse du fonctionnement interne et de l'auto-exploration

L'orateur analyse comment Claude utilise les sous-commandes et le flag "params" pour envoyer du JSON structuré aux API de Google. Contrairement à un humain qui devrait lire de longues pages d'aide, l'agent IA interroge le schéma du CLI pour comprendre instantanément les paramètres requis. Le système repose sur une hiérarchie claire de services, de ressources et de méthodes que l'agent peut explorer à l'exécution. Cette capacité d'auto-documentation permet à l'IA de corriger ses propres erreurs de syntaxe sans intervention humaine. L'utilisation de la commande "gws schema" est mise en avant comme la clé de cette intelligence opérationnelle.

Création de présentations et gestion de données complexes

Le test final montre Claude créant une présentation Google Slides complète sur le thème des chats avec cinq diapositives incluant des images. L'agent gère non seulement les titres et sous-titres, mais aussi l'insertion de médias via le CLI avec une consommation de contexte de seulement 15 %. L'orateur mentionne également avoir réussi à générer des feuilles de calcul Google Sheets avec des calculs de population et à planifier des événements dans son calendrier. Ces succès sont obtenus sans installer de compétences spécifiques, bien que des "skills" supplémentaires existent pour des tâches encore plus complexes. Cela démontre la polyvalence de gwscli pour automatiser des flux de travail de bureau entiers.

Comparaison CLI vs MCP et conclusion technique

La vidéo se termine par une réflexion sur la dualité entre les serveurs MCP et les interfaces CLI pour le futur de l'IA. Tandis que le MCP offre des appels de fonctions plus directs, le CLI gagne sur le terrain de la portabilité, de la facilité de débogage et de l'économie de tokens. L'orateur partage ses difficultés personnelles, notamment des problèmes de rafraîchissement de tokens et des erreurs d'URL, ayant mené à l'ouverture d'un ticket GitHub. Malgré ces défauts de jeunesse, le projet est jugé extrêmement prometteur avec une adoption rapide par la communauté. Enfin, une brève mention est faite de l'outil Electrobahn pour les développeurs souhaitant créer des applications Electron rapides.

Community Posts

View all posts