Busy professionals managing high communication volumes context-switch constantly between Gmail, Google Calendar, their CRM, and messaging apps. Every switch costs time and attention. A task like rescheduling a meeting, notifying the contact, and updating the CRM deal stage requires three separate apps and six or seven manual steps.
AI assistants that connect to these tools exist, but they typically work within a single domain — email assistants don't update CRMs, calendar tools don't send SMS. The multi-step, cross-domain coordination that would actually save time requires a human to stitch together the sequence manually.
The goal was a single interface where a professional could issue a plain-English instruction and have it executed across all connected systems, in the right order, with their own writing style preserved in any outbound communications.
I built a multi-agent system on n8n with a Telegram front end. A Router Agent powered by GPT-4o receives every message, interprets intent, and dispatches to the correct specialist sub-agent — or chains multiple agents sequentially when a task spans more than one domain.
All commands arrive via Telegram. A user ID whitelist is enforced at the entry point — messages from any unrecognised account are silently dropped. This keeps the system single-tenant without building an authentication layer. The Router Agent receives the message text and any attached context.
The GPT-4o Router Agent interprets the incoming instruction and determines which sub-agents to invoke and in what order. Single-domain requests (e.g. 'draft a reply to Sarah's email') route to one agent. Multi-domain requests (e.g. 'reschedule tomorrow's 2PM call with Sarah to Thursday and text her to let her know') produce a sequential agent chain — Calendar first, then CRM lookup, then SMS.
The Email Agent connects to Gmail and handles triage, drafting, labelling, and sending. For drafts, it applies writing style preservation — the agent has been trained on examples of the user's actual emails to match vocabulary, sentence length, sign-off patterns, and tone. Drafts are previewed in Telegram before sending unless the instruction specifies immediate dispatch.
The Calendar Agent reads and writes Google Calendar events, checks availability, handles timezone conversions, and drafts invite descriptions. The CRM Agent connects to HubSpot to update contact records, move deals through pipeline stages, and log activity. Both agents return structured confirmations to the Router before the chain continues.
For multi-step instructions, each agent's output feeds the next. After the Calendar Agent reschedules a meeting and returns the new time, the Messaging Agent uses that confirmed time to compose and dispatch an SMS via Twilio — so the notification reflects the actual booked slot, not the one requested. The final confirmation is returned to Telegram summarising every action taken.