6.9 KiB
Executable File
Meeting Research Prompt
Standalone prompt for pre-meeting research. Reads selected vault notes (People profiles, prior meeting notes, project docs) and the meeting note, then writes a structured research briefing into the meeting note so the user is prepared before the meeting starts.
Invocation pattern:
claude --dangerously-skip-permissions 'Follow the instructions in /abs/path/Meeting Research Prompt.md. Meeting note: Meetings/2026-03-25 - Weekly Team Sync.md. Research notes: People/Alice Smith.md, Meetings/2026-03-18 - Weekly Team Sync.md, Projects/Alpha.md.'
Optional parameters:
People Folder:— folder name for People notes (default:People)Additional instructions:— free-text user instructions appended to the invocation
Step 1: Parse Invocation Parameters
Extract from the calling message:
Meeting note:→ vault-relative path to the meeting note fileResearch notes:→ comma-separated list of vault-relative paths to context notesPeople Folder:→ folder for People notes (optional)Additional instructions:→ free-text guidance from the user (optional)
Vault root: The current working directory is the vault root. All vault-relative paths in the calling message resolve from there.
Path resolution: Try each path as-is first. If not found, prepend vault root and try again. If a research note is not found, skip it with a warning rather than failing — the user may have renamed or moved it.
Step 2: Read Meeting Note
Use the Read tool to open the meeting note. Extract from frontmatter:
| Field | Purpose |
|---|---|
meeting_subject |
Meeting title for context |
meeting_date |
Meeting date |
meeting_start |
Start time |
meeting_end |
End time |
meeting_invitees |
Attendee list (wikilinks) |
is_recurring |
Whether this is a recurring meeting |
Error conditions:
- File does not exist → error: "Meeting note not found: [path]. Check the path and try again."
Step 3: Read Research Notes
Use the Read tool to open each research note. For each note, capture:
- Frontmatter metadata — any structured data (role, title, email, dates, etc.)
- Body content — the full note content
Categorize each note by type:
- Person note — has frontmatter with name/role/email fields, or is in the People folder
- Meeting note — has
meeting_subjectandmeeting_datein frontmatter - Project/other note — everything else
Step 4: Gather Additional Context
If a People Folder was provided, cross-reference meeting invitees with People notes:
- Parse
meeting_inviteeswikilinks from the meeting note - For any invitee whose People note was NOT already included in the research notes, do a quick read of their note (if it exists) to get their role/title
- This provides baseline context on all attendees without requiring the user to manually select every person
Step 5: Follow Additional Instructions
If Additional instructions were provided, incorporate them into the research. These may include:
- Specific questions to answer about attendees or topics
- Directions to focus on particular aspects (e.g., "focus on project status updates from the last month")
- Requests to cross-reference with other vault content
- Context about why this research is needed
Treat additional instructions as high-priority guidance that shapes the research output.
Step 6: Generate Research Briefing
Create a structured research briefing with these sections:
Briefing Structure
## Research
### Attendees
| Name | Role | Context |
|------|------|---------|
| [[Name]] | Title / Team | Key context from People note or prior meetings |
### Background
[2-4 paragraphs synthesizing relevant context from the research notes. Connect the dots between attendees, prior meetings, and project context. Focus on what the user needs to know going into this meeting.]
### Prior Meeting Outcomes
- **YYYY-MM-DD — Meeting Subject** — Key outcomes, open action items, unresolved topics
- [One bullet per prior meeting note provided]
### Open Questions
- [Questions the user might want to raise based on the research]
- [Unresolved items from prior meetings]
- [Gaps in context that could be clarified in this meeting]
Briefing Guidelines
- Be actionable: Focus on information that helps the user prepare, not exhaustive summaries
- Wikilink all names: Wrap ALL person names in
[[Name]]wikilinks - Connect the dots: Don't just summarize each note in isolation — identify relationships, continuity from prior meetings, and evolving topics
- Highlight changes: If a person's role or a project's status has changed since the last meeting, call it out
- Respect the user's time: Keep it scannable. Use tables for structured data, bullets for lists, and bold for emphasis
- Omit empty sections: If there are no prior meetings to reference, skip "Prior Meeting Outcomes". If the attendee list is trivial (1:1 with someone well-known), keep the table minimal
- Additional instructions first: If the user provided specific instructions, make sure those are addressed prominently in the briefing
Quality Checklist
Before writing the briefing, verify:
- ALL person names wrapped in
[[Name]]wikilinks - Attendee table includes all meeting invitees (not just those in research notes)
- Prior meeting outcomes include any open action items still relevant
- Additional user instructions have been addressed
- No important context from the research notes is missing
Step 7: Write Research to Meeting Note
Use the Edit tool to insert the research briefing into the meeting note.
Placement: Insert the ## Research section after the frontmatter closing --- and any existing template content (like attendee lists or meeting links). Place it BEFORE any ## Notes, ## Summary, or other user/LLM-generated sections.
If a ## Research section already exists: Replace it entirely with the new briefing. Preserve all other sections.
Strategy:
- Read the current meeting note content
- Identify the insertion point (after frontmatter/template header, before other content sections)
- If
## Researchalready exists, replace only that section - If it doesn't exist, insert the new section at the appropriate location
- Use a single Edit call to write the briefing
Step 8: Update Frontmatter
After successfully writing the research briefing, update the meeting note frontmatter:
The research_notes field should already be set by the plugin (listing the selected notes as wikilinks). No additional frontmatter changes are needed.
Step 9: Report Results
Summarize to the user:
Meeting research complete for: [meeting note filename]
Research sources:
- [N] vault notes analyzed
- [N] attendees profiled
Sections written:
- Attendees ([N] people)
- Background ([N] paragraphs)
- Prior Meeting Outcomes ([N] meetings referenced)
- Open Questions ([N] items)