CLI & MCP
Waymaker calendar
Manage calendar events in Commander. Create, list, and update events across connected calendars.
CalendarEvents
Last updated: January 21, 2026
Overview
Manage calendar events in Commander. Create, list, and update events across connected calendars.
Usage
waymaker calendar <subcommand> [options]
Subcommands
| Subcommand | Description |
|---|---|
list | List calendar events |
get | Get event details |
create | Create a new event |
update | Update an event |
delete | Delete an event |
List Events
waymaker calendar list
Output:
Upcoming Events (12)
id title start duration attendees
----------------------------------------------------------------------------
evt_abc123 Q1 Planning Meeting Jan 22, 10:00 AM 1h 5
evt_def456 Product Review Jan 22, 2:00 PM 30m 3
evt_ghi789 Team Standup Jan 23, 9:00 AM 15m 8
Filter by Date Range
waymaker calendar list --from "2026-01-22" --to "2026-01-29"
Filter by Calendar
waymaker calendar list --calendar work
JSON Output
waymaker calendar list --json
[
{
"id": "evt_abc123",
"title": "Q1 Planning Meeting",
"start": "2026-01-22T10:00:00Z",
"end": "2026-01-22T11:00:00Z",
"attendees": ["john@company.com", "jane@company.com"],
"location": "Conference Room A",
"calendar": "work"
}
]
Get Event Details
waymaker calendar get <event-id>
Output:
Q1 Planning Meeting
ID: evt_abc123
Calendar: work
Start: January 22, 2026 10:00 AM
End: January 22, 2026 11:00 AM
Duration: 1 hour
Location: Conference Room A
Description:
Quarterly planning session to review OKRs and set priorities.
Attendees: (5)
- john@company.com (organizer)
- jane@company.com (accepted)
- bob@company.com (accepted)
- alice@company.com (tentative)
- charlie@company.com (pending)
Video Call: https://meet.google.com/xxx-yyyy-zzz
Create Event
waymaker calendar create \
--title "New Meeting" \
--start "2026-01-25T14:00:00" \
--duration 60 \
--attendees "user1@company.com,user2@company.com"
Output:
✓ Event created
ID: evt_new123
Title: New Meeting
Start: January 25, 2026 2:00 PM
Duration: 1 hour
Create with Location
waymaker calendar create \
--title "Team Lunch" \
--start "2026-01-26T12:00:00" \
--duration 90 \
--location "123 Main St, Suite 100"
Create Recurring Event
waymaker calendar create \
--title "Weekly Standup" \
--start "2026-01-27T09:00:00" \
--duration 15 \
--recurrence "weekly" \
--until "2026-06-30"
Create with Video Call
waymaker calendar create \
--title "Remote Meeting" \
--start "2026-01-28T15:00:00" \
--duration 30 \
--video-call
Update Event
waymaker calendar update <event-id> \
--title "Updated Title" \
--start "2026-01-25T15:00:00"
Add Attendees
waymaker calendar update <event-id> \
--add-attendees "newuser@company.com"
Remove Attendees
waymaker calendar update <event-id> \
--remove-attendees "user@company.com"
Update Description
waymaker calendar update <event-id> \
--description "Updated meeting agenda..."
Delete Event
waymaker calendar delete <event-id>
Output:
✓ Event deleted
Title: Q1 Planning Meeting
Delete Recurring Event
# Delete single occurrence
waymaker calendar delete <event-id> --occurrence "2026-02-03"
# Delete all occurrences
waymaker calendar delete <event-id> --all-occurrences
Options Reference
list
| Option | Type | Description |
|---|---|---|
--from | string | Start date (YYYY-MM-DD) |
--to | string | End date (YYYY-MM-DD) |
--calendar | string | Filter by calendar |
--json | flag | Output as JSON |
get
| Option | Type | Description |
|---|---|---|
--json | flag | Output as JSON |
create
| Option | Type | Description |
|---|---|---|
--title | string | Required. Event title |
--start | string | Required. Start time (ISO 8601) |
--duration | number | Duration in minutes |
--end | string | End time (alternative to duration) |
--attendees | string | Comma-separated emails |
--location | string | Event location |
--description | string | Event description |
--calendar | string | Target calendar |
--recurrence | enum | Recurrence pattern (daily, weekly, monthly) |
--until | string | Recurrence end date |
--video-call | flag | Add video call link |
update
| Option | Type | Description |
|---|---|---|
--title | string | New title |
--start | string | New start time |
--duration | number | New duration |
--location | string | New location |
--description | string | New description |
--add-attendees | string | Attendees to add |
--remove-attendees | string | Attendees to remove |
delete
| Option | Type | Description |
|---|---|---|
--occurrence | string | Delete specific occurrence |
--all-occurrences | flag | Delete all recurring occurrences |
--force | flag | Skip confirmation |
AI Agent Workflow
# Get today's events
TODAY=$(date +%Y-%m-%d)
EVENTS=$(waymaker calendar list --from $TODAY --to $TODAY --json)
# Find free time for new meeting
BUSY=$(echo $EVENTS | jq '[.[] | {start, end}]')
# Create meeting at available time
waymaker calendar create \
--title "AI-Scheduled Meeting" \
--start "$AVAILABLE_TIME" \
--duration 30 \
--attendees "$ATTENDEE_LIST"
# Get upcoming meetings for summary
UPCOMING=$(waymaker calendar list --from $TODAY --to "$(date -v+7d +%Y-%m-%d)" --json)
echo "You have $(echo $UPCOMING | jq 'length') meetings this week"
Related Commands
- calls - Phone calls
- email - Email management
- connections - Calendar integrations