Back to docs index

feezify is local-first by design. Your data is the product’s argument, not its inventory. This page is the honest, complete account of what happens to your data.

The short version

Where your data lives

Everything is in your core — a folder of markdown you own (profil.md, user.md, journal/, memory/, config.yml…). See daily use.

A connector lets feezify exchange your data with a third party (today: Strava, to read your training load). The rule, enforced in code:

A connector stays OFF until you explicitly allow it. Default false. The copilot must not use a connector unless it’s true in your config.yml.

# config.yml
connectors:
  strava: false      # set to true only when you want feezify to read your Strava data

Strava is only queried when both conditions hold:

  1. connectors.strava: true in config.yml (your consent), and
  2. a Strava credential is available — the official connector (no-terminal path) or a token in .env (developer path).

If either is missing, feezify doesn’t touch Strava. It reads an optional local activities.json cache if present, or works from your journal alone. No Strava at all is a fully supported mode.

The official Strava connector (no-terminal path)

In the no-terminal path, authorization is handled by Claude’s official Strava connector via OAuth:

Tokens (developer path)

If you use your own Strava API application, its secrets are credentials and get the strictest handling:

Your two memories

Revoking / deleting everything

In one sentence

Your training data stays yours, on your machine; feezify only ever touches a third party after you’ve explicitly said yes, and you can undo that in one line.


Back to → Docs index · FAQ