Paste a slack message JSON payload and get a Valibot v.object schema you can run inside your handler. Smaller bundle than Zod, same boundary guarantee — useful for Cloudflare Workers, Vercel Edge, and any runtime where bundle size matters.
Slack's Events API is loosely versioned: new fields appear without an envelope bump and Block Kit nesting is recursive, so a parse at the /events handler turns silent shape drift into a single named error instead of an undefined access deep in the block walker.
If your Slack bot's /events handler is on Cloudflare Workers or Vercel Edge (cheap to run, fast cold-starts), Valibot is the right pick — the schema for a typical event_callback ships at ~2 KB minzipped instead of Zod's ~14 KB minimum. The output is a copy-paste-runnable v.object using the canonical namespace import (import * as v from "valibot"); only the primitives your shape actually uses (v.string, v.number, v.array, v.union, v.optional) get pulled in.