/capture-meeting
Process meeting notes or transcript to extract decisions, commitments, and insights. Use when user shares transcript or says \"capture this meeting\", \"here are my notes from the call\". See also: `meeting-prep` for pre-call briefings; `follow-up-draft` for post-meeting emails.
Claude Code
$ npx -y skills add kbanc85/claudia --skill capture-meeting --agent claude-code
Codex
$ npx skills add kbanc85/claudia --skill capture-meeting -a codex -y
Cursor
$ npx skills add kbanc85/claudia --skill capture-meeting -a cursor -y
Gemini CLI
$ npx skills add kbanc85/claudia --skill capture-meeting -a gemini-cli -y
GitHub Copilot
$ npx skills add kbanc85/claudia --skill capture-meeting -a github-copilot -y
OpenCode
$ npx skills add kbanc85/claudia --skill capture-meeting -a opencode -y
Windsurf
$ npx skills add kbanc85/claudia --skill capture-meeting -a windsurf -y
SKILL.md
capture-meeting.SKILL.mdname: capture-meeting
description: "Process meeting notes or transcript to extract decisions, commitments, and insights. Use when user shares transcript or says \"capture this meeting\", \"here are my notes from the call\". See also: `meeting-prep` for pre-call briefings; `follow-up-draft` for post-meeting emails."
effort-level: medium
Capture Meeting
Process meeting notes or transcript to extract decisions, commitments, and insights.
Trigger
- "Here's a transcript from [client/person]"
- "Process these meeting notes"
- "Here are my notes from the call with [person]"
- "Capture this meeting"
- `/capture-meeting`
Input
User provides one of:
- Full transcript (from Otter, Granola, etc.)
- Meeting notes (manual)
- Voice memo summary
- Memory/verbal recap
Processing Steps
1. File the Source Material (MANDATORY)
**Always file the raw transcript/notes FIRST.** This is not optional. Source preservation creates provenance: every extracted fact can trace back to where it came from.
Call the `memory_file` MCP tool with:
- `filename`: "YYYY-MM-DD-[person]-[topic].md"
- `source_type`: "transcript"
- `summary`: "Brief 1-line summary of the meeting"
- `about`: ["participant1", "participant2"]
- `content`: The FULL raw transcript/notes text (do not summarize)
The file is automatically routed to the right folder:
- `people/sarah-chen/transcripts/2026-02-04-kickoff.md`
- `clients/acme-corp/transcripts/2026-02-04-quarterly.md`
**Even for brief notes:** If the user shared more than a few sentences, file it. Better to have it than wish you did.
2. Identify Participants
- Who was in the meeting?
- Which person files to update?
- Any new people to track?
3. Extract Key Information (Agent-Accelerated)
**Preferred: Dispatch Document Processor for extraction.** Instead of composing memory operations manually (which takes 2+ minutes of thinking time), dispatch the Document Processor agent (Haiku) with the transcript content and `extraction_type: "memory_operations"`. The agent returns ready-to-store operations in ~10-20 seconds.
**Agent pipeline workflow:**
1. Dispatch Document Processor (Haiku) with:
- The full transcript text
- extraction_type: "memory_operations"
- Context: participant names, meeting topic, date
2. Agent returns memory_operations[] array with:
- Facts, preferences, observations
- Commitments with deadlines
- Entity definitions
- Relationship links
3. Review agent output (judgment layer):
- Verify commitment wording is accurate
- Check importance scores are reasonable
- Confirm entity names match existing entities
- Adjust or remove any questionable extractions
4. Call the `memory_batch` MCP tool with the reviewed operations array
**Fallback: Manual extraction** (use when agent is unavailable or for very short notes)
**Decisions Made:**
- What was decided?
- Who made the decision?
- Any conditions or context?
**Commitments Created:**
- What did you promise? (→ `context/commitments.md`)
- What did they promise? (→ `context/waiting.md`)
- Deadlines (explicit or implied)
**Blockers Surfaced:**
- What's in the way?
- Who can unblock?
**Sentiment Signals:**
- Enthusiasm, concern, resistance
- Energy level
- Relationship health indicators
**Key Topics:**
- Main themes discussed
- Important context shared
4. Link Provenance
After extracting memories (facts, commitments) via the `memory_batch` or `memory_remember` MCP tools:
Call the `memory_file` MCP tool with the `memory_ids` parameter set to the IDs of the memories you extracted. This links the stored transcript to the memories extracted from it, creating the provenance chain: memory -> document -> file on disk.
Now the user can ask "where did you learn that Sarah prefers async communication?" and you can point to the exact transcript.
5. Downstream Updates
After extracting information, propagate changes to the files that depend on it. These updates ensure that summaries stay in sync with source material.
5a. Update person files
For each participant in the meeting:
1. Check if `people/[name-slug].md` exists 2. If it exists:
- Update "Last Contact" date to today
- Add this meeting to "Our History" or interaction log
- Update "Current Context" if new information was shared
- Add any new commitments to the person's section
3. If it does not exist and this person seems important (mentioned multiple times, has commitments, or has a working relationship):
- Offer to create a new person file: "I'd like to create a file for [person]. They [reason]. Should I?"
5b. Update commitment and waiting files
- Add new commitments to `context/commitments.md` (ask for confirmation on wording and deadline)
- Add new waiting items to `context/waiting.md`
- If memory MCP tools are available, also store via the `memory_remember` MCP tool
5c. Update workspace files (if applicable)
Check if this meeting belongs to an active workspace:
1. Does the meeting topic match a workspace in `workspaces/`? 2. Is a meeting participant associated with a workspace project?
If yes:
- File the meeting notes in `workspaces/[slug]/meetings/`
- Update `workspaces/[slug]/Dashboard.md` if the meeting changed project status or phase
- If the meeting created new deliverables or items, add them to the relevant workspace subdirectory
If no workspace match, file in the standard location per the document store routing.
6. Synthesize
Create a summary that captures:
- What happened (brief)
- What was decided
- What's next (actions)
- How it went (sentiment)
Output Format
**📋 Meeting Capture: [Meeting Name/Person]**
### [Date]
**Attendees:** [Names]
**Duration:** [Approximate]
**Context:** [Brief — what was this meeting about?]
### 📝 Summary
[2-3 sentence overview of what happened]
### 🔨 Decisions Made
- [Decision] — decided by [who]
- [Decision]
### ✅ Action Items
**You:**
- [ ] [Action] — by [date]
- [ ] [Action] — by [date]
**The
Read more
name: capture-meeting description: "Process meeting notes or transcript to extract decisions, commitments, and insights. Use when user shares transcript or says \"capture this meeting\", \"here are my notes from the call\". See also: `meeting-prep` for pre-call briefings; `follow-up-draft` for post-meeting emails." effort-level: medium
Capture Meeting
Process meeting notes or transcript to extract decisions, commitments, and insights.
Trigger
- "Here's a transcript from [client/person]"
- "Process these meeting notes"
- "Here are my notes from the call with [person]"
- "Capture this meeting"
- `/capture-meeting`
Input
User provides one of:
- Full transcript (from Otter, Granola, etc.)
- Meeting notes (manual)
- Voice memo summary
- Memory/verbal recap
Processing Steps
1. File the Source Material (MANDATORY)
**Always file the raw transcript/notes FIRST.** This is not optional. Source preservation creates provenance: every extracted fact can trace back to where it came from.
Call the `memory_file` MCP tool with:
- `filename`: "YYYY-MM-DD-[person]-[topic].md"
- `source_type`: "transcript"
- `summary`: "Brief 1-line summary of the meeting"
- `about`: ["participant1", "participant2"]
- `content`: The FULL raw transcript/notes text (do not summarize)
The file is automatically routed to the right folder:
- `people/sarah-chen/transcripts/2026-02-04-kickoff.md`
- `clients/acme-corp/transcripts/2026-02-04-quarterly.md`
**Even for brief notes:** If the user shared more than a few sentences, file it. Better to have it than wish you did.
2. Identify Participants
- Who was in the meeting?
- Which person files to update?
- Any new people to track?
3. Extract Key Information (Agent-Accelerated)
**Preferred: Dispatch Document Processor for extraction.** Instead of composing memory operations manually (which takes 2+ minutes of thinking time), dispatch the Document Processor agent (Haiku) with the transcript content and `extraction_type: "memory_operations"`. The agent returns ready-to-store operations in ~10-20 seconds.
**Agent pipeline workflow:**
1. Dispatch Document Processor (Haiku) with: - The full transcript text - extraction_type: "memory_operations" - Context: participant names, meeting topic, date 2. Agent returns memory_operations[] array with: - Facts, preferences, observations - Commitments with deadlines - Entity definitions - Relationship links 3. Review agent output (judgment layer): - Verify commitment wording is accurate - Check importance scores are reasonable - Confirm entity names match existing entities - Adjust or remove any questionable extractions 4. Call the `memory_batch` MCP tool with the reviewed operations array
**Fallback: Manual extraction** (use when agent is unavailable or for very short notes)
**Decisions Made:**
- What was decided?
- Who made the decision?
- Any conditions or context?
**Commitments Created:**
- What did you promise? (→ `context/commitments.md`)
- What did they promise? (→ `context/waiting.md`)
- Deadlines (explicit or implied)
**Blockers Surfaced:**
- What's in the way?
- Who can unblock?
**Sentiment Signals:**
- Enthusiasm, concern, resistance
- Energy level
- Relationship health indicators
**Key Topics:**
- Main themes discussed
- Important context shared
4. Link Provenance
After extracting memories (facts, commitments) via the `memory_batch` or `memory_remember` MCP tools:
Call the `memory_file` MCP tool with the `memory_ids` parameter set to the IDs of the memories you extracted. This links the stored transcript to the memories extracted from it, creating the provenance chain: memory -> document -> file on disk.
Now the user can ask "where did you learn that Sarah prefers async communication?" and you can point to the exact transcript.
5. Downstream Updates
After extracting information, propagate changes to the files that depend on it. These updates ensure that summaries stay in sync with source material.
5a. Update person files
For each participant in the meeting:
1. Check if `people/[name-slug].md` exists 2. If it exists:
- Update "Last Contact" date to today
- Add this meeting to "Our History" or interaction log
- Update "Current Context" if new information was shared
- Add any new commitments to the person's section
3. If it does not exist and this person seems important (mentioned multiple times, has commitments, or has a working relationship):
- Offer to create a new person file: "I'd like to create a file for [person]. They [reason]. Should I?"
5b. Update commitment and waiting files
- Add new commitments to `context/commitments.md` (ask for confirmation on wording and deadline)
- Add new waiting items to `context/waiting.md`
- If memory MCP tools are available, also store via the `memory_remember` MCP tool
5c. Update workspace files (if applicable)
Check if this meeting belongs to an active workspace:
1. Does the meeting topic match a workspace in `workspaces/`? 2. Is a meeting participant associated with a workspace project?
If yes:
- File the meeting notes in `workspaces/[slug]/meetings/`
- Update `workspaces/[slug]/Dashboard.md` if the meeting changed project status or phase
- If the meeting created new deliverables or items, add them to the relevant workspace subdirectory
If no workspace match, file in the standard location per the document store routing.
6. Synthesize
Create a summary that captures:
- What happened (brief)
- What was decided
- What's next (actions)
- How it went (sentiment)
Output Format
**📋 Meeting Capture: [Meeting Name/Person]** ### [Date] **Attendees:** [Names] **Duration:** [Approximate] **Context:** [Brief — what was this meeting about?] ### 📝 Summary [2-3 sentence overview of what happened] ### 🔨 Decisions Made - [Decision] — decided by [who] - [Decision] ### ✅ Action Items **You:** - [ ] [Action] — by [date] - [ ] [Action] — by [date] **The
Terminal-based AI chief of staff. Remembers relationships, tracks commitments, helps you think strategically. Runs on Claude Code.
Other skills on claudia.
More skills from other plugins.
i-have-adhd
Shape output for a reader with ADHD: lead with the next action, number multi-step work, restate state across turns, suppress…
distilly
Set up the owner profile so a personal agent knows who it works for (first-run setup, \"get to know me\"), or distill colleague,…
Questions about capture-meeting.
- Which coding agents can use capture-meeting?
- capture-meeting installs in Claude Code, Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode and Windsurf with the skills CLI, using each agent's flag shown on this page. Flowy's auto-invocation, which fires a skill when your prompt matches, runs in Claude Code only.

