Command-Line Interface (CLI)
The CLI tool is located in the src directory.
CLI Reference
--database/-d: Selects the database backend (mysqlorpostgresql), overriding environment variables.sync: Initiates data synchronization.--full-sync/-f: Executes a full synchronization audit.--fast-sync/-q: Executes an incremental synchronization.--period/-p: Restricts full synchronization to a specific timeframe (e.g., ‘7d’, ‘2w’, ‘1m’, ‘1y’).--enable-strava-cache: Activates API response caching.--cache-ttl: Defines cache time-to-live in minutes (default: 60).--clear-cache: Purges the cache prior to synchronization.
web: Launches the web server.--port: Specifies the listening port (default: 4444).--host: Specifies the bind address (default: 0.0.0.0).
flightcheck: Validates database connectivity and schema integrity.version: Outputs the current version information.
Examples
Synchronization
Full Sync
Perform a complete audit of your Strava history.
python kinetiqo.py sync --full-sync
Incremental Sync
Fetch only the most recent activities.
python kinetiqo.py sync --fast-sync
Limited Scope Sync
Sync only the last 7 days of activities (Full Sync mode).
python kinetiqo.py sync --full-sync --period 7d
Sync only the last 2 weeks.
python kinetiqo.py sync --full-sync --period 2w
Sync only the last month.
python kinetiqo.py sync --full-sync --period 1m
Sync only the last year.
python kinetiqo.py sync --full-sync --period 1y
Caching
Enable caching to speed up repeated runs during development.
python kinetiqo.py sync --fast-sync --enable-strava-cache
Set a custom cache TTL (e.g., 30 minutes).
python kinetiqo.py sync --fast-sync --enable-strava-cache --cache-ttl 30
Clear the cache before syncing.
python kinetiqo.py sync --fast-sync --clear-cache
Web Server
Start the web server on the default port (4444).
python kinetiqo.py web
Start on a custom port (e.g., 8000).
python kinetiqo.py web --port 8000
Bind to a specific host (e.g., localhost only).
python kinetiqo.py web --host 127.0.0.1
Database Selection
Force usage of MySQL backend.
python kinetiqo.py --database mysql web
Force usage of PostgreSQL backend.
python kinetiqo.py --database postgresql sync --fast-sync
Diagnostics
Check database connection and schema.
python kinetiqo.py flightcheck
Check version.
python kinetiqo.py version