apple-smart-schedule

Creates Apple Calendar events and typed reminders from natural language or ticket screenshots on macOS.

636|91|Updated Jan 7, 2026
One-click install
npx skills add https://github.com/cat-xierluo/legal-skills --skill apple-smart-schedule
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: apple-smart-schedule
Source: https://github.com/cat-xierluo/legal-skills/tree/main/skills/apple-smart-schedule
Command: npx skills add https://github.com/cat-xierluo/legal-skills --skill apple-smart-schedule

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires remindctl, and includes scripts (resource) and references (resource) components.

What problem does it solve?

Turning a casual message like "MU5137 departs 8:30 next Monday" or a ticket screenshot into properly scheduled Apple Calendar events and well-timed reminders is manual and error-prone. This Skill parses the input, classifies the event type, applies sensible lead times, and creates everything in the native macOS Calendar and Reminders apps, syncing to iPhone/iPad via iCloud.

Core Features & Use Cases

  • Natural language and screenshot parsing: Extracts title, time, location, and flight/train details from plain text or ticket images.
  • Type-aware lead times: Applies configurable reminder offsets per event type (flight, train, court hearing, meeting, deadline, social), such as 1 day before plus 3 hours before for flights.
  • Native macOS integration: Creates events via osascript and reminders via remindctl (with osascript fallback), including setup self-check and calendar/list discovery scripts.
  • Use Case: A lawyer says "下周三下午两点开庭" and gets one calendar event plus reminders the day before at 9:00, 3 hours before, and 1 hour before, all synced to their iPhone.

Quick Start

Ask the AI to add a schedule like "add flight MU5137 departing Shanghai Pudong at 8:30 on July 20 to my calendar with reminders" and it will create the event and reminders.

Frequently Asked Questions about apple-smart-schedule

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I add a natural language event to Apple Calendar automatically?

Describe the event in plain language, such as a flight number with departure time or a meeting next Wednesday. The Skill parses the details, creates one Calendar event via osascript, and adds multiple Reminders entries based on the event type's configured lead times.

How do I set up default calendar and reminder list names?

Copy config/config.example.json to config/config.json, then run scripts/setup_check.sh to list your actual calendar and reminder list names. Fill those names into default_calendar and default_reminder_list; wrong names fall back to the first calendar or default list.

Does this work on Windows, Linux, or directly on iPhone?

No, it only runs on macOS because it drives the native Calendar and Reminders apps through osascript and remindctl. Created items sync to iPhone and iPad automatically through iCloud, but the scripts themselves cannot run on iOS, Windows, or Linux.

Why does macOS keep asking for Calendar or Reminders permission?

macOS records automation permission per terminal app, so each new terminal (Terminal, iTerm, etc.) triggers the dialog once on first use. Click OK; if you previously denied it, enable the toggle under System Settings, Privacy & Security, Automation.

What happens if remindctl is not installed?

The reminder script automatically falls back to osascript, which can still create reminders with due dates. Installing remindctl via brew adds the ability to query, modify, and delete reminders, but creation works without it.

Can I customize how far in advance reminders fire?

Yes, edit the lead_times section in config/config.json using formats like -3h, -1d@09:00, or @09:00 per event type. You can also override defaults per request by saying something like "remind me 2 hours before".