mcpField
S
spark-recipe-calendar-audit

spark-recipe-calendar-audit

github.com/readdleProductivity154347 installsUpdated 6d ago
Repository

About spark-recipe-calendar-audit

A read-only Spark skill for auditing meeting load over a week or custom date range. It calculates meeting counts and hours, identifies busy days and back-to-back meetings, and reports available free blocks.

Key features

  1. 01Retrieve events for a week or date range
  2. 02Check free slots during working hours
  3. 03Calculate meeting counts and total hours
  4. 04Identify busy days and consecutive meetings
  5. 05Report the longest available free block

Use cases

  1. 01Review meeting load before a new week
  2. 02Find back-to-back meeting chains
  3. 03Locate blocks of time for focused work

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/readdle/spark-cli-skills --skill spark-recipe-calendar-audit

After installing, type/spark-recipe-calendar-auditin Claude Code to confirm it loaded.

Details

From the project README

Recipe: Calendar Audit

Analyze meeting load over a week or custom time range. Count meetings, estimate total hours, identify the busiest days, flag back-to-back chains, and surface free blocks.

Prerequisite: Read the use-spark base skill for command reference and filter syntax.

Access level required: read-only.

Steps

Step 1: Pull events for the period

For the current week:

spark events --week

For a custom range:

spark events --start 2026-04-13 --end 2026-04-17

Record each event's date, start time, end time, and title.

Step 2: Check free time
spark availability --week

Or for the same custom range:

spark availability --start 2026-04-13 --end 2026-04-17

This shows free slots within working hours (08:00-20:00), skipping weekends and events marked "free."

Step 3: Compute metrics

From the events list, calculate:

  • Total meetings: count of events
  • Total meeting hours: sum of all event durations
  • Per-day breakdown: meetings and hours per day
  • Busiest day: the day with the most meeting hours
  • Lightest day: the day with the fewest meetings (best for deep work)
  • Back-to-back chains: sequences of 2+ meetings with no gap between them
  • Longest free block: the largest contiguous free window from the availability output
Step 4: Check across calendars (optional)

If the user has multiple calendars or accounts:

spark events --week --in [email protected]
spark events --week --in [email protected]

Compare meeting loads across contexts.

Step 5: Present the audit

Report:

  • Summary: N meetings totaling X hours this week (Y% of working hours)
  • Per day: table of meetings and hours per day, flagging the busiest and lightest
  • Back-to-back: list any chains of consecutive meetings (flag chains of 3+)
  • Free blocks: the longest free windows available for deep work
  • Observations: any patterns worth noting (e.g., mornings packed but afternoons free, one day completely booked)

Tips

  • Run this on Monday to plan the week, or Friday to review how the week went.
  • Back-to-back chains of 3+ meetings are worth flagging - they leave no buffer for breaks or follow-ups.
  • The ratio of meeting hours to total working hours (assume 8-10 hours/day) gives a quick "meeting load" percentage.
  • For a forward-looking audit, use --start and --end with next week's dates.
  • Events marked "free" in the calendar don't count against availability - they won't inflate the meeting load.
  • Combine with recipe-schedule-meeting to find the best slots for new meetings in a busy week.
  • If the user has recurring meetings, patterns will be consistent week-to-week. Focus commentary on what's unusual.

Comments

Markdown supported