Features
Command Line Interface
Send mail, manage scheduled sends, and receive webhooks from your terminal, or hand it to a coding agent with the built-in skill.
Your terminal, both transports
The mailkube CLI is a single binary that sends email, manages scheduled sends, and receives webhook events on your machine. It talks to the same REST API and the same submission host your application does, over the API or over SMTP, so a message you compose at a prompt behaves the same way it does in your code.
Send a message
mailkube emails send \
--from noreply@yourdomain.com \
--to user@example.com \
--subject "Your order has shipped" \
--html "<h1>On its way!</h1><p>Track your order at...</p>" \
--dry-run
Drop --dry-run and it sends for real. Add --transport smtp to submit the same message over SMTP instead of the API, no other flags to change. For anything beyond a few flags, generate a skeleton, fill it in, and send it as JSON:
mailkube emails send --generate-skeleton > mail.json
mailkube emails send --json @mail.json --dry-run
What the CLI gives you
- One command, two transports.
--transport apior--transport smtpon the sameemails send, so switching how a message goes out is a flag, not a different tool. - Webhooks without deploying anything.
mailkube webhooks listenreceives real events on your machine while you build the handler, and--exit-after/--exit-timeoutturn it into a check a CI job can run. - An agent skill, built in.
mailkube skill installwrites the CLI’s own rules where a coding assistant will read them: exit codes to branch on,--dry-runbefore every real send, and which commands don’t exist on purpose. - Scriptable output. Human-readable on a terminal, JSON everywhere else, with no flag to remember, and exit codes that stay stable within a major version.
What’s next
- Read the CLI docs for install options and the full command reference
- Set up the agent skill so a coding assistant drives the CLI correctly
- Follow Getting started to send your first email in minutes