Skill

meeting-prep-from-calendar

Install
1
Install the plugin
$
npx claudepluginhub gpsandhu23/daily_productivity_plugin

Want just this skill?

Add to a custom plugin, then install with one command.

Description

Gather cross-tool context for upcoming meetings — attendee profiles, recent conversations, related issues, and suggested topics. Trigger on "prep me for my meeting", "what's my next meeting about", "get me ready for the call", "brief me on my next meeting".

Tool Access

This skill uses the workspace's default tool permissions.

Skill Content

Meeting Prep from Calendar

Automatically prep for meetings by gathering context about attendees from email, Slack, and issue trackers. Triggers when the user asks about upcoming meetings in a conversational way.

When to Use

Apply this skill when the user asks about meeting preparation:

  • "Prep me for my meeting"
  • "What's my next meeting about?"
  • "Get me ready for the call with Sarah"
  • "Brief me on my next meeting"
  • "What should I know before my 2pm?"

For full schedule management (timeline, free blocks, multi-day view), suggest /calendar instead.

How It Works

┌─────────────────────────────────────────────────────────────────┐
│                  MEETING PREP FROM CALENDAR                      │
├─────────────────────────────────────────────────────────────────┤
│  STANDALONE (always works)                                       │
│  ✓ User describes the meeting and attendees                     │
│  ✓ I organize context and suggest topics                         │
│  ✓ Generate prep checklist                                       │
├─────────────────────────────────────────────────────────────────┤
│  SUPERCHARGED (when you connect your tools)                      │
│  + Calendar: auto-identify meeting, pull attendees              │
│  + Email: recent threads with each attendee                      │
│  + Chat: recent Slack discussions with/about attendees          │
│  + Issue tracker: related issues and shared projects             │
└─────────────────────────────────────────────────────────────────┘

Execution Flow

Step 1: Identify the Meeting

If ~~calendar connected:

  • Fetch upcoming events
  • If user specified a meeting name, match it
  • If user said "my next meeting", pick the next upcoming event
  • If ambiguous, ask: "Which meeting? I see: [list of upcoming meetings]"

If no ~~calendar:

"Tell me about the meeting — who's attending, what it's about, and when it is."

Step 2: Gather Attendee Context (in parallel)

For each attendee, gather context from all available tools:

From ~~email (if connected):

  • gmail_search_messages with from:<attendee> — recent emails from them
  • gmail_search_messages with to:<attendee> — recent emails to them
  • gmail_read_message / gmail_read_thread for the most relevant threads

From ~~chat (if connected):

  • slack_search_public_and_private with from:<attendee name> — their recent messages
  • slack_search_public_and_private with <attendee name> — mentions of them

From ~~issue tracker (if connected):

  • Issues assigned to or created by the attendee
  • Issues related to the meeting topic (search by keywords from meeting title/description)

Step 3: Generate Prep

## Meeting Prep | [Meeting Title]
**[Time, Date]** | [Duration]
**Location:** [If specified]

---

### Attendees

#### [Name] — [Title/Role if known]
**Recent email:**
- [Date]: [Subject] — [One-line summary of thread]
- [Date]: [Subject] — [One-line summary]

**Recent Slack:**
- [Channel/DM]: [Summary of recent relevant discussion]

**Related issues:**
- [Issue title] — [Status]

#### [Name] — [Title/Role if known]
**Recent email:**
- [Summary]

**Recent Slack:**
- [Summary]

**Related issues:**
- [Issues]

---

### Meeting Context

[Synthesized context from calendar description, recent threads, and issues. What is this meeting about? What's the current state of the topic?]

---

### Suggested Topics

1. **[Topic]** — [Why: based on recent email/Slack/issue activity]
2. **[Topic]** — [Why: open question from a thread, unresolved issue]
3. **[Topic]** — [Why: recent development worth discussing]

---

### Open Questions

- [Question from email that wasn't resolved]
- [Question raised in Slack without clear answer]
- [Issue that needs discussion]

---

### Your Prep Actions

- [ ] [Quick action, e.g., "Review the design doc Sarah shared on Tuesday"]
- [ ] [Quick action, e.g., "Check status of the blocked API issue"]
- [ ] [Quick action, e.g., "Read Mike's proposal email from yesterday"]

Assemble sections based on available data:

  1. Attendees — Always include (even if just names from calendar)
  2. Meeting Context — From calendar description + gathered context
  3. Suggested Topics — Based on recent activity across tools
  4. Open Questions — From unresolved threads/issues
  5. Prep Actions — Concrete actions to take before the meeting

Graceful Degradation

Tool MissingImpact
~~calendarCannot auto-identify meeting — ask user to describe it
~~emailSkip email context for attendees
~~chatSkip Slack context for attendees
~~issue trackerSkip related issues

When tools are missing, note what's available:

"I gathered context from email and Slack. Connect your issue tracker for related project context."


Related

  • /calendar prep <meeting> — Full calendar command with prep mode (same functionality, invoked explicitly)
  • /morning-briefing — Includes today's meetings with brief context
  • /end-of-day — Offers follow-up drafts after meetings
Stats
Stars0
Forks0
Last CommitMar 1, 2026
Actions

Similar Skills