spark-recipe-meeting-prep — Claude Code skill: meeting prep
A skill that gathers context before a meeting: agenda, related email threads, attendee details and open threads worth raising.
npx skills add readdle/spark-cli-skills --skill spark-recipe-meeting-prep -a claude-code
npx skills add readdle/spark-cli-skills --skill recipe-meeting-prep -a claude-codeWhat spark-recipe-meeting-prep does
The skill drives the Spark CLI and depends on the use-spark base skill, which documents the commands and filter syntax. Access level is read-only, so it only reads your calendar and mail.
The flow is linear. spark events --today lists today's meetings, spark search returns up to 20 emails on the topic with full bodies, spark contacts pulls attendee details. Then spark emails --filter surfaces recent correspondence with those people from the last 14 days, plus threads with no reply via is:unreplied. You get a summary: meeting time and title, key points from the threads, pending questions, and the threads to bring up.
There is an optional post-meeting step. It reads the transcript with spark meeting <id> --transcript --notes and compares it against the email record, flagging two kinds of gaps: verbal commitments with no written trail, and open threads that never came up. That step needs the transcript to be available, otherwise it has nothing to work with. The skill suggests running prep 15-30 minutes before the meeting, and for large meetings looking up only the 2-3 key attendees.
What it helps with
- pull email context for a meeting topic
- find unreplied threads with attendees
- spot commitments that never got a written record
- look up attendee contact details
- compare a meeting transcript against the email trail
Example prompts for the agent
- Prep me for today's meeting: check the calendar, find related emails and look for open threads with the attendees.
- Who is attending and what have we exchanged with them over the last two weeks?
- Here's the transcript from the last meeting — flag verbal commitments with no email trail and threads that weren't raised.
How to install spark-recipe-meeting-prep
1Skills CLI (Vercel)
npx skills add readdle/spark-cli-skills --skill spark-recipe-meeting-prep -a claude-codenpx skills add readdle/spark-cli-skills --skill recipe-meeting-prep -a claude-code2Manually: put the files in place
~/.claude/skills/recipe-meeting-prep/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/recipe-meeting-prep/
1Skills CLI (Vercel)
npx skills add readdle/spark-cli-skills --skill recipe-meeting-prep -a codex2Manually: put the files in place
.agents/skills/recipe-meeting-prep/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add readdle/spark-cli-skills --skill recipe-meeting-prep -a cursor2Manually: put the files in place
.cursor/skills/recipe-meeting-prep/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install readdle/spark-cli-skills recipe-meeting-prep2Manually: put the files in place
.github/skills/recipe-meeting-prep/SKILL.md1Skills CLI (Vercel)
npx skills add readdle/spark-cli-skills --skill recipe-meeting-prep -a gemini-cli2Platform CLI
gemini skills install https://github.com/readdle/spark-cli-skills --path skills/recipe-meeting-prepManually: put the files in place
.devin/skills/recipe-meeting-prep/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add readdle/spark-cli-skills --skill recipe-meeting-prep -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about spark-recipe-meeting-prep
How do I install spark-recipe-meeting-prep in Claude?
Run npx skills add readdle/spark-cli-skills --skill spark-recipe-meeting-prep -a claude-code. The skill lands in ~/.claude/skills/recipe-meeting-prep/SKILL.md.
What does spark-recipe-meeting-prep do?
It builds a prep summary: today's meetings, emails on the topic, attendee contacts and unreplied threads. After the meeting it can diff the transcript against the email record.
What does the skill need to run?
The use-spark base skill for command and filter reference, plus read-only access to mail and calendar. The gap analysis step needs an available meeting transcript.
Source text
SKILL.md · MIT
---
name: spark-recipe-meeting-prep
description: >-
Prepare for an upcoming meeting: check agenda, search for email context,
look up attendee details, and flag open threads that should be raised.
metadata:
version: 1.0.0
requires:
skills:
- use-spark
accessLevel: read-only
---
# Recipe: Meeting Prep
Prepare for an upcoming meeting by gathering calendar context, relevant email threads, and attendee information. Optionally, run a gap analysis after the meeting to flag verbal commitments without a written trail and open threads that weren't raised.
**Prerequisite:** Read the `use-spark` base skill for command reference and filter syntax.
**Access level required:** read-only.
## Steps
### Step 1: Check the calendar
```bash
spark events --today
```
Identify the meeting to prepare for - note the topic, time, and attendees.
### Step 2: Search for relevant email context
```bash
spark search "meeting topic or project name"
```
This returns up to 20 emails with full bodies, sorted by relevance. Read the most relevant threads for context.
### Step 3: Look up attendees
```bash
spark contacts "attendee name"
```
Repeat for each attendee to gather their email and any other details.
### Step 4: Check recent correspondence with attendees
```bash
spark emails --filter "from:[email protected] newer_than:14d"
```
Review any recent threads with the meeting participants for open items or unanswered questions.
### Step 5: Flag unresolved threads to raise in the meeting
Check for open or unreplied threads with the attendees that may be worth bringing up:
```bash
spark emails --filter "from:[email protected] is:unreplied newer_than:14d"
spark emails --filter "to:[email protected] is:unreplied newer_than:14d"
```
Note any threads that look relevant to the meeting topic but haven't been resolved — these are candidates to raise during the discussion.
### Step 6: Present the prep summary
Summarize for the user:
- **Meeting:** time, title, attendees
- **Context:** key points from relevant email threads
- **Open items:** unanswered questions or pending actions from recent correspondence
- **Threads to raise:** unreplied or unresolved threads with attendees that relate to the meeting topic
- **Attendees:** contact details for reference
### Step 7 (optional, post-meeting): Meeting–email gap analysis
After the meeting, compare what was discussed against the email record to catch gaps. This step requires the meeting transcript to be available.
1. Read the transcript:
```bash
spark meeting <id> --transcript --notes
```
Extract topics discussed, commitments made, and decisions reached.
2. For each major topic, check whether it has an email trail:
```bash
spark search "topic from meeting"
```
3. Flag two kinds of gaps:
**Discussed in meeting, no email trail** — verbal commitments or decisions that may need a follow-up email to create a written record.
**Open email threads not raised in meeting** — compare the unreplied threads from Step 5 against what was actually discussed. Flag any that seem relevant but weren't mentioned.
Present gaps neutrally — not every gap needs action. Some things are intentionally verbal-only, and some threads are intentionally deferred.
## Tips
- Run this 15-30 minutes before the meeting for fresh context.
- Use `spark search` rather than `spark emails` for topic-based context - search returns full bodies.
- If the meeting is recurring, check `spark meetings --filter "subject:meeting-topic"` for past transcripts.
- For large meetings, focus on the 2-3 most important attendees rather than looking up everyone.
- The `is:unreplied` filter is especially useful for surfacing threads that may have been forgotten — both before the meeting (things to raise) and after (things that were missed).
- For recurring meetings, running the post-meeting gap analysis regularly can reveal patterns where the same threads go unaddressed week after week.
© readdle · MIT · readdle/spark-cli-skills