I have been thinking for a while that I should follow an exercise plan with progressive overload and recovery tracking. My nutrition could be improved too. And there’s plenty of apps that do that, but I hate the idea of having to do things on schedule, the tedious manual entry of this sort of data and having to learn and pay for yet another app.
I have been living inside Codex for the last half a year, so I decided instead to try using it for this purpose, and it worked much better than I expected. It works as follows:
Structure
I have a Garmin watch, an iPhone and a MacBook.
In my iCloud Drive I set up a single “Health” folder with three subfolders: Data, Meals, Workouts, and then I created a project in Codex pointing at the top level folder.
- Data has the daily Garmin data syncs (using python-garminconnect), the historical Garmin data dump and whatever else Codex wants to keep there - currently it’s the structured db with the log of the meals, exercises and recovery data. (I have no idea how it’s structured exactly, nor do I care)
- Meals has the timestamped pictures of my meals with an optional voice note. It works with an Apple Shortcut that opens the camera, saves the picture to that folder, and asks for an optional voice note that gets saved to the same folder. It works instantly and even works offline, as you are just saving a picture in a folder that then later syncs.
- Workouts is a folder with the timestamped voice notes that also work with a shortcut. I can dictate the exercise I did (e.g. Squat, this weight for that many reps, felt easy). I don’t use it as much as I thought I would as I now mostly follow the Codex recommended sets and reps at the gym and just tell it to log the suggested workout as complete in the chat (usually with a few adjustments).
The pictures are analyzed by Codex, and the voice notes are first transcribed locally using whisper-small.en-mlx and then analyzed by Codex together with the pictures. When there’s any issues with the notes or pictures Codex can correct the transcription or ask clarifying questions when there’s any ambiguity.
First setup
First I requested my data from Garmin (they email you an archive with all of your workouts and heart rate/sleep/recovery data) and unpacked it in the Data folder. I then asked Codex to first structure and then analyze that data to build a profile of sorts on my current physical state. I also provided a general overview of my approach to exercise, my approximate strength training one rep PRs, how many pull-ups I can do, age, body-fat percentage, etc in the same chat.
Then I asked it to place me in the percentile for my age on the different metrics. Then I asked it to build my “peak” profile, e.g. what I could reasonably achieve on the different objective metrics if I pushed myself. Strength, VO₂ max, hiking speed, number of strict pull-ups, target weight and body fat percentage and so on, with a priority placed on the things I care about and the things I lack in most.
That gave me two profiles - current and desired state. They were saved in the appropriate md files and are kept in context when designing the exercises, so that Codex knows where I stand and where I would like to get. It also allows me to see where I am currently lacking most vs my goals.
Daily use
After that setup, I now have two daily chats going: diet and exercise.
In the diet chat I ask it to pull yesterday’s meals (it knows where the pictures and voice notes live), ask me questions if something is unclear, and tell me what it thought about my daily nutrition. (Too much protein, a bit too much fat, not enough veggies is the usual complaint I get.) I also manually log some meals in the chat and often ask for meal ideas - e.g. look at my lunch and suggest a good dinner that will balance the daily nutrition.
The exercise chat mostly consists of the Morning Brief, every morning as I have my coffee I ask Codex to brief me, the brief consists of first syncing Garmin data and fetching the previous day’s exercises, then analyzing the recent exercise activity and the last night’s recovery, and suggesting the exercise (or rest) for that day. On gym days I usually remote into Codex from the gym and follow its suggested daily program, and ask in the chat if I want something modified, or if I have any questions. E.g. I had a chest-supported dumbbell row scheduled for the day, all the benches were occupied but the machine was free, so I just sent it a picture of the machine asking which weights I should use on it. It looked up the manufacturer website and calculated how the dumbbell weight would translate on that machine.
Here are some examples of my daily chats with it:




Results so far
So far it has been working surprisingly well. I love the flexibility and simplicity of this setup, and I feel like I now have a team of nutritionists and exercise coaches on my side that know where I stand, where I want to get, and that then plan my exercises, my recovery, critique and help me adjust my nutrition and are available 24/7 to answer any questions.
I don’t know if the daily food log is sustainable or if I will eventually get bored of having to take pictures of everything I eat, but I think the exercise part will stick as it requires very little input on my end and provides an obvious benefit of helping me plan the workout and recovery by writing a few messages in the morning.
If you want to set this up for yourself, I think something like creating an empty folder, starting a new project in Codex and starting a chat along these lines might be enough to get you going:
This folder is a personal diet and exercise coaching system that gives Codex an ongoing record of what someone eats, how they train, how they respond, where they are now, and where they want to go. Its goal is to turn scattered personal data into practical daily decisions and gradual plan adjustments, while becoming more useful over time as it observes what works for that individual.
Start by interviewing me. Establish what I want help with, what success means, what information is available, and what kind of ongoing process I can maintain. Then propose the smallest useful setup and tell me what to add to the folder.