Intervals Agent

Intervals Agent

specialist

AI cycling coach powered by intervals.icu

Your personal cycling coach that analyzes your training data from intervals.icu and creates smart, periodized workouts tailored to your current fitness, fatigue, and goals.

Companion app

Intervals Agent intervals.q5m.ai

A dedicated web app that shares memory with this agent.

Skills (7)

Analyze activity

Review a completed ride or workout rep-by-rep, compare a session across its history, or interpret wellness and readiness data (TSB, CTL/ATL, sleep, HRV). Load when the athlete asks how a ride went, to compare two or more sessions, or to read their current fatigue/readiness.

Build athlete profile

Onboard a new athlete: interview them and build their coaching profile from scratch. Load on the first interaction when no /profile exists yet, or when rebuilding the profile.

Fix activity data

Correct a completed activity's recorded sensor data: rescale a stream (power/cadence/HR/altitude/speed) or fill short dropouts. Destructive and irreversible. Load only when the athlete explicitly asks to fix, rescale, or clean up recorded data.

Plan workout

Design, schedule, and post a workout end to end — fetch training, wellness, and calendar context, design the session, verify metrics, preview, and post on approval. Load whenever the athlete asks to plan, create, move, or replace a workout for today or any other day.

Polish activity feed

Polish a freshly landed activity's public title and description for the athlete's activity-feed agent (e.g. Strava), using the same analysis as a workout review. Load after an activity syncs from a head unit/watch and the athlete wants it written up.

Power curves and eftp

Answer questions about best-effort power, HR, or pace curves and eFTP: peak or sustained capability over a date range (e.g. 'best 5-min power this season', 'estimate my eFTP', 'my pace curve'). Load for capability/ceiling questions rather than single-ride review.

Website workout plan

Create a structured workout preview for the Intervals Agent website. Use when a request supplies a website plan_id and asks for a suggestion; gather the normal coaching context, publish exactly one plan artifact, and never schedule it.

Tools (10)

Get current time

Return the current wall-clock time. Use this when reasoning about elapsed time (e.g. current minute of a live match, time until a deadline) or about what day it is — don't guess the time or the date. By default `now_iso` and `local_date` are in the user's own timezone (near midnight the UTC date is a day ahead of the user's local date). Pass `timezone` (an IANA name like 'Europe/Berlin') only to override that, e.g. to read the time in another location.

Get website context

Fetch the normalized athlete status and recent activity context used by the Intervals Agent website. This is a read-only UI bootstrap operation.

Compute workout metrics

Compute TSS, IF, and duration for a workout description using the same deterministic parser used in the preview. Call this after drafting a workout to verify it hits your targets before calling create_calendar_event. If the result is off, revise the workout and recheck — but limit self-correction to 3 attempts; if you can't converge, go with the closest result and note the discrepancy.

Publish workout plan

Publish a validated workout preview shared by q5m chat and the Intervals Agent website. Use this after planning and metrics review. This never schedules the workout.

Get workout plan

Get one shared workout plan by UUID.

List workout plans

List the caller's recent shared workout plans, newest first.

Update workout plan

Update the name, summary, or exact workout text of an unscheduled plan.

Schedule workout plan

Schedule the exact stored workout after explicit user approval. A claimed or uncertain write must be reconciled, never retried automatically. An already-scheduled plan returns its stored result.

Reconcile workout plan

Resolve an uncertain schedule only after inspecting the Intervals.icu calendar. Supply the verified event ID, or confirm_no_event with the exact plan ID after checking that no matching event exists.

Delete workout plan

Delete a workout plan and its linked planned Intervals.icu event.

Chat with Intervals Agent

Open chat