Synopsis

perch [OPTIONS] COMMAND

Description

perch runs a local IMAP server and authenticated submission endpoint, backed by mxRaven for inbound MX, outbound delivery, SPF/DKIM/DMARC, IP reputation, and spam filtering.

Messages are stored in SQLite or offloaded to S3. The same binary provides administrative commands and a scriptable mail client for IMAP and SMTP.

Notes

  • Run perch help <command> or see the per-command manpages for details.
  • The default configuration path is $XDG_CONFIG_HOME/perch/perch.yaml.
  • perch does not need a public IP, port forwarding, or inbound SMTP ports.

Options

OptionDescription
--help, -hshow help
--version, -vprint the version

Commands

CommandDescription
perch initcreate a local configuration and optional first account
perch setupcreate the mxRaven domain, listeners, keys, and routes
perch serverun IMAP, submission, and the notification consumer
perch accountadd, list, password, disable, or enable accounts
perch aliasmanage address aliases and catch-all domains
perch mailboxlist mailboxes for an account
perch maillist, search, fetch, and send mail
perch doctorcheck the database, TLS, S3, and mxRaven connectivity
perch backupwrite a consistent SQLite backup
perch reconcileforce one S3 bucket reconciliation pass
perch gcremove orphan blobs, old dead letters, and S3 tombstones
perch outboundlist submitted messages and delivery status
perch versionprint the version

Examples

perch setup --workspace my-workspace --domain example.com --hostname localhost

perch account add --email you@example.com

perch serve --config ~/.local/share/perch/perch.yaml

perch mail list --server 127.0.0.1:1143 --plaintext --username you@example.com

See also