Fitbit health and fitness data integration. Fetch steps, heart rate, sleep, activity, calories, and trends from Fitbit Web API. Generate automated health reports and alerts. Requires FITBIT_CLIENT_ID, FITBIT_CLIENT_SECRET, FITBIT_ACCESS_TOKEN, FITBIT_REFRESH_TOKEN.
数据来源:ClawHub。 在 ClawSkills 查看
选择你使用的 Agent
方法一:命令行安装(推荐)
推荐(无需提前安装 clawhub)
npx clawhub@latest --dir ~/.claude/skills install fitbit-analytics或使用 clawhub CLI(需提前安装)
clawhub --dir ~/.claude/skills install fitbit-analytics⚠️ 需要 Node.js 18+,没有 Node?请使用下方方法二直接下载 ZIP。 安装 Node.js →
方法二:手动下载安装(无需 Node)
下载 ZIP,解压后将文件夹放到以下路径,重启 Agent 即可:
安装路径
~/.claude/skills/fitbit-analytics/💡解压后将文件夹放到上方路径,重启 Agent 即可生效
--- name: fitbit-analytics description: Fitbit health and fitness data integration. Fetch steps, heart rate, sleep, activity, calories, and trends from Fitbit Web API. Generate automated health reports and alerts. Requires FITBIT_CLIENT_ID, FITBIT_CLIENT_SECRET, FITBIT_ACCESS_TOKEN, FITBIT_REFRESH_TOKEN. metadata: {"openclaw":{"requires":{"bins":["python3"],"env":["FITBIT_CLIENT_ID","FITBIT_CLIENT_SECRET","FITBIT_ACCESS_TOKEN","FITBIT_REFRESH_TOKEN"]},"homepage":"https://github.com/kesslerio/fitbit-analytics-openclaw-skill"}} ---
# Set Fitbit API credentials
export FITBIT_CLIENT_ID="your_client_id"
export FITBIT_CLIENT_SECRET="your_client_secret"
export FITBIT_ACCESS_TOKEN="your_access_token"
export FITBIT_REFRESH_TOKEN="your_refresh_token"
# Generate morning briefing with Active Zone Minutes
python scripts/fitbit_briefing.py
# Fetch daily steps
python scripts/fitbit_api.py steps --days 7
# Get heart rate data
python scripts/fitbit_api.py heartrate --days 7
# Sleep summary
python scripts/fitbit_api.py sleep --days 7
# Generate weekly health report
python scripts/fitbit_api.py report --type weekly
# Get activity summary
python scripts/fitbit_api.py summary --days 7
Use this skill when:
# Generate morning health briefing (includes Active Zone Minutes)
python scripts/fitbit_briefing.py # Today's briefing
python scripts/fitbit_briefing.py --date 2026-01-20 # Specific date
python scripts/fitbit_briefing.py --format brief # 3-line summary
python scripts/fitbit_briefing.py --format json # JSON output
# Example output includes:
# - Yesterday's activities (logged exercises)
# - Yesterday's Active Zone Minutes (total, Fat Burn, Cardio, Peak)
# - Today's activity summary (steps, calories, floors, distance)
# - Heart rate (resting, average, zones)
# - Sleep (duration, efficiency, awake episodes)
# - Trends vs 7-day average
Example JSON output:
{
"date": "2026-01-21",
"steps_today": 8543,
"calories_today": 2340,
"distance_today": 6.8,
"floors_today": 12,
"active_minutes": 47,
"resting_hr": 58,
"avg_hr": 72,
"sleep_hours": 7.2,
"sleep_efficiency": 89,
"awake_minutes": 12,
"yesterday_activities": [
{"name": "Run", "duration": 35, "calories": 320}
],
"yesterday_azm": {
"activeZoneMinutes": 61,
"fatBurnActiveZoneMinutes": 39,
"cardioActiveZoneMinutes": 22
}
}
Note: Cardio Load is NOT available via Fitbit API - it's a Fitbit Premium feature only visible in the mobile app.
# Available commands:
python scripts/fitbit_api.py steps --days 7
python scripts/fitbit_api.py calories --days 7
python scripts/fitbit_api.py heartrate --days 7
python scripts/fitbit_api.py sleep --days 7
python scripts/fitbit_api.py summary --days 7
python scripts/fitbit_api.py report --type weekly
export PYTHONPATH="{baseDir}/scripts"
python - <<'PY'
from fitbit_api import FitbitClient
client = FitbitClient() # Uses env vars for credentials
# Fetch data (requires start_date and end_date)
steps_data = client.get_steps(start_date="2026-01-01", end_date="2026-01-16")
hr_data = client.get_heartrate(start_date="2026-01-01", end_date="2026-01-16")
sleep_data = client.get_sleep(start_date="2026-01-01", end_date="2026-01-16")
activity_summary = client.get_activity_summary(start_date="2026-01-01", end_date="2026-01-16")
PY
export PYTHONPATH="{baseDir}/scripts"
python - <<'PY'
from fitbit_api import FitbitAnalyzer
analyzer = FitbitAnalyzer(steps_data, hr_data)
summary = analyzer.summary()
print(summary) # Returns: avg_steps, avg_resting_hr, step_trend
PY
python {baseDir}/scripts/alerts.py --days 7 --steps 8000 --sleep 7
scripts/fitbit_api.py - Fitbit Web API wrapper, CLI, and analysisscripts/fitbit_briefing.py - Morning briefing CLI (text/brief/json output)scripts/alerts.py - Threshold-based notifications| Method | Description | |--------|-------------| | get_steps(start, end) | Daily step counts | | get_calories(start, end) | Daily calories burned | | get_distance(start, end) | Daily distance | | get_activity_summary(start, end) | Activity summary | | get_heartrate(start, end) | Heart rate data | | get_sleep(start, end) | Sleep data | | get_sleep_stages(start, end) | Detailed sleep stages | | get_spo2(start, end) | Blood oxygen levels | | get_weight(start, end) | Weight measurements | | get_active_zone_minutes(start, end) | Active Zone Minutes (AZM) breakdown |
references/api.md - Fitbit Web API documentationreferences/metrics.md - Metric definitions and interpretationsFitbit API requires OAuth 2.0 authentication:
Required:
FITBIT_CLIENT_IDFITBIT_CLIENT_SECRETFITBIT_ACCESS_TOKENFITBIT_REFRESH_TOKENCron jobs are configured in OpenClaw's gateway, not in this repo. Add these to your OpenClaw setup:
openclaw cron add \
--name "Morning Fitbit Health Report" \
--cron "0 8 * * *" \
--tz "America/Los_Angeles" \
--session isolated \
--wake next-heartbeat \
--deliver \
--channel telegram \
--target "<YOUR_TELEGRAM_CHAT_ID>" \
--message "python3 /path/to/your/scripts/fitbit_briefing.py --format text"
Note: Replace /path/to/your/ with your actual path and with your Telegram channel/group ID.
安装 Fitbit Analytics 后,可以对 AI 说这些话来触发它
Help me get started with Fitbit Analytics
Explains what Fitbit Analytics does, walks through the setup, and runs a quick demo based on your current project
Use Fitbit Analytics to fitbit health and fitness data integration
Invokes Fitbit Analytics with the right parameters and returns the result directly in the conversation
What can I do with Fitbit Analytics in my data & analytics workflow?
Lists the top use cases for Fitbit Analytics, with example commands for each scenario
将技能文件夹放到 ~/.claude/skills/fitbit-analytics/ 目录(个人级,所有项目可用),或 .claude/skills/fitbit-analytics/(项目级)。重启 AI 客户端后,用 /fitbit-analytics 主动调用,或让 AI 根据上下文自动发现并使用。
Fitbit Analytics 支持 Claude、Cursor、OpenClaw,可与这些 AI 平台无缝集成,扩展其能力。
Fitbit Analytics 可免费安装使用。请查阅仓库了解许可证信息。
Fitbit health and fitness data integration. Fetch steps, heart rate, sleep, activity, calories, and trends from Fitbit Web API. Generate automated health reports and alerts. Requires FITBIT_CLIENT_ID, FITBIT_CLIENT_SECRET, FITBIT_ACCESS_TOKEN, FITBIT_REFRESH_TOKEN.
Fitbit Analytics 属于「Data & Analytics」分类,该分类的技能帮助 AI 智能体在此领域执行专业任务。
Automate my data & analytics tasks using Fitbit Analytics
Identifies repetitive steps in your workflow and sets up Fitbit Analytics to handle them automatically