A powerful calendar management assistant built using Agno framework that helps users schedule, manage, and organize their appointments using Cal.com integration.
- Find available time slots
- Create new bookings
- Manage existing bookings
- Reschedule appointments
- Cancel bookings
- Automatic timezone handling
- Clone the repository
git clone https://github.com/Arindam200/awesome-ai-apps.git
cd awesome-ai-apps/simple_ai_agents/cal_scheduler_agent- Install the required dependencies:
# Using pip
pip install -r requirements.txt
# Or using uv (recommended)
uv syncCreate a .env file in the project root with the following variables:
CALCOM_API_KEY="your_calcom_api_key"
CALCOM_EVENT_TYPE_ID="your_event_type_id"
NEBIUS_API_KEY="your_nebius_api_key"You can obtain these credentials from:
- Cal.com API key: cal.com/settings/developer/api-keys
- Event Type ID: Your Cal.com event type ID
- Nebius API key: Your Nebius API credentials
The calendar assistant can help you with various scheduling tasks:
-
Check Available Slots
- Query available time slots between specific dates
- Format: YYYY-MM-DD
-
Create Bookings
- Book appointments with specific details
- Required information:
- Start time (YYYY-MM-DDTHH:MM:SS+TZ format)
- Name
-
Manage Bookings
- View upcoming bookings
- Reschedule existing bookings
- Cancel bookings
# Check available slots
agent.print_response("""
Please check available slots between 2024-03-20 and 2024-03-21
""")
# Book a call
agent.print_response("""
Please book a call with these details:
- Start Time: 2024-03-22T21:30:00+05:30
- Name: John Doe
- Email: john@example.com
""")The assistant automatically handles timezone conversions. The default timezone is set to "Asia/Kolkata" but can be modified in the code.
The application includes error handling for:
- Missing API keys
- Invalid date formats
- Booking conflicts
- API connection issues
Feel free to submit issues and enhancement requests!
