Skip to main content
skill CX Codex

spark-recipe-invitation-manager — Claude Code skill: triage calendar

Walks through pending calendar invitations, checks whether each proposed time is free, and returns a decision list with recommendations.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add readdle/spark-cli-skills --skill spark-recipe-invitation-manager -a claude-code
npx skills add readdle/spark-cli-skills --skill recipe-invitation-manager -a claude-code
Open on GitHub

What spark-recipe-invitation-manager does

The skill pulls inbox mail tagged invitation, reads each thread with spark thread <id>, and notes the proposed time, attendees and purpose. Then it compares those slots against your calendar: spark events --today, spark events --start 2026-04-14 --end 2026-04-14, or spark availability when you want free windows fast.

What comes back is a decision list. Accept if the slot is open, conflict if something else overlaps (the skill names it), needs discussion if you are technically free but the meeting itself is unclear. A separate step reviews invitation responses through the category:invitation_response filter and reports who accepted, declined or proposed another time.

Access is read-only, so nothing on the calendar gets changed. The use-spark base skill has to be in place first — it holds the command reference and filter syntax, and the steps will not run without it. For recurring meetings the skill suggests reading the whole thread: what matters is whether the series works long term, not just the next occurrence. When a conflict turns up, it checks availability around the proposed date and offers an alternative.

What it helps with

  • triage a backlog of pending calendar invitations in one pass
  • check whether a proposed meeting time is actually free
  • spot an overlap with an existing event and name it
  • see who accepted an invitation or proposed another time
  • find an alternative slot near the proposed date

Example prompts for the agent

  • show my pending calendar invitations and tell me which ones I can accept
  • check my availability for every meeting in my unread invitations
  • who replied to my invitations and offered a different time

How to install spark-recipe-invitation-manager

1Skills CLI (Vercel)

npx skills add readdle/spark-cli-skills --skill spark-recipe-invitation-manager -a claude-code
npx skills add readdle/spark-cli-skills --skill recipe-invitation-manager -a claude-code

2Manually: put the files in place

~/.claude/skills/recipe-invitation-manager/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/recipe-invitation-manager/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about spark-recipe-invitation-manager

How do I install spark-recipe-invitation-manager in Claude?

Run npx skills add readdle/spark-cli-skills --skill spark-recipe-invitation-manager -a claude-code. The skill file then lands at ~/.claude/skills/recipe-invitation-manager/SKILL.md.

What does spark-recipe-invitation-manager do?

It collects pending invitations from your inbox, reads the details of each meeting, checks the times against your calendar and returns a list with recommendations: accept, conflict or needs discussion.

What does the skill need to work?

The use-spark base skill, which carries the command reference and filter syntax. This skill runs at read-only access, so it does not modify your calendar.

Source text

SKILL.md · MIT
---
name: spark-recipe-invitation-manager
description: >-
  Process pending calendar invitations: check availability and present a
  decision list with recommendations.
metadata:
  version: 1.0.0
  requires:
    skills:
      - use-spark
    accessLevel: read-only
---

# Recipe: Invitation Manager

Process pending calendar invitations by checking availability for each and presenting a decision list with recommendations.

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

**Access level required:** read-only.

## Steps

### Step 1: List pending invitations

```bash
spark emails Inbox --filter "category:invitation"
```

Collect all pending invitations. Note the senders, subjects, and IDs.

### Step 2: Read each invitation

For each invitation, read the thread to understand the meeting details:

```bash
spark thread <id>
```

Note the proposed time, attendees, and purpose.

### Step 3: Check availability for each

For each invitation's proposed time, check whether the user is free:

```bash
spark events --today
```

Or for a specific date range:

```bash
spark events --start 2026-04-14 --end 2026-04-14
```

For a broader view:

```bash
spark availability --start 2026-04-14 --end 2026-04-14
```

### Step 4: Present a decision list

Summarize each invitation with a recommendation:

- **Accept** - the user is free at the proposed time
- **Conflict** - the user has an overlapping event (name the conflict)
- **Needs discussion** - the user is technically free but the meeting needs clarification

### Step 5: Check invitation responses

Review any invitation responses the user has received:

```bash
spark emails Inbox --filter "category:invitation_response"
```

Report who accepted, declined, or proposed alternative times.

## Tips

- Process invitations daily - they're time-sensitive and forgetting one can mean missing an important meeting.
- Use `availability` to quickly check free slots rather than scanning through `events` manually.
- Invitation responses (`category:invitation_response`) are a separate category - check them to see who RSVPed.
- For recurring meeting invitations, read the thread to check if the pattern works long-term, not just the next occurrence.
- When there's a conflict, suggest an alternative time by checking `availability` around the proposed date.
- Combine with `recipe-schedule-meeting` when an invitation leads to rescheduling.

© readdle · MIT · readdle/spark-cli-skills

Similar skills

Everything for Notes, tasks and projects →

From the same set19

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor