Apple Calendar CLI for macOS — manage calendars and events from the command line (via JXA + EventKit).
npm i -g @joargp/accliaccli setup
accli calendars
accli events --calendar-name "Work" --from 2025-01-01 --to 2025-01-31On first run, you may need to grant Calendar access.
- Run
accli setup - In System Settings → Privacy & Security → Calendars, ensure the responsible app (often
osascriptand/or your terminal) has Full Access (not “Add Only”).
setup— trigger macOS Calendar permission promptcalendars— list calendarsevents— list events in a rangeevent— fetch a single event by IDcreate— create an eventupdate— update an eventdelete— delete an eventfreebusy— show busy time slotsconfig— set/show/clear default calendar
Run accli <command> --help for command-specific options.
Add --json to most commands to output JSON (including errors).
Designed for coding agents and automation: structured --json output on all commands, distinct exit codes (0=success, 1=runtime, 2=validation, 10=auth), machine-readable error codes, and persistent calendar IDs for reliable targeting.
- macOS only (
darwin), because it usesosascript+ EventKit. - Config path defaults to
~/.acclircbut can be overridden viaACCLI_CONFIG_PATH(orACCLI_HOME).