meeting-prep-cc
Meeting Prep (Claude Code Edition)
Generate a meeting prep brief from your Obsidian vault. Researches participants, surfaces vault history, builds a prioritized agenda, and generates sharp questions. No autonomy — you run it, you get your brief.
How to Use
Open Claude Code in your vault directory and say:
Run the Meeting Prep skill. Meeting with [name] from [company]. Type: [sales/WRS/strategy/partnership/interview]. Time: [date/time].
INTAKE
Check that the user has provided:
- Participant name(s) and company
- Meeting type (WRS / Sales / Strategy / Partnership / Interview / Other)
- Meeting time/date
- Optional: prior notes, last meeting summary
If meeting type is missing, ask:
What type of meeting is this?
WRS client / Sales / Strategy / Partnership / Interview / Other
ANALYZE
Run these steps in order. Capture all output before formatting the brief.
Step 1 — Vault Search
VAULT="${VAULT_PATH:-/root/obsidian-vault}"
NAME="[PARTICIPANT_NAME]"
COMPANY="[COMPANY_NAME]"
echo "=== VAULT CONTEXT ==="
grep -rl "$NAME\|$COMPANY" "$VAULT" \
--include="*.md" \
-not -path "*/.git/*" \
-not -path "*/.obsidian/*" \
| head -10 | while read f; do
echo "--- ${f##$VAULT/} ---"
grep -n "$NAME\|$COMPANY" "$f" | head -5
done
Step 2 — Prior Meeting Notes
VAULT="${VAULT_PATH:-/root/obsidian-vault}"
find "$VAULT/bambf/meeting-prep" -name "*.md" 2>/dev/null \
| xargs grep -l "$NAME\|$COMPANY" 2>/dev/null \
| sort -r | head -3 | while read f; do
echo "--- Prior brief: ${f##$VAULT/} ---"
head -30 "$f"
done
Step 3 — Open Commitments Check
VAULT="${VAULT_PATH:-/root/obsidian-vault}"
grep -rn "TODO\|action item\|follow up\|promised" "$VAULT" \
--include="*.md" \
-l 2>/dev/null \
| xargs grep -l "$NAME\|$COMPANY" 2>/dev/null \
| head -5 | while read f; do
echo "--- ${f##$VAULT/} ---"
grep -n "TODO\|action item\|follow up\|promised" "$f" | grep -i "$NAME\|$COMPANY" | head -5
done
OUTPUT
Format the brief using this structure (see references/brief-template.md):
# Meeting Prep: [Name] | [Date] [Time]
Meeting type: [type]
Their role: [role at company]
Relationship stage: [new / existing / lapsed]
---
WHY THIS MEETING MATTERS
[1-2 sentences on stakes, objective, desired outcome]
3 PRIORITIES FOR THIS CALL
1. [Priority 1]
2. [Priority 2]
3. [Priority 3]
CONTEXT FROM VAULT
[Pulled notes, open items, prior commitments — or "No prior history found"]
QUESTIONS TO ASK
1. [Question referencing research]
2. [Question]
3. [Question]
4. [Question]
5. [Question]
WATCH FOR
[Known objections, sensitivities, open loops]
DESIRED OUTCOME
[What does success look like in one sentence?]
NEXT STEP TO PROPOSE
[Specific: "schedule X," "send Y," "agree on Z"]
Then: Save brief to bambf/meeting-prep/YYYY-MM-DD-[lastname]-prep.md
Then: Print 3-line summary:
WHO: [Name], [role] at [company]
WHY IT MATTERS: [1 sentence]
TOP QUESTION: [The single sharpest question to ask]
Reference Files
references/brief-template.md— full brief formatreferences/meeting-types.md— agenda by meeting typereferences/question-banks.md— question sets by context
Requirements
- Claude Code with bash tool access
- Vault with bambf/ structure
- No external APIs required
More from brianrwagner/ai-marketing-claude-code-skills
de-ai-ify
Remove AI-generated jargon and restore human voice to text. Built from analyzing 1,000+ AI vs human content pieces.
94homepage-audit
Full conversion audit for any homepage or landing page. Use when someone asks to "review my homepage," "audit my landing page," "why isn't my page converting," "check my website," or wants feedback on their marketing page. Requires URL or screenshot before proceeding.
88tweet-draft-reviewer
Review tweet drafts in Claude Code against 8 voice rules. Scores 1-10, breaks down every rule, and rewrites anything that scores below 7.
81