True MirrorApple Health × Claude

Your health data,
reflected honestly.

An iOS Shortcut reads your last 30 days of Apple Health data and Claude gives you a direct, no-sugarcoating analysis — what’s working, what needs attention, what changed since yesterday, and three things to do this week. In about ten seconds.

No App StoreNo 2GB exportNo login~10 seconds
How it works

Four taps, then it’s yours

  1. 1Tap the Shortcut. You install it by tapping a link someone sends you. No App Store, no Xcode.
  2. 2Allow Health access. iOS asks once which data it can read. It only reads — it never changes anything.
  3. 3Claude reads 30 days. Your recent steps, sleep, heart rate, HRV and workouts get analysed against published methods.
  4. 4Get your report (~10s). A direct read you can act on. Saved (if you want) so you can watch trends over time.
What you get

A read you can act on

Sample analysisswipe
Today’s read

Moderately recovered but under-slept — keep today easy.

Since your last full day

HRV is down 14 ms since your last full day — worth taking it easy today.

HRV
44 ms
↓14
Resting HR
68 bpm
↑4
Sleep
6.1h
↓1.3
Steps
8,420
↑1,240

What's working

Your aerobic base is holding — VO₂ max of 41 hasn't slipped despite a lighter month.

VO₂ max41 ml/kg/min

Daily movement is solid — 8.4k steps a day without forcing it.

Steps8,420/day

What needs attention

HRV dropped 31% to 44 ms and resting HR is up to 68 — you're recovering worse while training less. That's stress, not fatigue.

HRV44 ms↓14

Three things to do this week

1Fix the 90-minute gap between lights-out and actually asleep.
2Get HRV back above 50 — track it daily.
3Three easy zone-2 walks before any hard session.

In the app this is a card deck — your scores and verdict up front, then you swipe through strengths, watch-outs, and each action one at a time.

Behind the words, four signals — grounded in published methods, not made up:

RecoveryHRV vs your baseline + resting HR + sleep — are you ready to push, or should you back off? (Altini / HRV4Training method)
SleepDuration plus deep/REM/efficiency, weighted like Oura — not just hours in bed.
StrainTraining load from your workouts’ heart rate (Banister TRIMP) — or activity when HR isn’t available.
StressHRV suppression that your training load doesn’t explain — i.e. life stress, not just fatigue.
Why it’s different

Using Shortcuts as the pipeline

Most ways to get AI on your Apple Health data have a catch. The native apps need the App Store and a separate download per person. The DIY route makes you run Apple’s “Export All Health Data” — 30–45 minutes that locks up your phone and spits out a 2GB file most people never touch twice.

iOS Shortcuts already has HealthKit access built in. True Mirror uses it as a data pipeline: read your metrics, send a small summary to a private API, get Claude’s analysis back — no App Store, no Xcode, no 2GB export. The honest trade-off: first-run setup is a handful of one-time iOS permission taps (it only ever reads your data). That friction is exactly why this is a personal tool, not a polished product.

Most health apps cheer you on. True Mirror tells you your sleep’s been slipping for three weeks and your resting heart rate is climbing. A mirror shows what’s actually there — not what you want to see.
Privacy

Only summaries leave your phone

The Shortcut sends computed summaries to get your analysis — never a raw dump of your health history. Saving your reports to track trends is opt-in, and you can turn it off any time. The scoring uses published, citable methods, so you can check the math.

Getting started

How to get it

True Mirror is a personal tool, not an App Store app — by design. There's no one-tap install, but there are two ways in:

Build your own
It’s open source. Deploy the small backend and assemble one iOS Shortcut (~1 hour, once), then it’s yours forever. Full step-by-step in the build guide.
Ask me to set you up
If you’d rather not build it, I hand-provision a copy for friends. Heads-up: first-run involves a few iOS Health permission taps (it only ever reads your data).
Reach out →