Setup & Installation
Or with the ClawHub CLI, for registry-managed skill folders outside a full OpenClaw workspace:
Version History
Fix security scan added homepage/source provenance, declared env vars, cleaned up activation language
What This Skill Does
Tern is a zero-dependency TypeScript library for verifying webhook signatures across platforms like Stripe, GitHub, and Clerk, supporting HMAC and token-based schemes. Hookflo is a hosted service that receives webhooks, logs events, and sends Slack or email alerts with no code changes required on your end. The two tools work independently or together.
Tern abstracts per-provider HMAC quirks and raw-body requirements into a single API call, replacing manual signature verification code for each platform.
When to use it
- Verifying Stripe payment webhooks before fulfilling orders
- Getting Slack alerts when a GitHub push or pull request event fires
- Blocking replay attacks on webhook endpoints with timestamp validation
- Centralizing webhook event logs across multiple SaaS providers
- Adding signature verification for a custom provider not on the default platform list
Example Workflow
Here's how your AI assistant might use this skill in practice.
User asks: How do I verify Stripe webhooks in Express and get notified on Slack when a payment succeeds?
- 1Install @hookflo/tern and add an Express route with express.raw({ type: 'application/json' }) to preserve the raw request body
- 2Call WebhookVerificationService.verifyWithPlatformConfig(req, 'stripe', process.env.STRIPE_WEBHOOK_SECRET) and return 400 if result.isValid is false
- 3Process result.payload for the verified event, checking event.type for payment_intent.succeeded
- 4Create a Hookflo webhook endpoint in the dashboard, paste the Hookflo URL into Stripe's webhook settings, and configure a Slack notification channel
An Express endpoint that cryptographically verifies Stripe webhooks and triggers Slack alerts via Hookflo when payments succeed
Requirements
Accounts, API keys, or tools you or your AI assistant may need to set up while using this skill.