Skip to content

Commands Reference ​

Every FitOps feature is a CLI command. This is the complete reference.

FitOps commands are grouped by function. Each group covers a distinct part of your training data — syncing it, querying it, analysing it, or planning against it.

Command Groups ​

GroupWhat it does
authConnect and manage your Strava account via OAuth
syncPull activities and time-series streams from Strava to your local DB
activitiesImport GPX/TCX files and browse, publish, filter, or inspect activities
browserConfigure the logged-in Brave, Chrome, or Edge profile used for Strava publishing
athleteAthlete profile, cumulative stats, equipment, and Strava zones
analyticsTraining load (CTL/ATL/TSB), VO2max, HR zones, pace zones, trends, performance, power curves
weatherFetch historical weather per activity, compute WAP factors, get race-day forecasts
workoutsDefine structured workouts, link them to activities, score compliance, and analyse workout-specific load contribution
raceImport GPX/TCX courses, generate per-km pacing plans with elevation and weather, simulate pacer strategy
notesMarkdown training journal — create, tag, link to activities, and query across sessions
backupBack up your entire FitOps data directory to GitHub and restore it on any machine
webhooksConfigure Strava webhook sync for event-driven activity updates
dashboardLaunch the local web dashboard

Getting Around ​

bash
fitops --help                    # all command groups
fitops <group> --help            # commands in a group
fitops <group> <cmd> --help      # options for a specific command

Output — Rich by Default ​

Commands print rich, readable output by default — formatted tables, plain-language summaries, and labelled values. This is what you see at the terminal day-to-day.

bash
fitops activities list
  ID            Date        Sport   Dist      Duration  Pace/Speed  HR
 ──────────────────────────────────────────────────────────────────────
  17972016511   2026-04-04  Run     12.12 km  58:05     4:47/km     168
  17951234567   2026-04-02  Run     8.50 km   40:10     4:43/km     162

Add --json to get raw JSON for scripting or piping to an AI agent:

bash
fitops activities list --json
ModeHowWhen to use
Rich (default)Formatted table / summaryDay-to-day use, terminal browsing
JSON--json flagScripting, piping to AI agents, automation

Errors are printed to stderr with a non-zero exit code.

Typical Workflows ​

Check your fitness right now:

bash
fitops analytics training-load --today
fitops analytics snapshot

Explore a specific run:

bash
fitops activities list --sport Run --limit 10
fitops activities get 17972016511

Configure zones and analytics:

bash
fitops analytics zones --infer           # detect from your HR stream data
fitops analytics vo2max                  # estimate from recent hard efforts

Plan for a race:

bash
fitops race import berlin.gpx --name "Berlin Marathon 2026"
fitops race simulate 1 --target-time 3:15:00 --date 2026-09-29 --hour 9

Open the visual dashboard:

bash
fitops dashboard serve                   # → http://localhost:8888

See Output Examples for sample output from every command group.

← Back to Docs Home

FitOps CLI — terminal-first training analytics