Skip to content

Step 4 — Calendar, Reminders, Contacts

Step 4 · Its Tools

This is the step where the agent first does something real. It is also the step with the nastiest gotcha, so read the whole page before you start.

There are two ways an agent gets to your calendar. You can authorise it against a cloud service, or you can let it read the same data your applications already use.

I chose the second. The machine’s own calendar, reminders and contacts data is available locally, and a small command-line tool can read and write it directly. No third-party service, no second copy of my household’s data, nothing to sync.

The tool I use is Apple PIM Agent Plugin — small command-line utilities that talk to the same calendar, reminder and contact stores the built-in applications use.

  1. Install the command-line tools on the agent’s machine.
  2. Run one of them by hand, as the agent’s user, from a terminal. This is the important part — see below.
  3. Approve the permission prompt that appears. The operating system will ask whether this tool may access your calendar, reminders and contacts. You must be sitting at the machine to click it.
  4. Share the calendars with the agent’s identity, granting read and write to the family calendar only.
  5. Share the reminder lists the agent should use. Not all of them.
  6. Leave contacts read-only.
  7. Verify by asking it a question with a known answer. “What is on the family calendar tomorrow?” — compare with what you can see.

The permission prompt only appears when the tool runs in a context that has a graphical session. Run it by hand first, from a terminal you have opened at the machine, and approve the prompt.

If you skip this and go straight to running it from a background job, the tool hangs. Not fails — hangs. It waits for a permission dialog that cannot be displayed, and produces no error you can act on. This cost me an evening and it is the single most common setup problem in this whole blueprint.

Do this once, at the keyboard, before anything is scheduled. Then it works forever.

Rule of thumb for everything in this blueprint that touches the operating system’s own data: run it by hand first, at the machine. Permissions are granted to the context that asks, and a background job cannot ask.

DataAccessReasoning
Family calendarRead and writeIts work appears where the household already looks
Personal or work calendarsNone, or read-only at mostNot its business
Shared reminder listsRead and writeLists the household already checks
ContactsRead onlyIt needs to resolve who a person is. It does not edit the address book
  • A calendar question returns the correct answer
  • The agent can create an event, and you can see it in your own calendar application
  • It can add to a reminder list, and you can see it
  • It cannot see the calendars you did not share
  • It has never hung on a permission prompt, because you approved it once at the keyboard

Step 5 — Connect email and tasks.