GitHub Actions cron, Vercel Cron, Cloudflare Cron Triggers, n8n: when a schedule silently stops firing, no run fails — so no failure alert can fire. This kit is a dead-man's-switch heartbeat Worker you deploy on your own Cloudflare account: jobs ping it, and any job that stops pinging — including one that never ran at all — triggers an alert through your webhook, Telegram, or email. ฿990 once. No monthly bill.
Get the kit — ฿990One zip, zero npm dependencies, zero vendor accounts: a single Cloudflare Worker plus copy-paste heartbeat snippets for the four stacks where silent schedules hurt most.
Error handlers catch jobs that fail. Nothing catches a job that never starts — concurrency skips, deleted triggers, paused projects, drifted schedules. An armed monitor with zero pings flips to never-ran within period + grace.
npx wrangler deploy, done. Heartbeats and alert state live in your KV namespace, pings hit your workers.dev URL. Nothing phones home to us — there is no "us" to phone.
Generic JSON webhook (Slack/Discord formats built in), your own Telegram bot, and email via your own Resend account. Configure any one — or all three. Recovery notices included.
A dependency-free status page shows every monitor's state, last ping, and recent pings — optionally token-protected. Embeddable /badge/<uuid>.svg for READMEs and wikis.
A full GitHub Actions workflow with success and fail heartbeats, Vercel Cron route patterns, Cloudflare Cron Trigger patterns, an n8n recipe, and a generic shell wrapper for crontab.
node worker/selftest.mjs runs 18 logic tests — never-ran, late, missed, failing, recovery, cooldown — before you deploy anything. The build itself runs them against the shipped bytes.
Each platform retries and error-alerts failed runs. None of them alerts you when the schedule itself stops firing — that's the exact gap this kit closes.
Deploy once, add one line per job, arm the monitors. About fifteen minutes end to end.
Create a KV namespace, edit config/monitors.js (one entry per job: name, period, grace), run npx wrangler deploy. Free plan covers it.
curl $PING_URL at the end of each job, curl $PING_URL/fail on failure. Copy-paste snippets for GitHub Actions, Vercel, Cloudflare, n8n, and shell are in the zip.
After each monitor's first real ping, flip enabled:true. From then on, a job that stops pinging alerts you through your own channels — and tells you when it recovers.
It detects, it doesn't explain. The signal is "a heartbeat reached this worker". A never-ran alert tells you the job stopped running; it cannot tell you why — that diagnosis happens on your platform.
Minute-scale by design. Detection time is period + grace plus up to one evaluation tick (the evaluator runs every 5 minutes). This is dead-man's-switch alerting for scheduled jobs, not sub-second uptime monitoring.
Self-hosted means self-responsibility. Everything runs on your Cloudflare account with your secrets. No SLA comes with the kit — and if you monitor critical jobs, deploy it on a separate account from the workloads so the alert path stays independent.
No subscription, no per-monitor fee, no event quota — hosted monitors bill monthly for exactly this.
≈ US$28
Secure checkout via Stripe · card payments · taxes calculated at checkout
Every monitor in the kit watches for one event: a heartbeat. You arm a monitor after its job's first real ping. If an armed monitor has received no heartbeat at all — ever, or since period + grace elapsed — it alerts. That catches jobs whose schedules silently stopped firing, which failure handlers structurally cannot catch because no run ever happened.
Hosted services charge every month, per monitor, and your heartbeat history sits in their database. This kit is a one-time purchase you self-host: your Worker, your KV, your alert channels, unlimited monitors for ฿0/month of tooling. You trade their convenience for ownership — that's the whole deal.
A free Cloudflare account, Node 18+ on your machine for the one-time deploy, and at least one alert channel (a Telegram bot, a webhook URL, or a free Resend account for email). The Workers free plan comfortably covers the every-5-minutes evaluator plus your ping volume.
Within periodMinutes + graceMinutes of the last expected ping, plus up to one 5-minute evaluation tick. A daily 02:00 job with 2 hours of grace is flagged by roughly 04:05 — same morning, not five days later when someone finally notices.
A single-buyer commercial license: one person or one company deploys it for all of their own jobs and internal services, forever. Redistributing or reselling the kit itself is not covered — each buyer needs a license.
If the kit doesn't fit how you work, email [email protected] within 14 days of purchase and we'll refund you in full — the zip is yours to keep or delete. One refund per purchase; we only ask for optional feedback.
฿990 one-time · ≈ US$28 · free updates v1.x · instant download
Get the Cron and Job Alert Kit — ฿990