Now liveThe Skillselion MCP - thousands of ranked skills, loaded into your agent mid-task. No install.Get it →
bighardperson avatar

Macos Calendar

  • 8 installs
  • 33 repo stars
  • Updated April 26, 2026
  • bighardperson/computer-science-skills-collection

macos-calendar is a Claude skill that creates, lists, and manages macOS Calendar events via AppleScript.

About

macos-calendar creates, lists, and manages Apple Calendar events on macOS using AppleScript. It runs a calendar.sh script that supports listing calendars and creating events from JSON with fields for title, calendar, notes, date offset or absolute date, time, duration, alarms, all-day, and iCal RRULE recurrence. A developer uses it when they ask an agent to schedule a meeting, add a reminder, or set a deadline. It uses relative date math to avoid locale-specific date parsing issues.

  • Create, list, and manage macOS Calendar events via AppleScript (osascript)
  • Relative date math avoids locale issues across FR/EN/DE date formats
  • Supports summary, calendar, description, offset/absolute date, time, duration, alarms, all-day, and RRULE recurrence

Macos Calendar by the numbers

  • 8 all-time installs (skills.sh)
  • Ranked #2,242 of 3,280 Productivity & Planning skills by installs in the Skillselion catalog
  • Data as of Jul 30, 2026 (Skillselion catalog sync)
At a glance

macos-calendar capabilities & compatibility

Free; macOS-only, uses built-in osascript and python3.

Capabilities
create event · list calendars · manage events
Use cases
planning · project management
Platforms
macOS
Pricing
Free
From the docs

What macos-calendar says it does

Create, list, and manage macOS Calendar events via AppleScript.
SKILL.md
All date handling uses relative math (`current date + N * days`) to avoid locale issues (FR/EN/DE date formats).
SKILL.md
Requires macOS with Calendar.app. Uses osascript (AppleScript) and python3 for JSON parsing.
SKILL.md
npx skills add https://github.com/bighardperson/computer-science-skills-collection --skill macos-calendar

Add your badge

Show developers this skill is listed on Skillselion. Paste this into your README.

Listed on Skillselion
Installs8
repo stars33
Last updatedApril 26, 2026
Repositorybighardperson/computer-science-skills-collection

What it does

Create, list, and manage Apple Calendar events on macOS from an agent via AppleScript.

Who is it for?

macOS users who want an agent to schedule events and reminders in Apple Calendar.

Skip if: Windows or Linux users, or anyone not using Calendar.app.

When should I use this skill?

The user asks to add a reminder, schedule an event, create a calendar entry, or set a deadline on macOS.

What you get

The agent creates the calendar event, including recurrence and alarms, in one call.

  • Apple Calendar events
  • calendar listings

By the numbers

  • 11 documented JSON event fields

Files

SKILL.mdMarkdownGitHub ↗

macOS Calendar

Manage Apple Calendar events via $SKILL_DIR/scripts/calendar.sh. All date handling uses relative math (current date + N * days) to avoid locale issues (FR/EN/DE date formats).

Quick start

List calendars

Always list calendars first to find the correct calendar name:

"$SKILL_DIR/scripts/calendar.sh" list-calendars

Create an event

echo '<json>' | "$SKILL_DIR/scripts/calendar.sh" create-event

JSON fields:

FieldRequiredDefaultDescription
summaryyes-Event title
calendarnofirst calendarCalendar name (from list-calendars)
descriptionno""Event notes
offset_daysno0Days from today (0=today, 1=tomorrow, 7=next week)
iso_dateno-Absolute date YYYY-MM-DD (overrides offset_days)
hourno9Start hour (0-23)
minuteno0Start minute (0-59)
duration_minutesno30Duration
alarm_minutesno0Alert N minutes before (0=no alarm)
all_daynofalseAll-day event
recurrenceno-iCal RRULE string. See references/recurrence.md

Interpreting natural language

Map user requests to JSON fields:

User saysJSON
"tomorrow at 2pm"offset_days: 1, hour: 14
"in 3 days"offset_days: 3
"next Monday at 10am"Calculate offset_days from today to next Monday, hour: 10
"February 25 at 3:30pm"iso_date: "2026-02-25", hour: 15, minute: 30
"every weekday at 9am"hour: 9, recurrence: "FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR"
"remind me 1 hour before"alarm_minutes: 60
"all day event on March 1"iso_date: "2026-03-01", all_day: true

For "next Monday", "next Friday" etc: compute the day offset using the current date. Use date command if needed:

# Days until next Monday (1=Monday)
target=1; today=$(date +%u); echo $(( (target - today + 7) % 7 ))

Example prompts

These are real user prompts and the commands you should run:

"Remind me to call the dentist in 2 days"

"$SKILL_DIR/scripts/calendar.sh" list-calendars

Then:

echo '{"calendar":"Personnel","summary":"Call dentist","offset_days":2,"hour":9,"duration_minutes":15,"alarm_minutes":30}' | "$SKILL_DIR/scripts/calendar.sh" create-event

"Schedule a team sync every Tuesday at 2pm with a 10-min reminder"

echo '{"calendar":"Work","summary":"Team sync","hour":14,"duration_minutes":60,"recurrence":"FREQ=WEEKLY;BYDAY=TU","alarm_minutes":10}' | "$SKILL_DIR/scripts/calendar.sh" create-event

"Block July 15 as a vacation day"

echo '{"calendar":"Personnel","summary":"Vacances","iso_date":"2026-07-15","all_day":true}' | "$SKILL_DIR/scripts/calendar.sh" create-event

"I have a doctor appointment next Thursday at 3:30pm, remind me 1 hour before"

# First compute offset_days to next Thursday (4=Thursday)
target=4; today=$(date +%u); offset=$(( (target - today + 7) % 7 )); [ "$offset" -eq 0 ] && offset=7

Then:

echo "{\"calendar\":\"Personnel\",\"summary\":\"Doctor appointment\",\"offset_days\":$offset,\"hour\":15,\"minute\":30,\"duration_minutes\":60,\"alarm_minutes\":60}" | "$SKILL_DIR/scripts/calendar.sh" create-event

"Set up a daily standup at 9am on weekdays for the next 4 weeks"

echo '{"calendar":"Work","summary":"Daily standup","hour":9,"duration_minutes":15,"recurrence":"FREQ=WEEKLY;BYDAY=MO,TU,WE,TH,FR;COUNT=20"}' | "$SKILL_DIR/scripts/calendar.sh" create-event

"Add a biweekly 1-on-1 with my manager on Fridays at 11am"

echo '{"calendar":"Work","summary":"1-on-1 Manager","hour":11,"duration_minutes":30,"recurrence":"FREQ=WEEKLY;INTERVAL=2;BYDAY=FR","alarm_minutes":5}' | "$SKILL_DIR/scripts/calendar.sh" create-event

Critical rules

1. Always list calendars first if the user hasn't specified one — calendars marked [read-only] cannot be used for event creation 2. Never use hardcoded date strings in AppleScript — always use offset_days or iso_date 3. Confirm the calendar name with the user if multiple personal calendars exist 4. Never target a `[read-only]` calendar — the script will reject it with an error 5. For recurring events, consult references/recurrence.md for RRULE syntax 6. Pass JSON via stdin — never as a CLI argument (avoids leaking data in process list) 7. All fields are validated by the script (type coercion, range checks, format validation) — invalid input is rejected with an error message 8. All actions are logged to logs/calendar.log with timestamp, command, calendar, and summary

Related skills

FAQ

How does it avoid locale date bugs?

It uses relative date math (current date + N days) so FR/EN/DE date formats do not break parsing.

What event fields are supported?

summary, calendar, description, offset_days or iso_date, hour, minute, duration_minutes, alarm_minutes, all_day, and RRULE recurrence.

What are the requirements?

macOS with Calendar.app, plus the osascript and python3 binaries.

This week in AI coding

Five minutes, every Monday - the tools, releases and tactics for developers.

unsubscribe anytime.