Daybreak — an end-to-end AI harness built for running
A running companion tool I built for myself and have built a complete harness around. Daybreak uses an athlete's Strava data, injury history, and training goals to deliver personalized daily training advice. Onboarding, daily check-ins, plan adjustments for flare-ups and tweaks, and calendar integration all happen in Telegram; a minimalist Next.js app handles allowlist signup, Strava OAuth, and a read-only plan view.
- Onboarding and identity. /signup allowlist gate with one-time link_tokens and a QR deeplink; full Telegram onboarding state machine (steps 0–5 plus plan handoff).
- Daily check-in loop. /checkin wellness battery (readiness, soreness, note) feeds a single-call Claude coaching response; wellness_log.md, checkin_log.md, and agent_runs persisted, with a Sentry fallback.
- Strava and infra. OAuth wired end-to-end via /connect_strava, encrypted token storage, and a health-check ping.
- Going from a personal context system to a full next.js harness took 3-4 days.
- Onboarding + plan generation has been the most challenging part. I've rebuilt it several times, relinquishing more to the LLMs each time in the name of flexibility.
- Repeating pattern: I build something too deterministically, and have to rebuild in a way that gives more freedom to the LLM.















