Skip to content

scram 1.0.0

Latest

Choose a tag to compare

@pid1 pid1 released this 21 Sep 15:06
· 2 commits to main since this release

First tagged release.

Cloudflare has no hard spending limit. Its budget alerts are informational only and are computed once a day from the previous day's usage, so the email arrives a day after the money is gone.

scram runs as a Worker in your own account, prices what you have actually spent this billing cycle against Cloudflare's published rates every 15 minutes, and when you cross a line you set it deletes routes, clears cron schedules, disables custom domains and turns off the workers.dev subdomain.

  • Reversible. It never deletes a Worker, its code, its bindings, its R2 objects or its D1 rows. What it took away is written down first, and POST /api/restore puts it back.
  • Ships disarmed. ARMED is a secret that starts unset, so it reports what it would have disabled until you believe the number.
  • Excludes itself, because a kill switch that deletes its own route cannot be restored through its own UI.

Setup is ./scripts/setup.sh then npm run deploy; see the README.