Show HN: Give your agent its own temp mail service Developer shbernal released buzon, an open-source CLI for self-hosted cloudflare_temp_email instances that creates tiered temporary addresses, waits for verification codes or magic links, and keeps a local registry mapping each address to its site and account. The tool offers three address tiers — `ste` for a single code, `mte` for a few weeks, and `lte` for a real account — with the instance auto-deleting expired short-lived addresses, and it ships an agent skill installable via `npx skills add shbernal/buzon` that teaches an AI agent which tier to pick and how to retrieve a code. buzon installs with `bun add -g @shbernal/buzon` or as a standalone binary for linux-x64, linux-arm64, darwin-x64 and darwin-arm64, reads passwords from `BUZON_SITE_PASSWORD` and `BUZON_ADMIN_PASSWORD` or the system keyring, and supports `--json` on every command. buzon is a CLI for a self-hosted cloudflare temp email https://github.com/dreamhunter2333/cloudflare temp email instance, a mail server that runs on a Cloudflare Worker with D1. It creates addresses on your domain, waits for the verification code or magic link, and keeps a local record of which address belongs to which account. - Three tiers in the address name: ste for one code, mte for a few weeks, lte for a real account. The instance deletes expired ones by itself. - wait --code and wait --link print just the code or the link, ready for a script or an agent. - A local registry of every address with its site and note, so "which address did I use for GitHub?" has an answer. - A first install in one command, then deploys and upgrades of the upstream release, with every database patch shown and confirmed. - An agent skill that tells an AI agent when to pick each tier and how to get a code. Public temp-mail services are blocked by most sign-up forms, and their inboxes are readable by anyone who guesses the name. A catch-all on your own domain avoids both, but turns into a pile of addresses nobody remembers. buzon puts a lifetime on each address, cleans up the short ones, and records the long ones. With Bun https://bun.sh : bun add -g @shbernal/buzon Or as a standalone binary, with no Bun needed, for linux-x64 , linux-arm64 , darwin-x64 or darwin-arm64 from the latest release https://github.com/shbernal/buzon/releases/latest : curl -fsSL https://github.com/shbernal/buzon/releases/latest/download/buzon-linux-x64.tar.gz | tar -xz -C ~/.local/bin buzon reads its passwords from BUZON SITE PASSWORD and BUZON ADMIN PASSWORD , or else from the keyring: the Secret Service through secret-tool on Linux, the Keychain on macOS. No instance yet? docs/deploying.md https://github.com/shbernal/buzon/blob/main/docs/deploying.md goes from a domain on Cloudflare to a running one, mostly through buzon init --deploy . 1. Store the instance's site password in the keyring, on Linux: secret-tool store --label="buzon site-password" service buzon key site-password On macOS: security add-generic-password -s buzon -a site-password -w Elsewhere, export BUZON SITE PASSWORD instead. 2. Point buzon at the instance. It checks that the instance answers, serves the domain and accepts the password before writing anything: buzon init --url https://mail.example.com --domain example.com 3. Create a one-shot address and use it on a sign-up form: buzon new ste 4. Wait for the code, then delete the address: buzon wait ste-2610-9qa --code --since 10m buzon delete ste-2610-9qa For an account you will come back to, keep the address and say what it is for: buzon new lte --site github --note "GitHub account for side projects" | Command | Does | |---|---| | new