SkillHub

oura-health

v1.0.0

What: Query Oura Ring health data — sleep, readiness, activity, heart rate, and trends via the Oura API v2. When: User asks about their sleep, readiness, activity, heart rate, health trends, or wants a daily health briefing. Triggers: oura, sleep score, readiness, activity score, heart rate, HRV, he...

Sourced from ClawHub, Authored by jarvis563

Installation

Please help me install the skill `oura-health` from SkillHub official store. npx skills add jarvis563/oura-health

Oura Ring Skill

Query Oura Ring health data via the Oura API v2. Requires a personal access token at ~/.config/oura/credentials.json.

Setup

// ~/.config/oura/credentials.json
{"personal_access_token": "YOUR_TOKEN", "base_url": "https://api.ouraring.com/v2"}

Get your token at https://cloud.ouraring.com/personal-access-tokens

Commands

All commands use: /opt/homebrew/bin/python3.11 <skill_dir>/scripts/oura_api.py <command> [args]

status

Connection test + personal info (age, email, biological sex).

briefing

Today's combined readiness + sleep + activity summary. Best for morning check-ins.

sleep [YYYY-MM-DD]

Detailed sleep data: duration, stages, efficiency, HRV, temperature. Defaults to last night.

readiness [YYYY-MM-DD]

Readiness score with all contributors (HRV balance, body temp, recovery, sleep, activity). Defaults to today.

activity [YYYY-MM-DD]

Activity details: steps, calories, active time, movement breakdown. Defaults to today.

heartrate [hours]

Recent heart rate statistics (min, max, avg, latest). Default: last 4 hours.

Multi-day trend view of readiness, sleep, and activity scores. Default: 7 days.

Health Alerts

Standalone alert checker for heartbeats/crons:

/opt/homebrew/bin/python3.11 <skill_dir>/scripts/health_alerts.py

Outputs one line per alert. Empty output = nothing notable. Exit code 0 always.

Checks: - Readiness < 70 - Sleep < 6 hours - HRV trending down 3+ days - Resting HR spike > 5bpm above 7-day average - Body temperature deviation > 0.5°C - Recovery index < 30

Output Format

All output is human-readable text with emoji indicators: - 🟢 Good (score ≥ 85) - 🟡 Fair (score 70–84) - 🔴 Needs attention (score < 70)

Error Handling

  • Exit code 0: success
  • Exit code 1: error (message on stderr)
  • Common errors: missing credentials file, invalid token, no data for date