Overview
Calendr is a full-featured calendar application that provides a complete calendar management experience. It’s perfect for testing AI agents on scheduling tasks, event management, calendar sharing, and complex date/time operations.
Key Features
- Multiple Calendars: Create and manage separate calendars for personal, work, or other use cases
- Event Management: Create, edit, and delete events with support for all-day events
- Calendar Sharing: Share calendars with other users with granular permissions
- Multi-View Support: Month, week, and day views
- Event Attendees: Invite users to events with RSVP tracking
- Event Search: Search across all events and calendars
Available Data Pack
professional-swe
A busy software engineer’s schedule including:
- Daily standup meetings
- Weekly 1-on-1s with manager
- Sprint planning and retrospectives
- Code review sessions
- Team lunch events
- Personal appointments
Common Testing Scenarios
- Schedule a new meeting around existing appointments
- Find available time slots for group meetings
- Modify recurring event patterns
- Share a calendar with team members
- Respond to meeting invitations
- Search for specific events
Variable Dates
The Calendar environment uses a variable date system to keep scenarios relevant over time. Instead of hardcoding dates that quickly become outdated, tasks use relative date variables that automatically adapt to the current session’s timeline.
Base Monday Concept
Every Calendar session has a base Monday - a reference date that serves as the anchor point for all relative date calculations. The base Monday is typically set to the Monday of the current week and can be configured when resetting the environment via /api/reset.
Weekday Variables
Format: {+N Day} or {-N Day}
N is the number of weeks offset from base Monday
Day is a three-letter abbreviation: Sun, Mon, Tue, Wed, Thu, Fri, Sat
| Variable | Meaning |
|---|
| {+0 Mon} | Monday of the base week |
| {+0 Tue} | Tuesday of the base week |
| {+1 Wed} | Wednesday, one week after base |
| {+3 Fri} | Friday, three weeks after base |
| {-1 Thu} | Thursday, one week before base |
| Endpoint | Purpose |
|---|
/api/task | Convert absolute dates → variable dates |
/api/prompt | Convert variable dates → absolute dates |
Best Practices
- Transform before agent use: Always convert absolute dates to variables before giving tasks to agents
- Use weekday variables for specific dates and event scheduling
- Test with different base weeks to ensure scenarios work with various base Monday values
The /api/task endpoint automatically detects and converts:
- ISO dates:
YYYY-MM-DD (e.g., 2025-01-15)
- Month names: Full month names with year (e.g., January 2025)
Variable dates represent dates only, not times. Include time components separately in your prompts (e.g., ”{+1 Wed} at 3:00pm”).
Verifier Functions
These domain-specific functions can be used in manual verifier checks to validate task completion.
| Function | Description |
|---|
find_events_on_day(date, title?) | Find events on a specific day, optionally filtered by title |
Next Steps