Hermes Atlas
Developer tools & SDKs · works with Hermes Agent

gccli

bpauli/gccli

Garmin Connect command-line client with JSON output and a bundled agent skill for Hermes

In short

gccli is a Go command-line client for Garmin Connect that also ships an agent skill usable from Hermes Agent, Claude Code, Codex and OpenClaw. It lets an agent read activities, health data and workouts from Garmin Connect in plain language.

What gccli does

gccli is a Go command-line client for Garmin Connect. It reads and manages activities (list, search, download as FIT, GPX, TCX, KML or CSV, upload, rename, delete), health data such as sleep, heart rate, HRV, stress, body battery and training readiness, body composition, workouts, courses, devices, gear, goals, badges, hydration, nutrition and calendar events. Output is JSON-first, with plain and TSV modes for scripts, and tables follow the km or miles setting in your Garmin profile.

The repository bundles an agent skill in skills/gccli/ that plugs into Claude Code, Codex, Hermes and OpenClaw, so an agent can drive Garmin Connect in plain language. Login uses browser SSO or a headless mode for servers, and tokens are kept in the OS keyring (macOS Keychain, Linux Secret Service or an encrypted file fallback) and refresh automatically. It supports multiple accounts through an --account flag, retries on 429 and 5xx responses with exponential backoff and a circuit breaker, and generates shell completion for bash, zsh, fish and PowerShell.

Key features

  • Activities: list, search, download in FIT, GPX, TCX, KML or CSV, upload and edit
  • Health data including sleep, heart rate, HRV, stress, SpO2, body battery and VO2max
  • Workouts, courses, devices, gear, goals, badges, hydration and nutrition
  • Bundled agent skill in skills/gccli/ for Claude Code, Codex, Hermes and OpenClaw
  • Browser SSO or headless login, with tokens stored in the OS keyring
  • JSON, plain and TSV output, multiple accounts and shell completion

When to use it

  • Asking Hermes about last night's sleep or this week's training readiness in plain language
  • Exporting activities as FIT or GPX files from a script
  • Uploading a workout from JSON and scheduling it on a Garmin device

Who it is for: Garmin users who want to read their data from a terminal or script, or let an AI agent such as Hermes do it for them.

How it fits with Hermes Agent

Supports Hermes Agent as one of four agents that can load the bundled gccli skill; the CLI itself is a general tool that works without any agent.

How to install gccli

These commands are copied from the project's README. Check the repository for the latest steps before you run them.

brew install bpauli/tap/gccli
gccli auth login you@example.com

Requirements: A Garmin Connect account, and Go 1.24+ if building from source

FAQ

What is gccli?

gccli is a fast, script-friendly command-line interface for Garmin Connect. It covers activities, health data, body composition, workouts, courses, devices, gear, goals and more, with JSON-first output.

Does gccli work with Hermes Agent?

Yes. The repository ships an agent skill in skills/gccli/ that plugs into Hermes, Claude Code, Codex and OpenClaw, so you can drive Garmin Connect in plain language.

How do I install gccli?

On macOS or Linux, run brew install bpauli/tap/gccli, then gccli auth login with your Garmin email. You can also build from source with Go 1.24 or later using make build.

Similar dev tools for Hermes Agent

All dev tools

Related guides: How to install Hermes Agent · Run multiple Hermes agents with profiles