strava-cli_skill

This skill helps you interact with Strava via the strava-client-cli to view activities, profiles, stats, and export data.
  • Python

2.6k

GitHub Stars

2

Bundled Files

2 months ago

Catalog Refreshed

4 months ago

First Indexed

Readme & install

Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.

Installation

Preview and clipboard use veilstrat where the catalogue uses aiagentskills.

npx veilstrat add skill openclaw/skills --skill strava-cli

  • _meta.json276 B
  • SKILL.md2.8 KB

Overview

This skill provides a command-line interface to interact with Strava using the strava-client-cli Python tool. It enables viewing athlete profiles, activity lists, detailed activity data, stats summaries, and exporting bulk data. Setup guidance covers creating a Strava account, registering an API application, and completing OAuth authentication, including a headless/manual token exchange option.

How this skill works

The tool communicates with the Strava API using OAuth tokens stored locally (config and tokens live under ~/.config/strava-cli). Once authenticated you run concise commands to fetch profiles, activity lists, stats, single-activity details, and to export data in JSON. Tokens auto-refresh; the CLI handles token refreshes but also supports manual token exchange for headless environments.

When to use it

  • Quickly inspect your recent activities and splits from a terminal.
  • Pull athlete profile and aggregated run/ride/swim stats for reporting or analysis.
  • Export all activities for backup, migration, or local analysis in JSON format.
  • Automate data collection from Strava in scripts or CI pipelines using headless OAuth.
  • Filter or inspect specific activities by ID, type, or date from shell workflows.

Best practices

  • Create a dedicated Strava API application and note client_id and client_secret before authenticating.
  • Keep your ~/.config/strava-cli/tokens.json file secure; it contains access and refresh tokens.
  • Use the CLI’s filtering options (type, after date, limit) to limit API calls and focus exports.
  • For headless servers, perform the manual OAuth flow and save the exchanged tokens to tokens.json.
  • Revoke and re-authorize the app when switching connected athletes because new Strava apps support only one connected athlete.

Example use cases

  • Run strava profile to quickly copy your public profile details for a report.
  • Run strava activities --limit 20 --after 2025-01-01 to gather recent runs for a training log.
  • Automate nightly strava export --output ./data --format json to back up activities to a local archive.
  • Use strava activity 12345678 to pull detailed GPS and metrics for a single ride for diagnostics.
  • Integrate strava stats into a dashboard by scripting periodic CLI calls and parsing JSON exports.

FAQ

Config and tokens are stored under ~/.config/strava-cli; config.json holds settings and tokens.json holds access/refresh tokens and expiry.

Can I use this on a headless server without a browser?

Yes. Build the OAuth URL, authorize on any machine, copy the returned code, then exchange it via curl and save the response to tokens.json.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational