vault-meeting
SkillProductivityLets your agent turn a meeting transcript into organized notes with decisions, action items, and key points in your vault.
Available today. Use it from your connected AI after setup.
No other account needed.
Connect ahel once, and every AI you use reads what you have installed.
Then ask your AI: use the vault-meeting skill
About this capability
Process a meeting transcript, extract decisions, action items, and key discussion points into structured vault entries
What this skill tells your AI
The instructions your AI receives, as published by pass-agent/loomkin in .agents/skills/vault-meeting/SKILL.md and read by ahel’s review.
Process a meeting transcript and extract structured information into the knowledge base.
Team Mode (Large Transcripts)
If the transcript is very long (60+ minutes of conversation, or the user requests team processing), spawn a team to parallelize the work:
team_spawn(
team_name: "meeting-processing",
purpose: "Process a long meeting transcript into structured vault entries",
roles: [
%{name: "meeting-lead", role: "lead"},
%{name: "vault-researcher", role: "researcher"},
%{name: "vault-writer", role: "coder"},
%{name: "vault-reviewer", role: "reviewer"}
]
)
Team roles:
- meeting-lead: Orchestrates extraction, manages redaction judgment, coordinates. Reads the transcript, identifies decisions/action items/topics, delegates creation to the writer.
- vault-researcher: Queries vault for related context — prior decisions on discussed topics, open tasks for mentioned projects, recent checkins from attendees. Provides context to the lead and writer.
- vault-writer: Creates the meeting note, decision records, atomic notes, and kanban items with proper formatting and linking. Works from the lead's extraction.
- vault-reviewer: Validates output quality — checks for temporal language in notes, verifies link targets exist, ensures frontmatter is complete. Runs
vault_auditon created entries.
The researcher and writer can work in parallel on different aspects. For shorter meetings (under 60 minutes), skip team mode and process single-agent.
Step 0: Get the Transcript
Determine where the transcript is:
- Pasted directly: Use the text from the user's message
- Google Drive link or file ID:
fetch_content(source: "google_drive", identifier: "{file_id}") - URL:
fetch_content(source: "url", identifier: "{url}") - Local file reference: Use
vault_readorfile_readas appropriate
If the user says something like "process the meeting from Drive" without a specific file, use ask_user to get the file ID or link.
Step 1: Check for Prep
Search for a prep file matching the meeting date:
vault_search(query: "prep", entry_type: "meeting", tags: ["prep"])
If prep exists:
- Read it to understand the planned agenda
- Track which topics get covered during processing
- You will mark covered topics and report coverage at the end
Step 2: Handle Long Transcripts
If the transcript is very long (appears to be 20+ minutes of conversation), offload it to a context keeper:
context_offload(topic: "meeting-transcript-{date}", content: ...)
This preserves the full transcript at high fidelity without consuming your context window.
Step 3: Analyze the Transcript
Read through and identify:
Attendees — who spoke in the meeting
Decisions — commitments to a course of action. Look for:
- "Let's go with...", "We'll do...", "We decided..."
- Choosing between alternatives
- Agreeing on a direction
For each decision, assess:
- Who proposed it (who said "I think we should..." or "What if we...")
- Who decided (who gave final approval — "Sounds good", "Let's do it")
- Scope: company | product | project
- Reversibility: one-way (hard to undo — hiring, equity, pivots) | two-way (easy to change — features, tools)
Action items — be thorough. Look for ALL of these patterns:
- Explicit: "[Person] will...", "Can you...", "Take care of..."
- Volunteering: "I'll handle that", "Let me do...", "I can take..."
- Implied: If someone says they'll improve/fix/create something, that is a task
- Follow-ups: Items needing attention even without explicit assignment
Key discussion points — topics that got meaningful airtime
Summary — 2-3 sentence overview
Step 4: Redaction Judgment
This is a shared company vault. Apply judgment about what belongs in shared records.
Auto-redact (do it, no confirmation needed):
- Phone numbers, addresses, SSNs
- Financial figures (salaries, investment amounts)
- Passwords, API keys
Flag for user confirmation (use ask_user):
- Explicit removal requests ("off the record", "don't add that")
- Personal asides clearly unrelated to work
Omit entirely (don't even flag):
- HR/personnel matters — note "Personnel discussion - details in private records"
- Individual criticism of team members
When redacting, think holistically about context. A single-line gap surrounded by reactions is worse than no redaction — remove the full exchange.
Step 5: Create Entries
- Meeting note:
vault_create_entry(entry_type: "meeting", ...)with full extracted content - Decision records: For each decision:
vault_create_entry(entry_type: "decision", ...)— creates DR-YYYY-NNN automaticallydecision_log(node_type: "decision", ...)— adds to the live decision graph with confidence scorevault_link(source_path: meeting, target_path: decision, link_type: "decides")
- Action items:
vault_kanban(action: "add", ...)for each task, linked to the meeting - Atomic notes: If discussion surfaced a reusable concept or strategy, create it as a note and link to the parent topic
Step 6: Update Prep (if exists)
If a prep file existed:
vault_update_entryto check off covered topics (- [ ]to- [x])- Count coverage: "Discussed X/Y agenda topics"
- Add
processed: trueto frontmatter
Step 7: Refresh Dashboard
vault_dashboard(dashboard_type: "activity") then use the result to update the index entry.
Step 8: Report
Summarize what was created:
- Meeting note path
- Decision records created (list with DR numbers)
- Action items added (count, grouped by assignee)
- Prep coverage (if applicable)
- Any flagged redactions that need review
Signals
- GitHub stars
- 180
- Forks
- 28
- Last commit
- May 2026
Advanced
- Catalog kind
- skill
- Gateway key
vault-meeting- Source
- github.com/pass-agent/loomkin