Skip to content

apple-calendar - Setup Guide

Prerequisites

  • macOS with Calendar app configured (iCloud, Exchange, or Google)
  • Hermes Agent installed
  • CalDAV access enabled on your calendar account
  • Node.js 18+ with npx available

Capabilities

Capability Description
CRUD Events Create, read, update, delete calendar events
Reminders & Alerts Set time-based and location-based alerts
Availability Query Find open time slots across multiple calendars
Multi-Calendar Support iCloud, Exchange, Google (via CalDAV), local
Natural Language "Schedule a meeting tomorrow at 2pm for 1 hour"
Recurring Events Daily, weekly, monthly, custom recurrence rules

Installation

npx skills add sundial-org/awesome-openclaw-skills/apple-calendar

Configuration

Grant Calendar access in macOS:

# System Settings β†’ Privacy & Security β†’ Calendars β†’ Terminal / Hermes

Or via command line (requires admin):

# Add Hermes to calendar access
sudo sqlite3 ~/Library/Application\ Support/com.apple.TCC/TCC.db \
  "INSERT OR REPLACE INTO access VALUES('kTCCServiceCalendar','com.hermes.agent',0,2,2,1,NULL,NULL,NULL,'UNUSED',NULL,0,0);"

Configure in ~/.hermes/config.yaml:

skills:
  apple-calendar:
    default_calendar: "Work"        # Default calendar name
    default_duration_minutes: 60    # Default meeting duration
    default_alert_minutes: 15       # Default reminder before event
    working_hours:
      start: "09:00"
      end: "17:00"
      timezone: "America/Phoenix"
      days: [1, 2, 3, 4, 5]        # Mon-Fri
    read_only_calendars:
      - "Holidays"
      - "Birthdays"

Usage Examples

Create Events

Create a calendar event "CorpusIQ Sprint Review" tomorrow at 3pm for 45 minutes
Schedule "Team Standup" every weekday at 9:30am starting next Monday
Add "Content Calendar Review" to my Work calendar Friday 2pm with a 10-minute reminder

Query Availability

What's on my calendar tomorrow?
Find a 30-minute slot this week for a meeting with 3 attendees
Check my availability Thursday afternoon

Manage Events

Reschedule tomorrow's "Sprint Review" to Friday at 11am
Cancel the "Coffee Chat" on Thursday
Add "Prep slides" as a reminder for my Monday presentation at 8am

How It Works

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  Hermes   │────▢│  apple-      │────▢│  macOS        β”‚
β”‚  Agent    β”‚     β”‚  calendar    β”‚     β”‚  Calendar     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚  skill        β”‚     β”‚  (CalDAV)     β”‚
                 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                        β”‚                      β”‚
                        β–Ό                      β–Ό
                 β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”     β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                 β”‚  Natural Lang β”‚     β”‚  iCloud /     β”‚
                 β”‚  β†’ CalDAV API β”‚     β”‚  Exchange /   β”‚
                 β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜     β”‚  Google       β”‚
                                      β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

The skill uses CalDAV (the standard calendar protocol) to communicate with macOS Calendar. This provides a uniform interface regardless of which backend you use (iCloud, Exchange, Google).

CorpusIQ Use Cases

  1. Content Calendar Management: Schedule social posts, blog publications, and video releases directly from Hermes. "Schedule the UGC video #47 for Thursday at 6pm"

  2. Meeting Coordination: Hermes can find mutually available slots for team meetings across multiple calendars.

  3. Deadline Tracking: Set reminders for product milestones, launch dates, and customer deliverables. "Set a reminder for 'CorpusIQ v2 launch' on August 1st with 1-week and 1-day alerts"

  4. Daily Standup Automation: Automatically schedule daily standups that respect working hours and existing commitments.

  5. Client Follow-up Calendar: Create calendar events for follow-up tasks based on email conversations.

Limitations

  • macOS Only: This skill uses CalDAV via macOS - not available on Linux or Windows.
  • Calendar Permissions: macOS privacy settings may require manual approval on first use.
  • Read-Only External: Some shared calendars may be read-only depending on permissions.

Troubleshooting

Symptom Likely Cause Fix
"Calendar access denied" macOS privacy permissions Grant access in System Settings β†’ Privacy β†’ Calendars
"Calendar not found" Calendar name mismatch List calendars: hermes calendar list
Events not syncing CalDAV sync delay Wait 30-60 seconds; check internet connection
"Invalid recurrence rule" Complex custom rule syntax Use simple recurrence patterns (daily/weekly/monthly)
Working hours not respected Timezone mismatch in config Verify timezone matches systemsetup -gettimezone

← Skills Catalog | Marketplace β†’ ↑ Skills Home


Curated by CorpusIQ - one MCP endpoint, all your business tools.

Contact Terms Privacy Pricing