whoop
whoop
WHOOP morning check-in:
- fetches your latest WHOOP data (Recovery, Sleep, Cycle/Strain)
- generates a short set of suggestions for the day
Quick Start (User + Bot)
What the user does (one-time)
- Create a WHOOP app and get credentials:
WHOOP_CLIENT_IDWHOOP_CLIENT_SECRET
- In the WHOOP developer dashboard, set Redirect URL:
https://localhost:3000/callback
- Put secrets into
~/.thinkfleet/.env:
WHOOP_CLIENT_ID=...
WHOOP_CLIENT_SECRET=...
- Authorize once (get refresh token):
node /home/node/thinkfleet/skills/whoop/bin/whoop-auth --redirect-uri https://localhost:3000/callback
- Open the printed URL on your phone/browser
- Tap Allow/Authorize
- Copy the
codefrom the callback URL and paste it back
This writes WHOOP_REFRESH_TOKEN=... into ~/.thinkfleet/.env.
What the bot does (each run)
Run:
node /home/node/thinkfleet/skills/whoop/bin/whoop-morning
Then send the output back to the user.
Automation (daily)
Recommended: schedule with Gateway cron (daily morning).
- Command:
node /home/node/thinkfleet/skills/whoop/bin/whoop-morning - Bot should send the output as a message.
Notes
- OAuth endpoints:
- auth:
https://api.prod.whoop.com/oauth/oauth2/auth - token:
https://api.prod.whoop.com/oauth/oauth2/token
- auth:
- Requires
offlinescope to receive refresh tokens. - WHOOP rotates refresh tokens; the newest refresh token must be saved.
More from thinkfleetai/thinkfleet-engine
local-whisper
Local speech-to-text using OpenAI Whisper. Runs fully offline after model download. High quality transcription with multiple model sizes.
148flyio-cli-public
Use the Fly.io flyctl CLI for deploying and operating apps on Fly.io: deploys (local or remote builder), viewing status/logs, SSH/console, secrets/config, scaling, machines, volumes, and Fly Postgres (create/attach/manage databases). Use when asked to deploy to Fly.io, debug fly deploy/build/runtime failures, set up GitHub Actions deploys/previews, or safely manage Fly apps and Postgres.
24kagi-search
Web search using Kagi Search API. Use when you need to search the web for current information, facts, or references. Requires KAGI_API_KEY in the environment.
22feishu-bridge
Connect a Feishu (Lark) bot to ThinkFleet via WebSocket long-connection. No public server, domain, or ngrok required. Use when setting up Feishu/Lark as a messaging channel, troubleshooting the Feishu bridge, or managing the bridge service (start/stop/logs). Covers bot creation on Feishu Open Platform, credential setup, bridge startup, macOS launchd auto-restart, and group chat behavior tuning.
13bambu-local
Control Bambu Lab 3D printers locally via MQTT (no cloud). Supports A1, A1 Mini, P1P, P1S, X1C.
10voice-transcribe
Transcribe audio files using OpenAI's gpt-4o-mini-transcribe model with vocabulary hints and text replacements. Requires uv (https://docs.astral.sh/uv/).
10