Skip to main content

The short answer

Create a disposable test inbox on the shared commune.email domain, point your webhook at a local tunnel or inspection tool, and run a full send-receive-reply cycle. No custom domain or DNS setup needed. You can have a working test environment in under five minutes.

Test inboxes on commune.email

Every Commune account gets access to the shared commune.email domain. Inboxes on this domain are fully functional — they send, receive, and thread emails the same way custom domain inboxes do. The only difference is the address ends in @commune.email instead of your own domain. Create a test inbox programmatically:
Use a naming convention that makes test inboxes obvious: test-{agent}-{env} or dev-{agent}-{timestamp}. This prevents confusion when you have both test and production inboxes in the same account.
Delete test inboxes when you’re done. They count toward your inbox limit, and leftover test inboxes clutter your dashboard.

Inspecting webhook payloads

Your agent processes inbound email via webhooks. Before wiring up your actual agent logic, you want to see exactly what Commune sends you. Option 1: webhook.site — No setup. Go to webhook.site, copy the URL, set it as your inbox’s webhook endpoint. Every inbound email shows up in the browser with full headers, body, and metadata. Option 2: ngrok — If you want to hit your local server directly, run ngrok http 3000 and use the generated URL as your webhook endpoint. This lets you set breakpoints and inspect payloads in your actual application code.
Send a test email from your personal Gmail to test-support-agent@commune.email. Within seconds, the webhook fires and you can inspect the full payload — thread_id, content, participants, metadata, everything.

End-to-end test pattern

The most important test is the full cycle: send an outbound email, receive the reply webhook, verify the content, and confirm threading works. Here’s a complete test scenario:

CI/CD integration

You can run email tests in your CI pipeline. The key insight: you don’t need to receive real inbound email in CI. Test the outbound path (send + verify message exists) synchronously, and test the inbound path (webhook handling) by posting synthetic payloads to your webhook endpoint.
TypeScript

Checklist before going live

Use a separate API key for testing. This keeps test traffic isolated from production metrics and makes it easy to revoke without affecting live agents.

Webhooks

Full webhook reference including payload schema and signature verification.

Inboxes

Creating, configuring, and managing agent inboxes.

How do I handle email replies?

Webhook setup, thread resolution, and reply patterns for inbound email.

Can I send without a custom domain?

Using the shared commune.email domain for development and early-stage agents.
Last modified on March 19, 2026