OS
oskarth/strava-cli
strava-cli
CLI tool to pull personal data from the Strava API v3.
Setup
- Install:
uv sync - Register a Strava API app at https://www.strava.com/settings/api
- Callback domain:
localhost
- Callback domain:
- Create a
.envfile (gitignored):STRAVA_CLIENT_ID=your_id STRAVA_CLIENT_SECRET=your_secret - Authenticate:
Or pass directly:uv run strava auth loginuv run strava auth login --client-id=XXX --client-secret=XXX
Commands
strava auth login # OAuth login (opens browser)
strava auth status # Show auth state
strava auth refresh # Force token refresh
strava profile # Athlete profile
strava stats # YTD and all-time stats
strava gear # Bikes and shoes
strava activities # List recent activities (--after, --before, --type, --limit, --json, --format md)
strava activity ID # Activity detail (--json, --splits, --format md)
strava streams ID # GPS/sensor data (--keys, --format json|csv|gpx)
strava week # Weekly training summary (--after, --before, --type, --json, --format md)
strava training # Training analysis (--weeks, --vdot, --type, --json, --format)
strava export # Bulk export (--after, --before, --type, --include-streams, --output, --format json|csv|md)
strava sync # Quick export to strava-export/activities.md
Development
uv run pytest # Run tests
uv run strava --help # CLI help