| name | process-meeting |
| description | Processes a meeting into a structured Obsidian note (YYYY-MM-DD_Meeting-Name.md). Use this skill whenever the user wants to capture, process, or document a meeting — whether they have a transcript (docx/txt/vtt file) or are working from memory. Trigger on phrases like "process meeting", "document meeting", "meeting notes", "process transcript", or any request to turn meeting content into a vault note. Always use this skill when a meeting is involved — don't try to do it ad-hoc without the skill.
|
Process Meeting Skill
Processes a meeting and supplements an existing meeting note in the vault (or creates one).
Identifies the meeting, loads available inputs (brain dump, prepared note, transcript),
enriches the note with structured content, updates hub files, syncs the daily note,
and cleans up source files.
Step 0 — Identify the meeting
Before anything else, determine which meeting is to be processed. Search in this order:
-
Daily note brain dump — Read today's daily note (01_ACTIVE/Daily Notes/YYYY-MM-DD.md).
Look for a meeting name mentioned in notes or any explicit reference to a meeting today.
-
INBOX note — Glob 00_INBOX/**/*.md and scan for a note that looks like a
meeting capture (title contains a date or person's name, or contains an agenda list).
-
Existing meeting note — Glob 03_AREAS/**/*.md for a file dated today or recently
that looks like a prepared meeting note (has an Agenda or Attendees field).
If multiple candidates are found, list them briefly and ask the user which one to process.
If none are found, ask the user for the meeting name / date before continuing.
Once identified, note:
- Meeting type (1:1, team meeting, external, etc.)
- Participants
- Date
- File path (this is the file that will be supplemented, not replaced)
Check for meeting-specific instructions:
After identifying the target folder, check whether a CLAUDE.md exists in that folder.
If found, read it and follow its instructions throughout the workflow.
Step 1 — Find and read the transcript
After identifying the meeting, look for a transcript in this order:
-
Mentioned in the prompt — the user explicitly named a file path. Use it directly.
-
Uploaded in this chat — check for any recently added .docx, .txt, or .vtt file.
-
Downloads folder — search the user's Downloads folder for a .docx, .txt, or .vtt
file whose name matches the meeting (by participant name, date, or topic keywords).
Ask the user to confirm the correct file if multiple match.
-
No transcript available — proceed in memory-only mode (Step 2B).
Read the transcript:
Step 2A — Extract content (with transcript)
Agenda structure:
- If the meeting note already has an Agenda, use it as the skeleton. Map transcript content onto topics.
- If no agenda exists, derive topics from the transcript based on natural topic shifts.
- Mark any agenda item not covered as
*(not discussed)*.
Decisions — ONLY include this section if an explicit decision was made (someone said "we decided", "we agreed to", etc.). Implicit conclusions do not count.
Tasks — STRICT RULE: only capture tasks where a specific person verbally commits in the transcript.
| Category | When to use |
|---|
| My Tasks — Today 🔴 | You commit to something due today or urgent |
| My Tasks — This Week 📅 | You commit to something for this week |
| My Tasks — Next Week 📅 | You commit to something for next week |
| Waiting For ⌛ | Someone else commits to delivering something you need |
| Delegated 👥 | You explicitly ask someone to own a task and they accept |
| Agenda Items 📌 | You say you need to raise a topic in a different meeting |
What does NOT count:
- Logical next steps not spoken aloud
- Topics discussed without a named owner
- Exploratory ideas or suggestions without acceptance
- Anything you have to infer rather than hear
Notes — detailed, factual summary per agenda item as nested bullet points.
- Write what was said/concluded, not who said it.
- Attribution in parentheses is acceptable when it adds meaningful context. Keep it rare.
Step 2B — Extract content (from memory only)
Use the brain dump, INBOX note, and any content already in the prepared meeting note.
Same extraction logic as 2A — decisions only if explicit, tasks only if committed.
Step 3 — Preview in chat — REQUIRED before writing anything
Present a structured preview:
## Preview: [Meeting Name] — YYYY-MM-DD
### Agenda
- Topic A
- Sub-topic A1
- Topic B *(not discussed)*
### Decisions
*(none)* — or list them
### Tasks
**My Tasks — Today**
- [ ] ...
**My Tasks — This Week**
- [ ] ...
**Waiting For**
- [ ] ⌛ Name | ...
**Delegated**
- [ ] 👥 Name | ...
**Agenda Items**
- [ ] 📌 @Name | ...
Then say: "Does this look right? I'll then update the meeting note, hub files, and daily note."
Wait for confirmation. Apply all corrections before proceeding.
Step 4 — Supplement or create the meeting note
If a prepared meeting note was found in Step 0: supplement it in place.
If no prepared meeting note was found: create a new file using the structure below.
Fill in or replace these sections:
4a · Notes section
Write detailed notes per agenda item as nested bullet points.
Structure: top-level agenda items → ### Heading, sub-items → #### Heading.
4b · Tasks section
## Tasks
### 🔴 My Tasks — Today
- [ ] 🔴 | Topic | Description | [[meeting-link]] | YYYY-MM-DD
### 📅 My Tasks — This Week
- [ ] 📅 | Topic | Description | [[meeting-link]] | YYYY-MM-DD
### 📅 My Tasks — Next Week
- [ ] 📅 | Topic | Description | [[meeting-link]] | YYYY-MM-DD
### ⏳ Waiting For
- [ ] ⌛ Name | Topic | Description | [[meeting-link]] | Due date
### 👥 Delegated
- [ ] 👥 Name | Topic | Description | [[meeting-link]] | Due date
### 📌 Agenda Items
- [ ] 📌 @Name | Topic | Source | [[meeting-link]]
Omit any sub-section that has no items. If no tasks at all: *No tasks.*
4c · Decisions section
Add only if decisions were explicitly made. Insert before Tasks.
Step 5 — Update hub files
After supplementing the meeting note, update relevant hub files in 03_AREAS/People/.
What to update:
-
📌 Next Meeting queue — Add topics to raise in the next session with this person.
Format: - [ ] 📌 Topic | Context | [[current-meeting-link]]
-
Tasks (👥 / ⌛) — Add any delegated or waiting-for items for this person.
-
Session link — Add a link to the processed meeting note in the session log section.
Only update sections that are relevant. Do not restructure the hub file.
Step 6 — Update the daily note
Find today's daily note in 01_ACTIVE/Daily Notes/YYYY-MM-DD.md.
Read the Daily Note template first (04_RESOURCES/Templates/Daily Note.md) to match section names.
Updates:
- Under
## Notes: add - Meeting processed: [[YYYY-MM-DD_Meeting-Name]]
- Add 2–4 bullet points with the most important takeaways
- Your own tasks → under
### 🔴 Heute or ### 📅 Diese Woche
- Waiting For → under
### ⏳ Waiting For
- Delegated → under
### 👥 Delegiert (or Hub file if long-running)
- Agenda Items → under
### 📌 Agenda Items
Use the Section Anchoring Rule: anchor edits at the target section's own header plus the last existing item — never at the next section's header.
Step 7 — Cleanup
After all content has been transferred and confirmed:
-
Archive the transcript — move it to 06_ARCHIVE/YYYY/MM_Month/Transcripts/ with a standardized name. Never delete it.
Archive filename format: YYYY-MM-DD_[Meeting-Title]_[Participants].[ext]
- Use the meeting date
- Short, descriptive meeting title (2–4 words, kebab-case)
- Participants as dash-separated list (first names only)
-
Archive the INBOX note — if a capture note was found in 00_INBOX/, move it to 06_ARCHIVE/YYYY/MM_Month/Notes/. Never delete it.
Confirm to the user: "Cleaned up: transcript archived, inbox note archived."
Meeting note structure reference
When creating a meeting note from scratch:
---
tags: [meeting-notes, YYYY-MM-DD]
up: "[[03_AREAS/Organization/Meeting-Type]]"
---
# YYYY-MM-DD — Meeting Name
**Date:** YYYY-MM-DD
**Attendees:** Name, Name, ...
---
## Agenda
- [[#Topic A|Topic A]]
- [[#Topic B|Topic B]]
---
## Decisions
*(omit if none)*
---
## Tasks
*(see Step 4b for structure)*
---
## Notes
### Topic A
- Bullet point
### Topic B
*Not discussed.*
File location routing:
| Meeting type | Folder |
|---|
| 1:1 with direct report | 03_AREAS/People/Team/[Name]/ |
| 1:1 with peer / colleague | 03_AREAS/People/Peers/[Name]/ |
| 1:1 with leadership | 03_AREAS/People/Leadership/[Name]/ |
| Recurring team meeting | 03_AREAS/Organization/[MeetingType]/ |
| General / external | 03_AREAS/Organization/ |
Quality checks before finishing
- No invented tasks
- Decisions section only present if explicitly flagged in source material
- All internal references use
[[WikiLinks]] — never backtick-wrapped
- File name uses ISO date prefix:
YYYY-MM-DD_
- Notes written factually — no "X said that..." phrasing
- Hub file updated with next-meeting topics and delegated tasks
- Daily note updated with meeting link, key points, and your own tasks
- Transcript archived with standardized name
- Inbox note archived after content is transferred