Skip to content

Health

The Health domain gives your AI assistant a block-first fitness coaching surface. It manages training preferences, goals, structured training blocks, workout resolution, and weekly reviews -- so your assistant can use Fluent to program your training and adapt when life gets in the way. Health is a coach, not a tracker. It works alongside Whoop, OURA, Apple Health, and other wearables rather than competing with them.

What Health Knows

  • Preferences: Training style, experience level, available equipment, schedule constraints
  • Goals: Typed fitness goals with priority and target dates
  • Training blocks: Multi-week structured programs with periodization
  • Today's workout: Resolved from the active block and current week
  • Workout logs: Completed workouts with exercise detail
  • Body metrics: Weight, measurements, and other tracked metrics
  • Review context: Weekly review state for block adjustments

Block-First Model

Health is organized around training blocks -- structured multi-week programs that define your training. This is not a daily workout tracker; it is a coaching surface.

"Build me a 4-week strength block focused on squat and deadlift"
"What's my workout today?"
"I finished today's workout -- log it"
"Let's review this week and adjust next week"

The flow:

  1. Set preferences and goals
  2. Build or revise the active training block with health_upsert_block
  3. Each day, resolve today's workout from the block
  4. Log completed workouts
  5. Weekly review and block adjustment

Key Workflows

Programming

Your assistant builds structured training blocks based on your preferences, goals, equipment, and schedule.

"I want to train 4 days a week with a push/pull/legs split"
"Add a deload week at the end of the block"
"Switch to a hypertrophy focus for the next block"

Daily Execution

Today's workout is derived from the active block and the current position within it. The assistant resolves what you should do today without you having to remember where you are in the program.

"What am I doing today?"
"I need to swap today's session -- I can't make it to the gym"

Lightweight Logging

Mark sessions as done, partial, or skipped. This gives the coach enough to resolve your next session and adjust the block — without requiring you to log every set and rep. Detailed tracking belongs to your wearable or gym app.

"I finished today's session"
"I skipped Wednesday — couldn't make it"
"Record my weight at 180 lbs"

Reviews

Weekly reviews assess progress against the block plan and adjust upcoming weeks.

"Let's review this week"
"How is the block going so far?"
"I need to reduce volume -- I'm not recovering"

Health Tools

ToolPurpose
health_get_preferencesRead training preferences
health_update_preferencesUpdate training preferences
health_get_contextFull health context
health_get_today_contextToday's workout and context
health_get_review_contextWeekly review state
health_get_active_blockCurrent training block
health_get_blockRead a specific block
health_get_block_projectionProject the current week from the block
health_list_goalsList fitness goals
health_upsert_goalCreate or update a goal
health_upsert_blockCreate or update a training block
health_record_block_reviewRecord a weekly review
health_list_workout_logsBrowse workout history
health_log_workoutLog a completed workout
health_list_body_metricsBrowse body metric history
health_log_body_metricRecord a body metric

Health Resources

ResourcePurpose
fluent://health/preferencesTraining preferences
fluent://health/contextFull health context
fluent://health/todayToday's resolved workout
fluent://health/active-blockActive training block
fluent://health/block-projectionCurrent week projection
fluent://health/review-contextReview state
fluent://health/blocks/{block_id}Specific block detail
fluent://health/goalsFitness goals

Onboarding

Health onboarding is lightweight:

  1. Enable the health domain
  2. Set training preferences (experience, equipment, schedule, goals)
  3. Complete onboarding

Once preferences are saved and onboarding is completed, the domain is ready. Your assistant can then build your first training block.

Cross-Domain

Health may reason about rough nutrition constraints, but meal execution stays in the Meals domain. When both domains are active, Meals can consume Health's derived trainingSupportSummary for training-aware planning. Health remains the sole owner of training structure.

Apache 2.0 Licensed (Self-Host) | Fluent Cloud coming soon