skills/extract-spark-meetings/SKILL.md
Extract meeting summaries from Spark Mail shared links. Use as `/extract-spark-meetings <url>` for single link or `/extract-spark-meetings` to batch-process unchecked links from links.md.
npx skillsauth add johnie/skills extract-spark-meetingsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Expected folder structure:
{current-directory}/
├── spark-meetings/ # Output directory (auto-created)
│ └── YYYY-MM-DD-*.md # Extracted meeting files
└── links.md # Optional: Links file for batch processing
Process one Spark Mail link:
/extract-spark-meetings https://share.sparkmailapp.com/...
Process all unchecked links from links.md:
/extract-spark-meetings
The links.md file should contain checkboxes:
- [ ] https://share.sparkmailapp.com/link1
- [x] https://share.sparkmailapp.com/link2 # Already processed
CRITICAL: Process URLs sequentially, one at a time. NEVER process multiple URLs in parallel.
For each URL:
Use Puppeteer MCP if available. Fallback: WebFetch with prompt "Extract all meeting content including participants, discussion points, and action items."
Extract in the original language of the meeting content. Use English for section headings.
Extract structured information:
Filename convention:
spark-meetings/YYYY-MM-DD-{meeting-title-slug}.md
If a file with the same name exists, append -2, -3, etc. before the extension.
Examples:
2024-03-15-quarterly-planning.md2024-03-15-quarterly-planning-2.mdFile format:
---
date: 2024-03-15
title: Quarterly Planning Meeting
participants:
- Alice Johnson
- Bob Smith
- Carol Davis
duration: 60 min
tags:
- planning
- quarterly
- strategy
spark_url: https://share.sparkmailapp.com/...
extracted_date: 2024-03-15
---
# Quarterly Planning Meeting
## Summary
Brief 2-3 sentence summary of the meeting's purpose and outcomes.
## Discussion Points
- **Q1 Goals Review**: Discussed progress on Q1 objectives...
- **Q2 Planning**: Outlined key initiatives for next quarter...
- **Resource Allocation**: Reviewed team capacity and hiring needs...
## Action Items
- [ ] @alice Prepare Q2 budget proposal (Due: 2024-03-20)
- [ ] @bob Schedule follow-up with design team (Due: 2024-03-18)
- [ ] @carol Draft hiring plan for Q2 (Due: 2024-03-22)
## Decisions Made
1. Approved $50K budget for marketing initiative
2. Decided to postpone feature X to Q3
3. Agreed on weekly check-ins starting April
## Next Steps
- Schedule Q2 kickoff meeting
- Review and approve budget by March 20
- Begin hiring process for two engineering roles
Tag each meeting according to type and topics. See references/tagging-guide.md for detailed tagging conventions.
Common tags:
standup, planning, review, retrospective, one-on-one, all-handsengineering, design, product, strategy, hiring, budgetweekly, monthly, quarterly, annualMark URL as checked (- [x]) in links.md only after both content extraction AND file write succeed. Never mark a URL as processed if either step failed.
links.md exists and contains the URL, update it. Otherwise skip.links.md, parse unchecked (- [ ]) URLs. Update checkbox after each successful extraction. If extraction fails, leave unchecked and continue.Report files created with paths and any URLs skipped with reasons.
tools
WordPress CLI operations for database management, plugins, themes, users, content, and site configuration. Use for migrations, bulk updates, user audits, content imports, or any wp-cli commands.
tools
Designs complex generic types, refactors `any` to strict alternatives, creates type guards and utility types, resolves TypeScript compiler errors, and explains type-level concepts. Use when the user asks about TypeScript (TS) types, generics, type inference, type guards, removing `any` types, strict typing, type errors, `infer`, `extends`, conditional types, mapped types, template literal types, branded/opaque types, `satisfies`, `unknown`, function overloads, declaration merging, strict mode, or utility types like `Partial`, `Record`, `ReturnType`, `Awaited`, and `NoInfer`.
tools
Build type-safe CLI applications with Stricli. Use when creating TypeScript CLIs with typed flags/positional args, multi-command routing, or automatic help generation. Stricli catches parameter errors at compile time. Use this whenever the user mentions CLI frameworks, command-line tools, argument parsing, or typed commands in TypeScript.
tools
Create, update, and review GitHub PRs. Commands: create [-v] [--draft], update [-v], review <number|url>. Generates structured PR bodies with conditional sections (Testing, Deployment, Screenshots). Requires gh CLI.