Connect a calendar and the day marks itself

Point Earkeep at Google Calendar, Apple Calendar, Microsoft Outlook, or any ICS URL, and every event on your day becomes a span on its own, titled from the agenda. No join step, no button to press when a call begins.

The problem: marking the span is still a step

Always-on capture means the transcript exists either way, but a day of eight meetings still leaves eight spans to draw, the kind of end-of-day task that never quite happens. Your calendar already knows the meeting was "Roadmap review", from 14:00 to 15:00. So Earkeep reads it.

How it works

Every meeting becomes a span. Each event is matched to the stretch of transcript it covers and kept as a meeting. All-day entries, declined invitations, cancelled events and blocks with only you on them stay off. When Earkeep can't tell, it leaves the event on the agenda for you to span by hand.

The name comes from the agenda, so a week of saved meetings reads like your calendar, not a log.

Nothing is recorded differently. By default the calendar changes only which spans are kept. A meeting on no calendar is still in the transcript. To let it decide what gets captured, see letting the calendar run the microphone.

Your calendar is read on your own device, only for event names, times and similar metadata. There is no Earkeep server to copy it to. See private by design.

A feed pasted once, and the day's events arriving on the agenda as spans that name themselves.

Three ways to connect

Two apps inside a dashed "This Mac" boundary marked "no network of our own, no tokens": the macOS Calendar app with its iCloud, Google and Exchange accounts, a read-only EventKit arrow across to Earkeep's agenda of the day's three events, and below it the calendar-access sentence macOS asks once Two apps inside a dashed "This Mac" boundary marked "no network of our own, no tokens": the macOS Calendar app with its iCloud, Google and Exchange accounts, a read-only EventKit arrow across to Earkeep's agenda of the day's three events, and below it the calendar-access sentence macOS asks once

Apple Calendar: nothing leaves the machine

Earkeep reads everything the Calendar app on your Mac is subscribed to: iCloud, and any Google or Exchange account added there. No account to connect, no token to store; macOS asks once for access.

The browser does the sign-in at accounts.google.com or login.microsoftonline.com and lands back on Earkeep's own "Calendar connected" page; below it Earkeep's calendar settings show read-only scopes, Google Calendar connected to a work account, Microsoft Outlook not connected, and the refresh token stored in the system keychain The browser does the sign-in at accounts.google.com or login.microsoftonline.com and lands back on Earkeep's own "Calendar connected" page; below it Earkeep's calendar settings show read-only scopes, Google Calendar connected to a work account, Microsoft Outlook not connected, and the refresh token stored in the system keychain

Google Calendar and Microsoft Outlook: sign in, read-only

Sign in through your own browser; Earkeep asks for read access and nothing else, and never writes to your calendar. The token is kept in the macOS keychain, not in a file.

Earkeep's "Calendar link (ICS)" dialog headed "no account, nothing to approve", a published feed URL just pasted into the focused field beside an Add button, and below it the row it becomes: Calendar link (ICS), connected, named from the feed Earkeep's "Calendar link (ICS)" dialog headed "no account, nothing to approve", a published feed URL just pasted into the focused field beside an Add button, and below it the row it becomes: Calendar link (ICS), connected, named from the feed

Any ICS URL: nothing for IT to approve

Paste a link your calendar app already generates. In a managed workplace, OAuth can mean waiting on admin consent; an ICS URL has nothing for IT to approve and no admin rights to ask for.

When the meeting doesn't match the invite

The transcript doesn't stop at the invite's edges, so nothing is lost when a meeting starts early or late, finishes early, or overruns: drag the span's edge to where the conversation really began or ended. One conversation across two invites becomes a single span; a cancelled one is dropped.

An automatic span is a first draft, not a verdict. When a calendar change would reshape a meeting you saved, Earkeep asks first.

In calendar-driven mode the microphone opens five minutes early and runs past the scheduled end until the room falls quiet, so normal early starts and overruns are kept. A conversation that began half an hour early is not.

Or let the calendar run the microphone

By default the calendar only decides what is kept, which suits most people, because the conversation that matters is so often the one nobody booked. If your day is mostly not meetings, a second mode lets it decide what gets captured. Turn it on in Settings → Recording & calendars.

The microphone is released between meetings, not muted, so your operating system's recording indicator goes dark.

It opens five minutes before each meeting on your agenda and runs past the scheduled end while people are still talking. If nobody turns up, it is released again a few minutes later.

What counts as a meeting is what you can see. Exactly the events listed on the agenda open the microphone. Marking an event never record keeps it shut.

Nothing said at your desk is out of reach. Record now on the live edge records until you stop it.

A quiet notification when a meeting was due to end, with no sound, while people are still talking.

If your calendar can't be reached, it keeps recording, from the last agenda it saw, or continuously if it has none, and says so on the live edge.

Always-on remains the default.

Related

Frequently asked questions

Do I have to connect a calendar to use Earkeep?

No. Without one, you select spans on the timeline yourself.

What if my workplace won't approve an OAuth connection?

Use an ICS calendar URL, the same link your calendar app generates for any other client: no OAuth flow, no IT approval, no admin consent.

What if a meeting ran over its calendar slot?

Nothing said after the scheduled end is lost: the transcript runs continuously by default, and calendar-driven mode records on while people are still talking. Drag the span's edge out to where the conversation ended.

What happens to a meeting I already saved if the calendar event changes?

Earkeep asks first. A calendar edit never silently rewrites a kept meeting's boundaries or title.

Does connecting a calendar send my events anywhere?

No. The app reads names, times and similar metadata on your own device, and no Earkeep server receives your events.

What about a meeting that was never on my calendar?

By default it's still in the transcript; drag a span across it. In calendar-driven mode it's the one thing you start yourself, with Record now.

Can the calendar decide when Earkeep records, not just what it keeps?

Yes, if you turn on calendar-driven capture. It's off by default; always-on is the default.

Do I have to turn on automatic spans?

No. Connecting a calendar turns it on, from the next sync.

Let the calendar do the filing

14-day full trial, no account required.