skills/apple/apple-reminders/SKILL.md
Use remindctl to manage Apple Reminders directly from the terminal. Tasks sync across all Apple devices via iCloud.
brew install steipete/tap/remindctlremindctl status / Request: remindctl authorizeremindctl # Today's reminders
remindctl today # Today
remindctl tomorrow # Tomorrow
remindctl week # This week
remindctl overdue # Past due
remindctl all # Everything
remindctl 2026-01-04 # Specific date
remindctl list # List all lists
remindctl list Work # Show specific list
remindctl list Projects --create # Create list
remindctl list Work --delete # Delete list
remindctl add "Buy milk"
remindctl add --title "Call mom" --list Personal --due tomorrow
remindctl add --title "Meeting prep" --due "2026-02-15 09:00"
--due and --alarm are different fields:
--due sets the reminder's due date/time.--alarm sets the EventKit alarm/notification trigger. Timed due reminders may default to an alarm at the due time, but pass --alarm explicitly when the user asks for an earlier nudge.For a reminder due at 2:00 PM with a notification 30 minutes earlier:
remindctl add --title "Hairdresser" --due "2026-05-15 14:00" --alarm "2026-05-15 13:30"
To edit an existing reminder:
remindctl edit 87354 --due "2026-05-15 14:00" --alarm "2026-05-15 13:30"
The Reminders UI may show or group the item by the alarm time because that is when the notification fires. Verify with JSON instead of assuming the due time moved:
remindctl today --json
Expected shape:
dueDate: actual due timealarmDate: notification / early nudge timeApple's public EKReminder docs list only reminder-specific properties. Alarm support comes from inherited EKCalendarItem behavior exposed by remindctl's --alarm flag.
remindctl complete 1 2 3 # Complete by ID
remindctl delete 4A83 --force # Delete by ID
remindctl today --json # JSON for scripting
remindctl today --plain # TSV format
remindctl today --quiet # Counts only
Accepted by --due and date filters:
today, tomorrow, yesterdayYYYY-MM-DDYYYY-MM-DD HH:mm2026-01-04T12:34:56Z)--json for programmatic parsing