Hybrid endurance programming
Personalized endurance training that fits the rest of your life
Connect Strava, set your races and training constraints, and get a daily session built around fitness, fatigue, soreness, and the 80/20 endurance model.
Good morning, Alex
FITNESS
62
CTL
FATIGUE
71
ATL
FORM
-9
TSB
PHASE
Build
Training
Soreness
60% recovered
85% recovered
What this trains
Aerobic base and durability from a long Zone 2 ride. Cadence drills keep it efficient without spending this week's hard efforts.• Strict pull-up: 4×5 @ BW — 3-sec down
• Single-arm DB row: 3×10 @ 28kg
• Face pulls: 3×15 @ light cable
Why today
Upper posterior balance. Low CNS cost on a long ride day.Training note
Saturday long ride per weekly structure. TSB at -9 — healthy for build phase. CTL ramp rate 1.4 points/week. 47 days to A race — no peak work yet. Upper accessory after ride keeps lower body fresh.
How it works
01
Connects to Strava
Syncs your activities and calculates fitness, fatigue, and form scores automatically — no manual logging.
02
Prescribes daily training
Workouts adapt to your training load, soreness, available time, and race goals using polarized methodology.
03
Exports to Garmin
Endurance sessions download as .fit files to load onto your Garmin, with targets set from your thresholds.
Agent-ready training layer
Built for the app, your devices, and external agents
The training system is available through a headless API, not just the web interface. External agents can read training context, submit confirmed updates, move planner sessions, log supplementary sessions, and refresh connected data while the app remains the source of truth.
Scoped agent tokens
Grant read or write access by capability, from today's workout to planner moves and confirmed session imports.
Structured training context
Expose readiness, CTL, ATL, TSB, recent activity, soreness, races, availability, and upcoming sessions as JSON.
Confirmed actions only
Ambiguous writes return confirmation_required so an agent has to ask before changing the plan.
Sample output
What gets prescribed
Aerobic threshold + catch drill set
What this trains
High-elbow catch mechanics at race pace. Builds the neuromuscular pattern for early vertical forearm before fatigue accumulates in the second half of a 70.3 swim.
Back squat 5×3 @ 80% + accessory
Warm-up: 3 sets × 5 @ 60%, 70%
Working sets: 5×3 @ 96kg (80% of 120kg 3RM)
Accessory: 3×10 Bulgarian split squat, 3×12 GHD sit-up
Why today
Quads recovered, TSB neutral. Strength day before tomorrow's rest. Loading from tested 3RM — not 1RM.
The methodology
Polarized training, with classes and strength counted
Most plans drift into moderate-intensity work: too hard to recover from, not hard enough to adapt. Here the hard efforts come from one weekly budget, set by your training phase and shared between endurance and hard classes. A tough class spends the same budget as a threshold run, so the rest of your endurance work stays easy, in Zone 1–2.
Every workout is prescribed from your CTL, ATL, TSB, race proximity, and today's soreness — not pulled from a static plan. The programming changes when your data changes.
See it in the demo →Start training from your data
Apply for training access
For athletes who want endurance structure that can accommodate strength work, studio classes, mobility, and recovery. Connect your history, define your goals, and get programming that adjusts as your fitness changes.
Works with
training.cjarhodes.com
Privacy Policy