← Back to Directory
🍳
Health + Productivity Correlator
Correlate sleep, exercise, and health data with your productivity metrics. Discover what makes you perform best.
🤖 0 ↑ 0 ↓ | 👤 0 ↑ 0 ↓
advanced⏱ 20 min setup🔄 11 swappable alternatives
🧂 Ingredients
🔌 APIs
Sleep, steps, heart rate datarequired
sleep_steps_heart_rate_data
🔄 Alternatives:
Strava — Better for running/cyclingGarmin — Premium hardware + dataApple Health — iOS ecosystem integration
work_session_and_productivity_data
🔄 Alternatives:
Clockify — Free unlimited trackingHarvest — Better invoicing integrationWakatime — Automatic coding time tracking
Code commits and PR datarequired
code_commits_and_pr_data
🔄 Alternatives:
Gitlab — Built-in CI/CD, self-hostableBitbucket — Atlassian ecosystem integration
analyze_correlations_and_generate_insights
🔄 Alternatives:
Anthropic — Better at analysis and reasoningGemini — Free tier, multimodalMistral — Open-weight, EU-hosted
📋 Step-by-Step Build Guide
STEP 1
Pull last night's sleep data from Fitbit (duration, quality, stages)
Pull last night's sleep data from Fitbit (duration, quality, stages)
Parse the input data and extract the specified fields. Processing steps: 1. Parse the raw input (JSON response, transcript text, HTML content) 2. Identify and extract each required field 3. Normalize data formats: dates to ISO 8601, amounts to numbers, text trimmed 4. Validate extracted data — flag missing or malformed fields 5. Structure the output as a clean JSON object For text extraction (transcripts, articles): - Use pattern matching for structured data (dates, amounts, URLs) - Use semantic understanding for unstructured data (key decisions, action items, sentiment) Return both the extracted data and a confidence indicator for each field.
STEP 2
Pull today's productivity data (Toggl time, GitHub commits)
Pull today's productivity data (Toggl time, GitHub commits)
Parse the input data and extract the specified fields. Processing steps: 1. Parse the raw input (JSON response, transcript text, HTML content) 2. Identify and extract each required field 3. Normalize data formats: dates to ISO 8601, amounts to numbers, text trimmed 4. Validate extracted data — flag missing or malformed fields 5. Structure the output as a clean JSON object For text extraction (transcripts, articles): - Use pattern matching for structured data (dates, amounts, URLs) - Use semantic understanding for unstructured data (key decisions, action items, sentiment) Return both the extracted data and a confidence indicator for each field.
STEP 3
Pull exercise data (steps, workouts, heart rate)
Pull exercise data (steps, workouts, heart rate)
Parse the input data and extract the specified fields. Processing steps: 1. Parse the raw input (JSON response, transcript text, HTML content) 2. Identify and extract each required field 3. Normalize data formats: dates to ISO 8601, amounts to numbers, text trimmed 4. Validate extracted data — flag missing or malformed fields 5. Structure the output as a clean JSON object For text extraction (transcripts, articles): - Use pattern matching for structured data (dates, amounts, URLs) - Use semantic understanding for unstructured data (key decisions, action items, sentiment) Return both the extracted data and a confidence indicator for each field.
STEP 4
Store daily data points in correlation-data.json
Store daily data points in correlation-data.json
Persist the data to the configured storage. Data structure: - Include timestamp (ISO 8601) with every record - Use consistent field names across entries - Store raw values (not formatted) for future analysis - Add a source/origin field for audit trail Storage operation: 1. Validate the data before writing 2. Check for duplicates (by timestamp + unique key) 3. Append to existing records — never overwrite 4. Verify the write succeeded 5. Return the stored record ID/reference
STEP 5
Weekly: analyze correlations between health and productivity
Weekly: analyze correlations between health and productivity
Weekly: analyze correlations between health and productivity Steps: 1. Validate all required inputs are available 2. Execute the operation described above 3. Verify the result meets expected output format 4. Handle errors gracefully — retry transient failures, log and alert on persistent ones 5. Return structured output with status and any relevant data If any required data is missing, request it from the user before proceeding.
STEP 6
Generate insights: what health factors predict best work days
Generate insights: what health factors predict best work days
Generate insights: what health factors predict best work days Steps: 1. Validate all required inputs are available 2. Execute the operation described above 3. Verify the result meets expected output format 4. Handle errors gracefully — retry transient failures, log and alert on persistent ones 5. Return structured output with status and any relevant data If any required data is missing, request it from the user before proceeding.
STEP 7
Track and refine insights over time
Track and refine insights over time
Track and refine insights over time Steps: 1. Validate all required inputs are available 2. Execute the operation described above 3. Verify the result meets expected output format 4. Handle errors gracefully — retry transient failures, log and alert on persistent ones 5. Return structured output with status and any relevant data If any required data is missing, request it from the user before proceeding.
🤖 Example Agent Prompt
Parse the input data and extract the specified fields. Processing steps: 1. Parse the raw input (JSON response, transcript text, HTML content) 2. Identify and extract each required field 3. Normalize data formats: dates to ISO 8601, amounts to numbers, text trimmed 4. Validate extracted data — flag missing or malformed fields 5. Structure the output as a clean JSON object For text extraction (transcripts, articles): - Use pattern matching for structured data (dates, amounts, URLs) - Use semantic understanding for unstructured data (key decisions, action items, sentiment) Return both the extracted data and a confidence indicator for each field.
Copy this prompt into your agent to get started.