# mailcow-agent Each mailcow service container (postfix, dovecot, …) runs `mailcow-agent` as ENTRYPOINT. It supervises the original service main process and exposes its control commands over a Redis Pub/Sub bus: - `mailcow.control.` — request channel (Backend → Agent) - `mailcow.reply.` — per-request reply channel - `mailcow.events.` — broadcast events - `mailcow.nodes.` (ZSET) + `mailcow.node..` (HASH) — heartbeat registry - `mailcow.stats..` (HASH) — per-node cpu/memory stats Service behaviour is selected via `MAILCOW_AGENT_SERVICE=`. The main process command is configured via `MAILCOW_AGENT_MAIN_CMD` (string, executed via `sh -c` so existing entrypoints/supervisord commands keep working).