The moment that changed the whole system was realising that Claude Code is a terrible calendar manager.

Not because it can’t do it — it can. The Google Calendar MCP integration works, skills can create and update events, everything is technically possible. The problem is cost. Every calendar operation burns tokens. Reschedule five tasks and you’ve spent more on API calls than the Reclaim monthly subscription.

So I made a clean decision: Claude Code never touches the calendar for scheduling. That’s Reclaim’s job.

How the Integration Works

Reclaim.ai has native Google Calendar sync. Connect your calendar, tell Reclaim which calendars to read, and it automatically schedules your tasks around existing commitments. Meetings, habits, focus blocks — Reclaim moves things to make room.

The connection to Claude Code is indirect but elegant: when /lesson-review runs after a study session, it creates review events directly in Google Calendar. Reclaim sees those events, treats them as commitments, and schedules around them. No direct CC→Reclaim integration needed. No extra API calls. The calendar is the shared language.

The result: Claude Code makes about four calendar calls total per lesson review. One to update today’s Quiz & Review event with questions. Three to add review questions to future quiz events on spaced repetition dates. That’s it.

Rebuilding the Morning Briefing

With scheduling out of Claude Code’s hands, the morning briefing skill could become what it should always have been: a read-only daily summary.

/morning-briefing makes one Google Calendar call — fetch today’s events. It then creates a markdown note in _Session Notes/ with every event rendered as a colour-coded callout:

  • 🔵 Blue [!info] for the morning briefing itself
  • 🟣 Purple [!example] for Docker lessons
  • 🟢 Green [!tip] for Kubernetes lessons
  • 🟡 Yellow [!question] for Quiz & Review
  • 🟠 Orange [!warning] for Evening Practice and Weekend Practice
  • 🔴 Red [!danger] reserved for Linux sessions coming later

Lesson events get the three questions included in the callout — so before I open Udemy, I already know what to look for. The briefing note lives in _Session Notes/YYYY-MM-DD — Morning Briefing.md for the history.

It also creates a Full Calendar event in calendar/briefing/ so the morning briefing appears on the Obsidian calendar view alongside the lessons.

The Skill That Took Three Rebuilds

The original /morning-briefing tried to do everything: load tasks, check overdue items, suggest a reschedule, summarise yesterday’s progress. It was expensive, slow, and honestly overwhelming at 06:20 in the morning.

Version two was better but still searched through too many files to build context.

Version three is the one that works: one calendar call, one file write, done in seconds. The output is clean, colour-coded, and contains exactly what I need to start the day. Nothing more.

The rule I apply to every Claude Code skill now: if it needs to search for anything, the vault structure is wrong, not the skill.


Next: taking the quiz system further — and why multiple choice might be the missing piece.