The idea was simple. I spend most of my day on a screen. Sometimes my PC. Sometimes my laptop. Sometimes just my phone. I needed a tool I could access from anywhere, not locked to one device.

So in November last year, I built one.

Came back from a family trip. Looked at the photos. Same conclusion in every shot. Then a routine cholesterol test came back high. That was enough.

I'd been on the same loop for years. Lose weight in three months. Give it back over the next nine. Calorie apps. New gym schedules. Same outcome.

This time, I tried something different. I built a Custom GPT in ChatGPT and gave it a tight system prompt. Be my structured health performance agent. Track food, hydration, training, sleep, and weight. Hold me accountable for what I set the day before.

It's the second project I've documented in this newsletter. If you're new and want the first one (the personal CFO that audits my credit cards monthly), it's here.

This one runs my food, my Whoop data, and my weight as a single accountability loop.

The daily ritual

Roughly 4 minutes a day, spread across the day:

Morning. First thing. Whoop screenshot. Sleep score, recovery, HRV. Upload it. The agent now knows how my body performed overnight before I tell it anything.

Then I log my first intake. Usually, a one-litre bottle of water.

Breakfast. If I'm home eating with my wife around 10 or 10:30, I log everything. Two eggs, sourdough, black coffee. Whatever it is.

Through the day. I log everything else as it happens. A bite of an apple. A piece of orange. A square of dark chocolate. A bite of coconut. The small stuff people don't bother tracking is exactly what adds up by 6 pm.

Lunch decisions. If I'm home, I log it: "homemade chicken and rice, this much." If I'm going out, I'll send a photo of the menu or the meal itself. The agent pulls reviews on the place, scans what's listed, and gives me a real call. "This restaurant is reasonable for your targets, lean into the grilled options." Or "This place will blow your day, pick somewhere else."

Evening close. Around 8 pm I tell it to close the day. It scores everything. Flags if I under-ate. Flags if the protein was light. Compared to yesterday.

Late strain. If my Whoop strain is above 10 (long workday, gym, padel, a walk-heavy day), I'll send a late-night Whoop screenshot. Strain, calories burned, recovery prediction. The agent factors it into tomorrow's targets.

If strain is normal — six, seven, no workout — I skip it. No point.

Weekly weight. Once a week. Not daily. The noise was messing with my head.

That's the whole loop.

What changed

90+ kg to 80 kg. Six months.

The kg drop isn't the remarkable part. People do that on apps every day. The remarkable part for me: I've held it. I'm still inside my target band six months in. That's never happened before. The 3-on, 9-off cycle I'd been stuck in for years finally broke.

A few things the agent caught that an app wouldn't have:

  • Late heavy meals tanking my next-day recovery. Whoop showed me HRV dips for weeks. The agent connected the pattern in week 2: "Recovery is consistently low the morning after meals over 800 cal past 9 pm." I never would have spotted that on my own.

  • Under-eating disguised as discipline. I had a stretch where I was hitting 1,400 calories on rest days and feeling proud about it. The agent flagged it as a problem, not a win. Said it would tank training and protein retention. It was right.

  • Restaurant decisions before they happened. This is where it actually changes outcomes. Asking before you order is different from logging after you eat. The agent intercepts the bad call.

The Whoop part

I've been on Whoop for years. I trust it. The hardware-software loop on sleep alone changed how I think about recovery. But Whoop doesn't know what I ate.

Pairing Whoop data with a food-tracking agent is the move I wish I'd made years earlier. Whoop tells me how my body performed. The agent tells me why. The loop closes.

Any wearable that exports daily metrics works for this — Apple Watch, Garmin, Oura. Whoop is just my preference.

What it cost vs. what it replaced

Marginal cost: zero. The agent runs inside ChatGPT. I'm already paying for ChatGPT Plus.

What I cancelled: my MyFitnessPal subscription. About $80 a year. Honestly, the agent is more accurate, too. MyFitnessPal makes you scan barcodes. The agent just understands "two eggs, sourdough, black coffee" and gets it right.

The other thing I didn't expect: eating well isn't more expensive. I used to assume it was. After six months of actually tracking food spend alongside food intake, my dining and grocery numbers went down slightly. Cleaner choices are usually simpler choices. Simpler is cheaper.

The exact prompt

Here it is. Adapt the calorie band and protein targets to your own body. If you don't fast during Ramadan, delete that section. The structure is the part that matters.

MASTER PROMPT — HEALTH PERFORMANCE AGENT

You are my structured health performance agent. Your job: track food, 
hydration, training, sleep, and weight with precision and discipline. 
Hold me accountable to what I set the day before.

🎯 TARGETS

- Maintenance band: [INSERT YOUR WEIGHT BAND] kg
- Mild recomposition: maintain muscle, reduce fat
- LDL improvement
- Stable HRV
- Performance consistency

📊 DAILY OUTPUT FORMAT (MANDATORY)

Always respond in this format:
🍽️ Meals: ⭐️⭐️⭐️⭐️ (X/10)
💧 Hydration: X.XL
🏋️ Workout: ⭐️⭐️⭐️⭐️ (if applicable)
🧬 Macros: X% C / X% P / X% F
🔥 Calories: ~X,XXX kcal
🥩 Protein: XXXg

Keep it compact. No re-explaining rules.

🌅 STANDARD PHASE TARGETS

- Calories: 2,000–2,300 (adjust on training days)
- Protein: 150g minimum
- Fat: 25–30%
- Carbs: moderate
- LDL conscious

Breakfast Rule: Protein first. No fruit-first.

Training assumed: 2–3 sessions per week. Optional light strength.

Scoring:
9–10 → Protein 150g+, calories in band, no late stacking
7–8 → Minor carb drift
5–6 → Protein under 120g
<5 → Random eating

🕌 RAMADAN PHASE (AUTO-ACTIVATE WHEN I SAY)

Structure: No suhoor most days. Eating window: Iftar → Sleep.

Targets:
- Calories: 1,900–2,200 (2,200–2,400 on training nights)
- Protein: 150g minimum
- Hydration: 3L+
- No fried stacking

Iftar sequence:
- 2–3 dates
- 5–10 min pause
- 60–80g protein first
- Controlled carbs
- Small fruit
- Protein top-up before sleep if needed

Ramadan Scoring:
9–10 → Protein hit + calories stable + no fried stacking
7–8 → Slight under-protein or mild carb drift
5–6 → Under-eating or fried stacking
<5 → Poor control

🔁 OPERATING RULES

- Use locked food standards I provide
- Flag under-protein days
- Flag repeated under-eating
- Watch sleep impact if late heavy eating
- Prevent unnecessary scale reactions
- Prioritize LDL-friendly choices
- Adjust calorie band on training nights automatically

🚀 INPUTS I WILL PROVIDE

- Morning Whoop screenshot (sleep, recovery, HRV)
- Food logs through the day (text, photos, voice notes)
- Restaurant questions before ordering
- "Close the day" command in evening
- Weekly weight
- Occasional late-night Whoop strain screenshot

Default behavior: track silently, flag only anomalies. Provide deeper 
analysis when asked, not by default.

END OF MASTER PROMPT

Three things to know if you build your own

  1. Don't try to log perfectly. I spent two weeks weighing everything, and it killed adherence. The agent works fine on rough estimates. "Big bowl of pasta, restaurant portion" gets you 90% of the calorie accuracy of a kitchen scale and 100% of the consistency.

  2. The Whoop pairing is the multiplier. Without a wearable feeding it data, the agent is just a fancier MyFitnessPal. With one, you're closing the loop. What you ate. How did you sleep? How are you recovering? What to do tomorrow.

  3. Late heavy meals are a tax you don't see immediately. Biggest non-obvious finding. Eat well during the day, undo most of it by eating heavily after 9 pm. Took me months to actually change the behaviour. The data was there from week 2.

What I'm building next

  • A weekly LDL projection based on dietary fat composition

  • A "mood + sleep + food" cross-reference to spot which foods specifically tank my recovery

  • Direct integration with my training program so it adjusts daily targets based on tomorrow's session

I'll write each up as I build them.

Coming next

Next issue: the AI project I use to triage every pitch deck that lands in my inbox. I see a lot of decks. I built one called Kashtag to read them so I don't have to.

Subscribe if you haven't. One issue a week. No fluff.

Kashed In

Keep reading