SMTP inbound — not yet implemented
The SmtpInboundProvider interface exists in
core/hailhq/core/providers/email/inbound/smtp.py
but is not implemented. It is the cloud-agnostic / OSS-only path.
We defer it to a follow-up milestone.
When it is released, this page will describe:
- the
mailbot/container (aiosmtpd-backed), parallel tovoicebot/ - listen ports + TLS configuration
- the "front me with Maddy or Postfix" production recipe for SPF / DKIM / DMARC verification and flood resistance
- self-host quickstart
Until then, use the SES-backed inbound path documented in AWS SES. If you must avoid AWS, file an issue that tracks your need. Then we can give the SMTP listener priority.
References
- Design spec:
docs/superpowers/specs/2026-06-06-inbound-email-design.md§2 - Provider interface:
core/hailhq/core/providers/email/inbound/base.py - Placeholder stub:
core/hailhq/core/providers/email/inbound/smtp.py
AWS SES (email)
Outbound and inbound email go through Amazon SES (SESv2 API). You need an AWS account and the SES service enabled in one region. You also need IAM-role credentials (recommended for EC2/ECS/EKS deployments) or a long-lived access key.
Operations runbook
This document is the single source of truth for how to develop, deploy, migrate, and release Hail. If you are an AI agent that starts work on this codebase, read this document first together with CLAUDE.md.