TLDR: ScheduleMe is a multi-agent AI calendar assistant that uses a central supervisory agent to coordinate specialized agents for managing Google Calendar events through natural language. Built with LLMs and LangGraph, it offers intuitive scheduling, editing, and deletion, and features a scalable, distributed architecture. Evaluations show high task success rates, though multilingual performance for non-Latin scripts and personalization are areas for future improvement.
Managing our daily schedules can often feel like a juggling act, especially with traditional calendar systems that demand precise, form-based inputs. Imagine a world where you could simply tell your calendar assistant what you need, in your own words, and it handles the rest. This is the vision behind ScheduleMe, a new multi-agent calendar assistant designed to make managing your Google Calendar events as natural as a conversation.
Developed by Oshadha Wijerathne, Amandi Nimasha, Dushan Fernando, Nisansa de Silva, and Srinath Perera, ScheduleMe leverages the power of advanced language models to create a truly intuitive experience. Instead of navigating complex menus, users can now schedule, check, edit, and delete events using everyday language, making personal calendar management significantly more efficient and user-friendly.
How ScheduleMe Works: A Multi-Agent System
At its heart, ScheduleMe operates on a sophisticated multi-agent architecture. Think of it as a team of specialized assistants, all coordinated by a central supervisor. When you make a request, a ‘supervisory chatbot agent’ is the first to hear it. This supervisor understands your intent and then delegates the task to the most appropriate ‘functional agent’. For instance, if you want to add an event, the request goes to the scheduling agent; if you need to change an existing one, the event editing agent takes over.
This modular design, built using frameworks like LangChain and OpenAI language models (specifically GPT-4o mini), allows for remarkable flexibility and reliability. Each specialized agent is equipped with tools that interface directly with the Google Calendar API, enabling them to perform specific actions like creating a new event or querying your availability. The coordination between these agents is managed through a graph-structured mechanism called LangGraph, which ensures a smooth flow of information and task execution, even for complex requests.
Building the System: Technologies and Implementation
The technical foundation of ScheduleMe is robust and modern. The backend is powered by FastAPI, providing the necessary infrastructure for user interactions and agent communication. A persistent, JSON-based state file helps the system remember context across multiple turns of a conversation, ensuring that interactions feel natural and continuous. Secure integration with Google Calendar is handled through OAuth 2.0 authentication, protecting user data while allowing the assistant to manage events.
For handling dates and times, which can be tricky in natural language, ScheduleMe uses libraries like pytz for timezone resolution and dateparser for interpreting various date and time expressions. On the user-facing side, a simple yet effective web-based interface is developed using Streamlit. This interface not only allows users to converse with the assistant but also displays an updated calendar view, providing immediate visual confirmation of any changes made.
Scaling Up: Distributed Architecture for Real-World Use
Recognizing that a real-world calendar assistant needs to serve many users simultaneously, ScheduleMe incorporates advanced scalability features. It employs a distributed supervisor architecture, meaning multiple supervisor instances can operate in parallel. A load balancer intelligently routes user sessions to the least busy supervisor, ensuring smooth performance even under heavy demand. This setup also enhances fault tolerance, as the system can continue functioning even if one supervisor instance encounters an issue.
To maintain consistent context across these distributed supervisors, Redis is used as a centralized store for session data. The entire backend system is designed to be asynchronous, allowing it to handle many conversations concurrently without delays. Furthermore, the system is containerized using Docker Compose and exposed via an Nginx reverse proxy, which handles load balancing and secure communication, making it ready for large-scale deployment.
Performance and User Experience
The effectiveness of ScheduleMe was evaluated through both functional testing and a user study. In zero-shot multilingual tests, the system demonstrated strong performance, achieving 100% accuracy in English and high success rates in other European languages like French (90%) and German (85%). While there was some degradation in non-Latin scripts such as Tamil, Sinhala, and Chinese, the overall results were promising.
A user study involving 20 participants further validated ScheduleMe’s practical applicability. Users reported a high task success rate of 92% and gave positive feedback on usability, trust, and satisfaction. These results highlight the system’s ability to accurately interpret and execute calendar commands, significantly enhancing the user experience.
Also Read:
- Understanding Why AI Agent Systems Fail: A Deep Dive into Root Causes
- SafeEvalAgent: A Dynamic Approach to AI Safety Evaluation
Challenges and Future Directions
Despite its strong performance, the researchers identified several areas for improvement. Challenges include occasional translation-induced errors in multilingual scenarios, difficulties with complex date/time expressions, and confusion when multiple events have similar titles. The system’s reliance on cloud-hosted LLMs and Google Calendar APIs also introduces sensitivities to network latency and service downtime.
Future work aims to address these limitations by enhancing personalization, allowing the system to learn user preferences and proactively suggest events. Improvements in context-aware and multilingual reasoning, along with better disambiguation for similar event titles, are also planned. Furthermore, the team intends to explore collaborative multi-agent capabilities, enhance privacy through encrypted storage or local LLM inference, and further optimize scalability for dynamic, multi-user environments. For a deeper dive into the technical details, you can read the full paper here.


