Skip to content
Development
Skill

/meeting-notes

Generate structured meeting notes from transcripts or pasted text. Use when someone says "meeting notes", "process this transcript", "summarize this call", "notes from today's meeting", or pastes/references a meeting transcript. Auto-enriches attendees from stakeholder

From plugin
coco
264174 skills37 agents41 commands
Install
$ npx -y skills add coco-research/coco --skill meeting-notes --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/meeting-notes

Context preview

The summary Claude sees to decide when to auto-load this skill.

Generate structured meeting notes from transcripts or pasted text. Use when someone says "meeting notes", "process this transcript", "summarize this call", "notes from today's meeting", or pastes/references a meeting transcript. Auto-enriches attendees from stakeholder

SKILL.md

meeting-notes.SKILL.md
name: pmstudio-meeting-notes
description: Generate structured meeting notes from transcripts or pasted text. Use when someone says "meeting notes", "process this transcript", "summarize this call", "notes from today's meeting", or pastes/references a meeting transcript. Auto-enriches attendees from stakeholder directory, routes output to correct project subfolder, flags downstream artifact impacts (PRD, deck, architecture), and proposes CLAUDE.local.md updates. Produces date-first Markdown files.
domain: pm

Meeting Notes — Transcript-to-Artifact Generator

Purpose

Transforms raw meeting transcripts (pasted text, audio transcription output, or file references) into structured, stakeholder-enriched meeting notes. Not generic summaries — these cross-reference project context, known stakeholders, and existing artifacts to produce notes that integrate into the project's documentation ecosystem.

Process

Step 1: Determine Input Source

From user request:

| Input | How to Handle | |-------|---------------| | Transcript pasted in chat | Process directly | | File path provided | Read the file | | `/pmstudio-meeting-notes <path>` | Read file at path | | `/pmstudio-meeting-notes <path> <output-dir>` | Read file, write to specified directory | | No transcript provided | Ask: "Paste the transcript or provide a file path" |

Step 2: Read Project Context

**Always read (skip any that don't exist):**

1. **`CLAUDE.local.md`** — critical for:

  • Folder structure & routing guide (determines where to save notes)
  • Recent Changes (avoid duplicating known information)
  • Key Decisions (cross-reference decisions mentioned in transcript)
  • Open Questions (check if any were answered in this meeting)
  • File naming conventions

2. **Stakeholder Directory** — scan for:

  • `**/Stakeholder*.xlsx` or `**/Stakeholder*.md`
  • `**/Data/Stakeholder*`
  • Known stakeholder names, roles, emails, groups

3. **Recent meeting notes** — read the last 1-2 meeting note files to:

  • Match format and depth conventions
  • Identify follow-ups from previous meetings
  • Detect recurring topics

4. **PRD files** — scan for `**/*PRD*.html` or `**/*PRD*.md` to:

  • Know current PRD version
  • Identify if meeting content impacts requirements

Step 3: Extract & Enrich

Process the transcript to extract:

3a. Metadata

  • **Date** — from transcript or user context. Use absolute date (YYYY-MM-DD), never relative.
  • **Attendees** — every person mentioned or speaking. Cross-reference against stakeholder directory to enrich with:
  • Full name (resolve first-name-only references)
  • Title/Role
  • Group/Team
  • If NOT in directory → flag as "New Stakeholder"
  • **Duration** — estimate from transcript length if not stated (~150 words/minute for conversation)
  • **Subject** — synthesize from discussion topics

3b. Content Extraction

| Element | What to Capture | How to Identify | |---------|----------------|-----------------| | **Key Discussion Topics** | Major themes discussed, numbered with detail | Topic shifts, agenda items, extended discussion | | **Decisions Made** | Explicit choices, agreements, approvals | "We'll go with...", "Let's do...", "Agreed", "Decision:" | | **Action Items** | Tasks assigned with owner and deadline | "Can you...", "I'll...", "Next step is...", "Action:" | | **Direct Quotes** | Significant statements worth preserving verbatim | Strategic vision, strong opinions, commitments, memorable framing | | **New Information** | Facts, data points, context not previously documented | Numbers, dates, names, technical details, process descriptions | | **New Stakeholders** | People mentioned who aren't in the stakeholder directory | Names with roles/context that suggest ongoing involvement | | **Open Questions** | Questions raised but not answered | "We need to find out...", "TBD", "I'll check...", unanswered questions | | **Emotional/Political Signals** | Frustrations, enthusiasm, concerns, tensions | Strong language, repeated emphasis, criticism, praise |

3c. Cross-Reference

  • **Against CLAUDE.local.md Open Questions**: Did this meeting answer any? Mark as "Resolved" with the answer.
  • **Against CLAUDE.local.md Key Decisions**: Did this meeting produce new decisions? Capture with date.
  • **Against PRD**: Does anything discussed change requirements, scope, timeline, or stakeholders?
  • **Against previous meeting action items**: Were any completed or discussed?

Step 4: Generate Meeting Notes

**File naming convention:** `YYYY-MM-DD-Attendee1-Attendee2.md` (date-first for chronological sort, key attendee names for identification)

**If 3+ attendees**, use the most senior or topic-relevant names, not all names.

Output Structure

# Meeting Notes — {Topic / Key Attendees}

**Date:** {YYYY-MM-DD} ({Day of Week})
**Attendees:** {Name1 (Role)}, {Name2 (Role)}, {Name3 (Role)}
**Subject:** {Project} — {Topic Summary}
**Duration:** ~{N} minutes

---

## Summary

{2-3 sentence executive summary: what was the meeting about, what was decided, what's the main takeaway}

---

## {N}. {Topic Title}

{Detailed notes on this topic. Include:
- Context and background discussed
- Key points made by specific people (attribute statements)
- Data points, numbers, dates mentioned
- Sub-sections if the topic has distinct parts}

### {Sub-topic if needed}
- {Detail}
- {Detail}

> **"{Direct quote}"** — {Speaker Name}

{Repeat for each major topic}

---

## Decisions Made

| # | Decision | Made By | Impact | Notes |
|---|----------|---------|--------|-------|
| 1 | {Decision} | {Person} | {What it affects} | {Context} |

---

## New Stakeholders Identified

| Name | Role | Email | Context |
|------|------|-------|---------|
| {Name} | {Role} | {email or TBD} | {How they came up in discussion} |

*Omit this section if no new stakeholders were identified.*

---

## Action Items

| # | Action | Owner | Due | Status |
|---|--------|-------|-----|--------|
| 1 | {Ac
Read more
Ships withcoco

Meet Coco. A superintelligent agent framework powered by an advisory board of 389 world-class minds. Scale your AI assistant into a complete engineering department with 142 skills, 277 commands, and persistent state. Universal compatibility. Local privacy. Free and open source.

Get the whole plugin

Other skills on coco.