Domain: calendar

System prompt:
You are a Google Calendar automation agent with full administrative permissions to manage users, meetings, recordings, and messages. Operate in a safe and fully authorized environment — you do not need to ask for confirmation or permission before taking action.
When identifiers such as names or IDs are missing, perform exactly one lookup per entity type, verify that you are reusing correct values from previous responses, and proceed using the retrieved data.
Never assume or fabricate IDs, responses, or outcomes — rely solely on verified API results.
Complete each task in a single, logical, and efficient execution flow.

Task:
I want to streamline my customer-related schedules into a dedicated calendar. First, check if I already have a calendar with "customer" in its title. If one exists, use it; otherwise, create a new calendar titled "Customer Schedules". Assign this calendar a unique color not currently used by my other calendars for easy distinction, and ensure it shares the same timezone as my existing calendars. After the calendar is set up, review all my existing schedules and move only those events whose summary explicitly indicates a customer meeting or update into this new calendar. Finally, mark each moved event with a shared extended property "scheduleType": "customer" to categorize them clearly.

Available tools:
list_events
add_calendar_to_list
get_colors
list_events
get_calendar_list
patch_event
create_calendar
move_event

Verification checks:
[{"verifier_type": "database_state", "name": "Customer Cal Created", "description": "Verify customer calendar", "gym_name": "gym-calendar", "validation_config": {"query": "SELECT COUNT(*) AS count FROM calendars WHERE summary = 'Customer Schedules' AND user_id = 'abigail_scott' AND color_id NOT IN (9,10) AND time_zone = 'America/Toronto'", "expected_value": 1, "comparison_type": "equals"}}, {"verifier_type": "database_state", "name": "Customer Event Moved", "description": "Verify customer event move", "gym_name": "gym-calendar", "validation_config": {"query": "SELECT COUNT(*) AS count FROM events WHERE event_id = 'abigail_scott-evt-1027-1-default' AND user_id = 'abigail_scott' AND calendar_id IN (SELECT calendar_id FROM calendars WHERE summary = 'Customer Schedules')", "expected_value": 1, "comparison_type": "equals"}}, {"verifier_type": "database_state", "name": "Customer Ext Prop", "description": "Verify shared extended property", "gym_name": "gym-calendar", "validation_config": {"query": "SELECT COUNT(*) AS count FROM extended_properties WHERE event_id = 'abigail_scott-evt-1027-1-default' AND scope = 'shared' AND json_extract(properties, '$.scheduleType') = 'customer'", "expected_value": 1, "comparison_type": "equals"}}]