whoop

Connect to the WHOOP Developer Platform via official OAuth (authorization code flow), store and refresh tokens, and fetch WHOOP v2 data (recovery, sleep, cycle/strain, workout, profile, body measurements). Use when a user asks to connect/authorize WHOOP, pull WHOOP metrics, summarize today/yesterday, generate daily/weekly WHOOP reports, or send WHOOP updates to any OpenClaw chat channel (TUI/webchat/Slack/Discord/WhatsApp/Telegram/etc.).

Safety Notice

This listing is from the official public ClawHub registry. Review SKILL.md and referenced scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "whoop" with this command: npx skills add gavinchengcool/openclaw-slug

WHOOP (official API)

Keep this skill WHOOP-only (data source). Do not hardcode any destination channel. Generate a clean text/markdown message and either reply in the current chat or use OpenClaw’s message tool to send it to a chosen target.

Configuration (required)

Provide these via environment variables (preferred) or direct CLI args to scripts:

  • WHOOP_CLIENT_ID
  • WHOOP_CLIENT_SECRET
  • WHOOP_REDIRECT_URI (must exactly match the value in the WHOOP developer dashboard)

Optional:

  • WHOOP_TOKEN_PATH (default: ~/.config/openclaw/whoop/token.json)
  • WHOOP_TZ (default: Asia/Shanghai)

Workflow 1 — Connect WHOOP (OAuth login)

  1. Run:
python3 scripts/whoop_oauth_login.py
  1. The script prints an authorization URL. Open it, log in, and approve.

  2. After redirect, either:

  • paste the full redirect URL into the prompt (recommended), or
  • paste the code.
  1. The script stores tokens at WHOOP_TOKEN_PATH.

If you need to revoke later, use delete /v2/user/access (see references/whoop_api.md).

Workflow 2 — Fetch metrics (today / yesterday)

Fetch raw WHOOP API objects:

python3 scripts/whoop_fetch.py --date today --out /tmp/whoop_raw_today.json
python3 scripts/whoop_fetch.py --date yesterday --out /tmp/whoop_raw_yday.json

Tip: `whoop_fetch.py` uses WHOOP’s `start`/`end` query params + `nextToken` pagination. Use `--tz` to control which local day is fetched (default from `WHOOP_TZ`).

Normalize into a stable schema:

python3 scripts/whoop_normalize.py /tmp/whoop_raw_today.json --out /tmp/whoop_today.json

Render a message for humans:

python3 scripts/whoop_render.py /tmp/whoop_today.json --format markdown --channel generic

Channel formatting presets:
- `--channel discord` (uses **bold**)
- `--channel slack` / `--channel whatsapp` (uses *bold*, avoids fancy markup)
- `--channel telegram` (plain text)

Then either:

  • reply with the rendered text in the current chat, or
  • send it to another channel via OpenClaw message(action=send, ...).

Workflow 3 — Daily/weekly push (cron)

If the user wants scheduled push messages, create an OpenClaw cron job that runs an isolated agent turn which:

  • calls scripts/whoop_fetch.py + scripts/whoop_normalize.py + scripts/whoop_render.py
  • sends the rendered message to the desired destination

Keep the cron job channel-agnostic: the destination should be a parameter in the cron payload text.

Notes on API details

  • For scopes, endpoints, and pagination/rate-limits, read: references/whoop_api.md.
  • For the normalized JSON schema contract, read: references/output_schemas.md.
  • If OAuth fails (redirect mismatch, invalid_scope, 401/429), read: references/troubleshooting.md.

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Coding

X Posting — Automated Twitter/X Agent

Automate posting, replying, searching, and timeline reading on X (Twitter) using the bird CLI with configured Chrome profile and content strategy.

Registry SourceRecently Updated
Coding

Clio

Clio API integration with managed OAuth. This is a write-capable integration — it can read, create, update, and delete legal practice data including matters,...

Registry SourceRecently Updated
Coding

Gcalcli Calendar 3.0.0

Google Calendar via gcalcli: today-only agenda by default, bounded meaning-first lookup via agenda scans, and fast create/delete with verification--optimized...

Registry SourceRecently Updated
Coding

Ops Deck Lite

Lightweight agent productivity toolkit: semantic code search with embeddings and a categorized prompt library. Two services, ~200MB RAM, zero cloud dependenc...

Registry SourceRecently Updated