Chisle
The coding-agent plugin that bills 52% of a bare model across 20 live tasks. Terse persona + tool-output compressor + context diet.
Receive email in your tests with one API call. Free disposable inbox, no signup, no SMTP setup. Read verification emails and OTP codes in CI.
Developer toolsTypeScriptGitHub @flovoice53-techOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Disposable email addresses via one API call — no signup. Live at receivemail.dev.
Translation pending
Loading the full README.
Read the full README ↗A disposable, real-receiving email address via one API call. No signup, no SMTP setup, no account. Built for testing verification/OTP emails, signup flows, and anywhere a QA suite would otherwise need to burn a real inbox.
Live at receivemail.dev.
# create a mailbox (default: expires in 15 min)
curl -X POST https://receivemail.dev/mailboxes
# => {"address":"[email protected]","expiresAt":"...","secret":"..."}
# trigger your own app's email to that address, then poll:
curl https://receivemail.dev/mailboxes/[email protected]/messages \
-H "Authorization: Bearer <secret from above>"
# => {"address":"...","messages":[{"from_address":"...","subject":"...","body_text":"..."}]}
The secret returned at creation is the only credential — hold onto it, there's no account/login. Any address at @receivemail.dev accepts mail even if never explicitly reserved (same as any disposable-inbox provider), but only a reserved address has a secret to read it back with.
| Endpoint | Description |
|---|---|
POST /mailboxes | Create a new address. Optional {"ttlMinutes": 1-60} body, default 15. Public, no token required. |
GET /mailboxes/:address | Metadata (created/expiry). Requires the mailbox's own secret as a Bearer token. |
GET /mailboxes/:address/messages | Last 50 messages, newest first. Same secret. |
GET /mailboxes/:address/wait?timeout=25&since=<ISO> | Long-poll: returns the newest message newer than since as soon as one arrives, or {"timed_out":true} after timeout seconds (max 25). Same secret. |
Free to use, no API key needed to create a mailbox.
Fully serverless, no shared infrastructure with anything else:
receivemail.dev zone receives the actual mail.src/index.ts) — an email() handler parses and stores incoming mail via postal-mime; a fetch() handler serves the REST API and the landing page (src/landing.ts); a scheduled() handler runs a daily cleanup of expired mailboxes/old mail/rate-limit buckets.schema.sql, schema_v2.sql, schema_v3.sql) — emails, mailboxes (with a per-mailbox secret for capability-style read access), rate_limits.npm install
npx wrangler dev # local dev server
npm run deploy # wrangler deploy
Requires a Cloudflare account with the receivemail.dev zone, Email Routing configured, and a D1 database bound as DB in wrangler.toml.
sms-florin — same idea, for SMS/OTP verification codes instead of email (rents a real UK phone number).