网淘吧来吧,欢迎您!

Oura Ring Analytics技能使用说明

2026-03-29 新闻来源:网淘吧 围观:25
电脑广告
手机广告

Oura 数据分析

快速开始

# Set Oura API token
export OURA_API_TOKEN="your_personal_access_token"

# Fetch sleep data (last 7 days)
python {baseDir}/scripts/oura_api.py sleep --days 7

# Get readiness summary
python {baseDir}/scripts/oura_api.py readiness --days 7

# Generate weekly report
python {baseDir}/scripts/oura_api.py report --type weekly

何时使用

在以下场景使用此技能:

  • 获取 Oura Ring 指标(睡眠、准备度、活动、HRV)
  • 分析随时间变化的恢复趋势
  • 关联睡眠质量与生产力/事件
  • 为低准备度设置自动警报
  • 生成每日/每周/每月的健康报告

核心工作流

1. 数据获取

export PYTHONPATH="{baseDir}/scripts"
python - <<'PY'
from oura_api import OuraClient

client = OuraClient(token="YOUR_TOKEN")
sleep_data = client.get_sleep(start_date="2026-01-01", end_date="2026-01-16")
readiness_data = client.get_readiness(start_date="2026-01-01", end_date="2026-01-16")
print(len(sleep_data), len(readiness_data))
PY

2. 趋势分析

export PYTHONPATH="{baseDir}/scripts"
python - <<'PY'
from oura_api import OuraClient, OuraAnalyzer

client = OuraClient(token="YOUR_TOKEN")
sleep_data = client.get_sleep(start_date="2026-01-01", end_date="2026-01-16")
readiness_data = client.get_readiness(start_date="2026-01-01", end_date="2026-01-16")

analyzer = OuraAnalyzer(sleep_data, readiness_data)
avg_sleep = analyzer.average_metric(sleep_data, "score")
avg_readiness = analyzer.average_metric(readiness_data, "score")
trend = analyzer.trend(sleep_data, "average_hrv")
print(avg_sleep, avg_readiness, trend)
PY

3. 警报

python {baseDir}/scripts/alerts.py --days 7 --readiness 60 --efficiency 80

环境

必需:

Oura Ring Analytics

  • OURA_API_TOKEN

可选(用于警报/报告/时区/输出):

  • KESSLER_TELEGRAM_BOT_TOKEN(备用TELEGRAM_BOT_TOKEN
  • TELEGRAM_CHAT_ID
  • USER_TIMEZONE
  • OURA_OUTPUT_DIR

脚本

  • scripts/oura_api.py- 包含 OuraAnalyzer 和 OuraReporter 类的 Oura Cloud API 封装器
  • scripts/alerts.py- 基于阈值的通知(命令行界面:python {baseDir}/scripts/alerts.py --days 7 --readiness 60
  • scripts/weekly_report.py- 周报生成器

参考资料

  • references/api.md- Oura Cloud API 文档
  • references/metrics.md- 指标定义和解读

自动化(Cron 作业)

Cron 作业在 OpenClaw 的网关中配置,不在此代码库中。请将这些添加到您的 OpenClaw 设置中:

每日晨间简报(上午 8:00)

openclaw cron add \
  --name "Daily Oura Health Report (Hybrid)" \
  --cron "0 8 * * *" \
  --tz "America/Los_Angeles" \
  --session isolated \
  --wake next-heartbeat \
  --deliver \
  --channel telegram \
  --target "<YOUR_TELEGRAM_CHAT_ID>" \
  --message "Run the daily Oura health report with hybrid format: Execute bash /path/to/your/scripts/daily-oura-report-hybrid.sh"

每周睡眠报告(周日上午 8:00)

openclaw cron add \
  --name "Weekly Oura Sleep Report" \
  --cron "0 8 * * 0" \
  --tz "America/Los_Angeles" \
  --session isolated \
  --wake next-heartbeat \
  --deliver \
  --channel telegram \
  --target "<YOUR_TELEGRAM_CHAT_ID>" \
  --message "Run weekly Oura sleep report: bash /path/to/your/oura-weekly-sleep-alert.sh"

每日 Obsidian 笔记(上午 8:15)

openclaw cron add \
  --name "Daily Obsidian Note" \
  --cron "15 8 * * *" \
  --tz "America/Los_Angeles" \
  --session isolated \
  --wake next-heartbeat \
  --message "Create daily Obsidian note with Oura data. Run: source /path/to/venv/bin/activate && python /path/to/daily-note.py"

注意:/path/to/your/替换为您的实际路径,并将<YOUR_TELEGRAM_CHAT_ID>替换为您的Telegram频道/群组ID。

免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏
文章底部电脑广告
手机广告位-内容正文底部

相关文章

您是本站第325961名访客 今日有216篇新文章/评论