Skip to main content

Omni — One API, Every Channel

Omni is Automagik’s unified messaging platform. It connects WhatsApp, Telegram, Discord, Slack, and other channels into a single API with AI agent routing, event-driven automations, and media processing.

The Problem

Your business communicates on WhatsApp. Your team uses Slack. Your community lives on Discord. Your support runs on Telegram. Each channel has its own API, its own message format, its own quirks. You end up writing the same send-message logic four times, maintaining four webhook handlers, and debugging four different failure modes. Omni collapses all of this into one interface. One CLI. One API. One event stream. Connect an instance, send a message, route to an agent — regardless of channel.

What Omni Does

Multi-Channel Messaging

Send text, media, voice notes, reactions, polls, locations, contacts, and embeds across WhatsApp, Telegram, Discord, and Slack from a single CLI.

AI Agent Routing

Bind AI agents to channels with configurable reply filters. Route messages to the right agent based on chat, user, or instance.

Event-Driven Automations

Trigger workflows on message events, reactions, presence changes, and custom webhook events. Test with dry-runs before going live.

Media Processing

Automatic transcription, image description, and document extraction. Circuit breaker pattern for resilience. Batch processing for bulk operations.

Instance Management

Connect and manage channel instances — WhatsApp via QR/pairing code, Discord via bot token, Telegram via bot API. Monitor health and sync state.

Contact Directory

Unified person directory across all channels. Search contacts, check presence, manage access control with allow/deny lists.

Quick Start

# Install
curl -fsSL https://raw.githubusercontent.com/automagik-dev/omni/main/install.sh | bash

# Connect your first WhatsApp instance
omni instances create --channel whatsapp-baileys --name "My WhatsApp"
omni instances qr <instance-id>  # Scan with your phone

# Send your first message
omni send --to +5511999999999 --text "Hello from Omni!"

# Check events
omni events list --limit 10
See the Quickstart guide for a full walkthrough.

Architecture

Omni is built as a monorepo with modular packages:
ComponentWhat It Does
API ServerREST API for all operations — instances, messages, agents, automations
CLIFull-featured command-line interface (35+ commands)
Channel AdaptersWhatsApp (Baileys), Telegram, Discord, Slack connectors
Media PipelineTranscription, image description, document extraction with circuit breaker
Event SystemNATS-based event streaming with replay and analytics
Agent RouterRoute incoming messages to AI agents with per-chat/per-user overrides

CLI Command Groups

GroupCommandsPurpose
Coresend, chats, messages, tts, mediaSend and receive messages
Agentsagents, providers, routes, keysAI agent management and routing
Managementinstances, automations, access, webhooks, personsChannel and workflow management
Systemconfig, events, batch, prompts, journeyConfiguration, monitoring, diagnostics

Integration with Genie

Omni is Genie’s communication layer. Agents use Omni to send messages to humans on WhatsApp, receive commands, and route conversations to the right handler.
# Genie agent sends a message via Omni
omni send --to <jid> --text "Deploy complete. PR #42 merged." --instance <id>

# Genie config points to Omni
# ~/.genie/config.json → omni.apiUrl, omni.apiKey, omni.defaultInstanceId

Quickstart

From zero to your first message in 5 minutes.

CLI Reference

Full command reference for all 35+ commands.

GitHub

Source code and issues.

Discord

Community and support.