
remctl today and the --json flag — built for humans and agents from the same surface.
Federico Viticci’s free open-source CLI for Apple Reminders. The first such tool that can read and write the modern features — sections, subtasks, tags, attachments, smart lists — instead of stopping at what EventKit exposes.
Apple’s Reminders has quietly become one of the most capable task managers Apple ships — subtasks, tags, sections, smart lists with multi-filter rules, attachments, geofences. Most of those features have no public API; every other Reminders CLI builds on EventKit, which only exposes the basics. RemCTL goes deeper: it reads the private ReminderKit framework and the Reminders SQLite database directly, which means it can actually do everything the app does. As Viticci puts it: “If you can do something in Apple’s Reminders app, you — or your agent — can do it with RemCTL.”
The CLI surface is well-designed. remctl today prints today’s reminders grouped by list; remctl list-symbols --preview opens an interactive browser of every SF Symbol available for list icons; templates let you save a list shape and recreate it later; grocery-list auto-categorisation works the same way iOS does. The --json flag isn’t bolted on — every command returns either human-friendly stdout or machine-friendly JSON, which makes RemCTL the lowest-friction Reminders integration for an agentic workflow. The alternative is a Reminders MCP server, which is significantly more setup.
macOS only — there’s no Reminders SQLite database on iPad/iOS to point a CLI at. Open source on GitHub at viticci/remctl. The honest caveat: leaning on private APIs means breakage when Apple reorganises Reminders’ internal storage. Viticci has been writing about Apple platforms for fifteen years, so the project is unlikely to be abandoned, but a Tahoe-26.6 or 26.7 release could require a maintenance round.