Project story
From SaaS to AI agent
The story behind this rebuild lives on nicolasjouanno.com. It continues the journey told in From cycling to the web.
Training copilot · AI-native · Open source
In 2018 I launched a training SaaS. In 2026 I unplugged it and rebuilt it AI-native: zero server, zero account — it runs on your own AI. It reads your day — load × feel — and tells you green, amber or red, and above all why. It reads; you decide.
Amber — caution.
High load over the last 3 days × a short night. Your legs could respond — your own journal says ease off.
How you feel gates what the numbers say.
The problem
First trap: you listen to the numbers. Fresh form, low load, the app says “go” — and you push through a day your body was clearly refusing. A week later, you pay for it.
Second trap: you listen to your morning mood, and you miss the days you were genuinely ready to push.
“We program the load. We forget the state of the person absorbing it.”
The method — open on purpose
The real subject is neither the numbers nor the feel alone. It's the crossing of the two — and knowing, in doubt, which one wins.
From your activities, feezify computes your load as true exponential averages (TSS → CTL / ATL / TSB). TSB gives your form. It's deterministic — math, not an opinion.
Your journal gives your real readiness: sleep, fatigue, motivation, stress, how the legs feel, what's happening outside sport.
feezify sets a light — green, amber or red — and, above all, the explanation. The colour isn't up for debate; the why is in plain words.
The rule — the one that carried all the value of the old app: the subjective gates the objective.
Green — go.
Readiness high, form non-negative. Both sides agree: today can take quality.
“A copilot reads the instruments. You fly the plane.” feezify
Let's be plain: feezify is a copilot, a reading assistant. It prescribes no workout, never tells you what to do, replaces neither a trainer nor a doctor. Weight, for instance, is only read as a trend — never as a diagnosis. The decision is yours, always.
AI-native · zero infra
feezify is no longer an app I host. It's a skill + a markdown core you own, installed on your AI (Claude, OpenClaw). The old web app maps tier for tier onto the new agent:
| Classic web app | The tier | AI-native feezify |
|---|---|---|
| Browser / frontend | interface | The LLM / the chatbot — Claude, OpenClaw |
| Server / backend | engine | The agent — a pure, unit-tested method core + adapters (Strava…) |
| Database | persistence | A second-brain memory — your journal + the copilot's compiled memory of you |
A portable folder of markdown you own. No server, no account, no telemetry. A connector (Strava…) stays off until you switch it on.
Your journal, which you write; and the memory the copilot compiles about you over time — every claim traceable to a precise day.
Strava is just an adapter; the engine depends on no brand. The code and the method are in the open — read them, judge them, fork them.
Project story
The story behind this rebuild lives on nicolasjouanno.com. It continues the journey told in From cycling to the web.
Who it's for
You train seriously — bike, run, endurance — and you record your sessions.
You keep — or you're ready to keep — an honest journal, even a short one.
You want to read your form more clearly, not to be told your workouts.
You're comfortable with an AI (Claude, OpenClaw) and the idea of a tool with no app, no account.
Install
No code required. If you use Claude, you already know how to do all of this:
In Claude: Connectors → Strava → authorize. Strava's official connector: read-only, revocable anytime, no keys to handle.
One zip to download (available when the beta opens), then in Claude: Settings → Skills → Upload. The engine ships inside it — nothing else to install.
“How am I today?” On the first exchange, feezify creates your core — your own folder — and sets you up in conversation: your baselines, your sport, your first journal entry.
The repo is installable today — clone, build, point your agent at the skill. Same engine, two first-class surfaces: Claude and OpenClaw.
git clone https://github.com/jn-prod/feezify
Beta soon
feezify updates go through Nicolas’s newsletter: the same thread for movement, travel, food and the tools that grow from them.
Documentation
The full manual ships with the site — the idea, the method, both install paths, privacy. 🇫🇷 Version française
The idea, what it does and does not do, and how a SaaS became an agent.
docs/what-is-feezify →Both ways in: the no-terminal 3-step path, and the developer path.
docs/install →Your core folder, how to journal, how to ask for — and read — the read.
docs/daily-use →TSB, readiness, and the crossing rule — open on purpose.
docs/the-method →Local-first, consent-gated connectors, and how to revoke everything.
docs/privacy-and-consent →Common questions and fixes, for both paths.
docs/faq →FAQ
No, and it's deliberate. feezify reads your day and tells you green / amber / red, with the why. The decision stays yours. It's a copilot: it illuminates, you decide.
No. There's no app to host, no account to create. feezify is a skill + a markdown folder running on your own AI. Zero infra.
Home. Your core is a folder of markdown on your machine. No feezify server, no telemetry. A connector like Strava stays off until you switch it on yourself.
An AI that supports skills — Claude, or a self-hosted agent like OpenClaw. You install feezify on it, and ask it how you are today.
No. The base path is three moves: connect the official Strava connector in Claude, upload the skill (a zip file), ask for your read. No terminal, no API key. The developer path exists too, for those who want their hands in it.
Today, activities come in through Strava — one adapter among others to come: the engine is provider-agnostic by design, so a watch provider is an adapter, not a rewrite. Sleep, fatigue and feel enter through your journal — your watch's numbers can inform what you write, and an honest line about a bad night often reads truer than a sleep score.
Strava gives you numbers. feezify crosses them with how you feel, applies a rule (the subjective gates), and returns an explained read — not one more table to interpret alone.
It's a beta on its way. The core works; I'm refining it in the open. Updates on the opening go through Nicolas’s newsletter.
Beta on its way. If a tool that reads your day — no server, no account, no orders — speaks to you, you can follow its opening.