Skills

gccli : interroger les données Garmin Connect en ligne de commande et via un agent

gccli est idéal pour interroger directement vos activités, santé et composition corporelle Garmin Connect depuis le terminal ou un client agent, et transmettre aux scripts une sortie JSON ou plain/TSV analysable. L'authentification via Garmin SSO est obligatoire avant toute utilisation, et le fichier de jetons de repli est chiffré avec une phrase secrète fixe intégrée au code source — vérifiez que vous l'acceptez avant de commencer.

Official source · gccli — A command-line interface for Garmin Connect

Install

brew install bpauli/tap/gccli

À qui ça s'adresse

gccli est un outil en ligne de commande pour Garmin Connect, officiellement positionné comme une « CLI rapide et adaptée aux scripts », qui donne accès aux activités, données de santé, composition corporelle, entraînements, parcours, appareils, équipements, objectifs et badges. Il convient à :

  • Celles et ceux qui veulent interroger leurs données Garmin directement dans le terminal et envoyer les résultats vers des scripts : le projet officiel fournit deux modes de sortie analysables, JSON et plain/TSV, explicitement pensés pour les scripts et l'automatisation.
  • Celles et ceux qui travaillent dans un client agent et veulent déléguer la consultation de données à un agent : gccli embarque un agent skill prêt à l'emploi qui, selon la description officielle, vise des clients d'agents IA tels que Claude Code, Codex, Hermes et OpenClaw.
  • Les développeurs qui veulent intégrer entraînements et données de santé dans des flux automatisés.

Cas où ça ne convient pas, ou à vérifier d'abord :

  • Impossible sans compte Garmin Connect : l'authentification passe par Garmin SSO, c'est un prérequis absolu.
  • Les environnements où l'on ne veut pas de Homebrew : la seule commande d'installation copiable fournie par la documentation officielle est Homebrew ; compiler depuis les sources exige Go 1.26 ou supérieur, et les étapes complètes de compilation ne sont pas documentées dans le dépôt officiel.
  • La liste de clients est donnée à titre d'exemple, pas de façon exhaustive ; la compatibilité au-delà de cette liste n'est pas précisée — consultez la documentation du dépôt avant toute intégration.

Première tentative en 3 minutes

Le chemin principal recommandé est unique : installer avec Homebrew, terminer l'authentification Garmin SSO, puis faire exécuter une requête par l'agent.

Prérequis : vous avez déjà un compte Garmin Connect ; Homebrew est installé sur votre machine ; et vous savez que la première authentification écrit vos identifiants dans le keyring du système (effets de bord : voir « Limites d'utilisation »).

Étape 1, installer :

brew install bpauli/tap/gccli

Étape 2, s'authentifier. L'authentification passe par Garmin SSO et les identifiants sont enregistrés dans le keyring du système. Un détail à connaître impérativement avant : la documentation officielle indique clairement que gccli chiffre chaque fichier de jetons avec une phrase secrète fixe intégrée au code source — c'est-à-dire le fichier de jetons de repli utilisé quand le keyring n'est pas disponible, et cette phrase secrète n'est pas un secret propre à votre compte. À vous de juger, avant la première authentification, si vous acceptez ce mode de stockage. La documentation officielle ne donne pas de commande de connexion précise ; après l'installation, suivez l'aide intégrée de gccli.

Étape 3, brancher l'agent sur le skill. L'agent skill fourni avec gccli se trouve dans skills/gccli/SKILL.md et est présenté comme prêt à l'emploi ; les étapes pour le rattacher à votre client ne sont pas décrites par la documentation officielle — référez-vous à la documentation de chaque client.

Étape 4, lancer une tâche de consultation. Dites directement à l'agent : « Récupère mes dernières activités de course et mes données de composition corporelle de la semaine. » Ce type de tâche entre dans le périmètre des capacités d'accès aux données listées officiellement ; on ne sait pas officiellement si la requête écrit des fichiers locaux, et ce point n'est pas confirmé. Le seul effet d'écriture confirmé est le stockage des jetons (voir « Limites d'utilisation ») — ne partez pas du principe que tout est en lecture seule.

Étape 5, vérifier le signal de succès : la réponse doit être une sortie analysable en mode JSON ou plain/TSV, prête à coller ou à confier à un script ; dès que vous voyez une sortie structurée, la chaîne fonctionne.

Cas d'usage

Cas 1 : consolider entraînements et données corporelles.

  • Scénario : voir d'un coup d'œil les dernières séances et l'évolution du poids, sans naviguer fiche par fiche dans l'interface web.
  • Lancement : dans un client agent relié à gccli, dites « Liste mes derniers entraînements et mes relevés de composition corporelle ».
  • Déroulé : l'agent accède via gccli aux activités et à la composition corporelle, deux catégories de données confirmées officiellement.
  • Résultat attendu : une sortie JSON ou plain/TSV analysable, à coller dans un tableur ou à passer à un script ; la liste des champs d'un enregistrement n'est pas documentée officiellement — la réponse réelle fait foi.

Cas 2 : intégrer les données Garmin à des scripts d'automatisation.

  • Scénario : résumer chaque semaine appareils, équipements, objectifs et badges pour bâtir ses propres archives d'entraînement.
  • Lancement : appelez gccli depuis vos scripts existants ou des tâches d'agent planifiées, puis transmettez la sortie à l'étape suivante.
  • Déroulé : appuyez-vous sur le positionnement officiel « adapté aux scripts » et sur les modes de sortie JSON et plain/TSV pour vous brancher sur vos flux existants.
  • Résultat attendu : une sortie lisible par machine qui alimente de façon fiable l'étape suivante ; la liste exacte des sous-commandes et paramètres n'est pas donnée mot à mot par la documentation officielle — consultez l'aide de gccli et le dépôt avant de vous lancer.

Limites d'utilisation

  • Réseau et compte : les données viennent du cloud Garmin Connect ; l'authentification et chaque requête exigent une connexion Internet et votre compte Garmin. Aucune capacité hors ligne n'est mentionnée officiellement, et cela reste non confirmé.
  • Identifiants et effets d'écriture : la première authentification passe par Garmin SSO et écrit les identifiants dans le keyring du système ; le fichier de jetons de repli utilisé quand le keyring n'est pas disponible est chiffré avec une phrase secrète fixe intégrée au code source. Au-delà du stockage des jetons, on ignore officiellement si les requêtes écrivent d'autres fichiers, et cela reste non confirmé.
  • Environnement d'exécution : compiler depuis les sources exige Go 1.26 ou supérieur ; le chemin principal recommandé passe par Homebrew, sans compilation locale. Les autres exigences d'exécution ne sont pas documentées.
  • Prérequis côté clients : l'agent skill embarqué vise des clients d'agents IA tels que Claude Code, Codex, Hermes et OpenClaw ; la compatibilité au-delà de cette liste et l'uniformité des étapes d'intégration ne sont pas détaillées officiellement — consultez la documentation de chaque client avant d'intégrer.
  • Limites explicites : ni limites de débit, ni plafonds d'export, ni contraintes liées aux conditions d'utilisation ne sont mentionnées officiellement ; consultez le dépôt officiel avant tout usage massif ou à haute fréquence.