Skill
whoop
Printing Press CLI for Whoop.
When to use whoop
Choose if
You're building a health-coach or training-load agent that needs read access to a user's Whoop data — sleep collections, workout collections, recovery scores, physiological cycles, body measurements — surfaced through typed exit codes the agent can branch on. Beats raw Whoop REST API integration because OAuth wiring, pagination, and rate-limit detection are pre-built.
Avoid if
The user doesn't own a Whoop or won't grant OAuth consent — there's no free public dataset behind this. Also avoid when the agent needs partner endpoints in production (those are non-production-only per the README) or when credential security matters more than convenience, since the README provides no guidance beyond storing tokens in environment variables.
Risk Flags
- MEDIUM auth Requires Whoop OAuth credentials (OAuth 2.0 client + redirect URI). README notes OAuth redirect URI misconfiguration prevents the authentication flow from completing — agents without a properly registered client get blocked at first call. No local credential storage security guidance is provided beyond basic environment variable usage.
- MEDIUM rate_limit Exit code 7 surfaces rate-limited conditions, but the README discloses no concrete thresholds. Agents on heavy polling workloads must implement their own backoff strategy and watch for the 7 exit code.
- LOW scope Partner endpoints (test data generation, diagnostic reporting) are only available in non-production environments. Production Whoop tenants can't use them — agents should not assume partner endpoints work everywhere.
Cost
Type: Freemium · Free tier: The CLI binary is free to install. All API calls bill against the user's Whoop OAuth credentials — a paid Whoop membership and an OAuth client registered with Whoop are required before any endpoint works.
Hidden costs
- Whoop hardware (band/wearable) and an active Whoop subscription are prerequisites. The CLI is a free MIT-licensed wrapper but the underlying Whoop account/subscription is not free.
Install
Default
npx -y @mvanhorn/printing-press install whoop
# Set Whoop OAuth credentials before any endpoint call:
export WHOOP_CLIENT_ID=<your-client-id>
export WHOOP_CLIENT_SECRET=<your-client-secret>
export WHOOP_REDIRECT_URI=<your-redirect-uri>
Estimated time to first success: ~15 min
Hermes
hermes skills install mvanhorn/printing-press-library/cli-skills/pp-whoop --force
Then set WHOOP_CLIENT_ID, WHOOP_CLIENT_SECRET, and WHOOP_REDIRECT_URI in your shell or persisted config.
Dependencies
Minimum runtime: Node.js 18+ (or pre-built binary for macOS/Unix/Windows)
Distribution
- Repository
- https://github.com/mvanhorn/printing-press-library
- License
- MIT