# Stravacli

> Use the stravacli terminal tool to access Strava data (athlete profile, activities, streams, routes, segments, clubs, gear, uploads) and perform limited write actions (activity update/upload). Trigger when the user asks for Strava metrics/history/exports or wants Strava automation via CLI.

- Skill: `johnalbertini14-glitch/stravacli` (Agent Skill, multi-file: 2 files)
- Install (CLI): `npx skillmds@latest add johnalbertini14-glitch/stravacli`
- Raw SKILL.md: https://api.skillmd.com/api/skills/johnalbertini14-glitch/stravacli/raw
- Safety review: pending (external: skill-scanner PASS, skillspector PASS)
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: johnalbertini14-glitch (https://skillmd.com/u/johnalbertini14-glitch)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/johnalbertini14-glitch/stravacli

---


# stravacli

Use `stravacli` for Strava operations from terminal.

## Setup

- Ensure binary is available in PATH: `stravacli --version`
- Authenticate before data commands:
  - Local: `stravacli auth login`
  - Headless/VPS: `stravacli auth login --remote`, then complete with `stravacli auth login --auth-url '<callback-url>'`
- Verify auth: `stravacli auth status`

## Read commands (preferred by default)

- Athlete profile: `stravacli athlete me --json`
- Athlete stats: `stravacli athlete stats --json`
- Athlete zones: `stravacli athlete zones --json`
- List activities: `stravacli activities list --per-page 10 --json`
- Activity details: `stravacli activities get <id> --json`
- Activity laps: `stravacli activities laps <id> --json`
- Activity streams: `stravacli activities streams <id> --json`
- Routes list/get: `stravacli routes list --json` / `stravacli routes get <id> --json`
- Export route file: `stravacli routes export <id> --format gpx --out ./route.gpx`
- Segments/starred/explore: `stravacli segments starred --json`, `stravacli segments explore --bounds <swlat,swlng,nelat,nelng> --json`
- Clubs: `stravacli clubs list --json`
- Gear: `stravacli gear get <id> --json`
- Upload status: `stravacli uploads get <uploadId> --json`

## Write commands (ask/confirm first)

- Update activity metadata: `stravacli activities update <id> --name 'New name' --description '...'`
- Upload activity file: `stravacli activities upload --file ./run.fit --yes --json`

Always confirm intent before write actions.

## Output conventions

- Use `--json` when results need parsing or reuse.
- Keep user summaries concise; include key metrics and IDs.
- If a command fails with auth errors, suggest `stravacli auth status` then re-login.

