You shouldn't have to be sitting at your desk to ask your AI assistant a question. Maybe you're at the grocery store and need to check your shopping list. Maybe you're on the couch and want to control a room's lights. Or maybe you're catching up on email and want help drafting a reply.
Meggy makes this possible by letting you interact with the same assistant from WhatsApp, Telegram, Email, or the desktop app. Every channel gets the same capabilities — the same tools, the same memory, the same intelligence. It's one assistant, reachable from wherever you are.
Each platform has a dedicated adapter that normalizes messages into a unified internal envelope:
| Channel | Adapter | Protocol | Status |
|---|---|---|---|
| Desktop | Electron IPC | Direct invoke/send | Production |
| Baileys library | WebSocket to WhatsApp Web | Production | |
| Telegram | Telegraf library | Telegram Bot API | Production |
| IMAP/SMTP | Standard email protocols | Production |
Every adapter implements the same interface: an inbound$ RxJS Observable stream for incoming messages and a reply() method for outbound responses.
The Email adapter connects to your inbox via IMAP and sends replies via SMTP. It ships with presets for Gmail, Outlook, Yahoo, and iCloud — just enter your credentials and Meggy starts monitoring your inbox in real time using IMAP IDLE. Incoming emails are processed through the same orchestration pipeline as any other message, so your assistant can read, summarize, draft, and send emails on your behalf.
Regardless of which channel a message arrives from, it's normalized into a standard envelope containing:
This normalization ensures that the AI processes every message through the same logic, regardless of its origin.
The orchestration engine classifies each incoming message into one of four complexity tiers:
| Tier | Description | Execution |
|---|---|---|
| T1 — Simple | Direct Q&A, factual lookups | Single-pass generation, no tools |
| T2 — Standard | Research tasks, analysis requests | Multi-step with tool calls |
| T3 — Complex | Multi-part tasks requiring planning | DAG decomposition with parallel branches |
| T4 — Autonomous | Long-running agent tasks | Full agent delegation with scheduling |
Classification happens automatically based on message content analysis, and it determines how much orchestration infrastructure is activated.
For T3 and T4 tasks, the orchestration engine decomposes the request into a directed acyclic graph (DAG) of sub-tasks:
When the AI needs to ask you a clarifying question, it routes through the appropriate channel:
Questions are persisted in SQLite, so they survive app restarts and can be answered asynchronously — ask from your phone now, answer from your laptop later.