meeting-processor/SKILL.md
This skill should be used when processing meeting transcripts to auto-detect meeting type (leadgen, partnership, coaching, internal) and extract type-specific structured analysis. Triggers on "process meeting", "analyze meeting", "meeting summary", or after syncing new Fathom/Granola transcripts.
npx skillsauth add glebis/claude-skills meeting-processorInstall 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.
Intelligent meeting transcript processor that auto-detects meeting type and applies type-specific extraction with optional interactive clarification.
/fathom --today, /granola export)YYYYMMDD-*.mdcoaching-session-summarizer skill insteadpip install openai pyyaml
Requires CEREBRAS_API_KEY environment variable (uses Cerebras API with llama-3.3-70b).
| Type | Description | Key Extractions | |------|-------------|-----------------| | leadgen | Sales/business development calls | Commitments, pain points, budget, timeline, decision makers, deal stage, sentiment | | partnership | Collaboration/partnership exploration | Opportunity overview, value proposition, strategic alignment, technical needs, fit assessment | | coaching | Coaching/mentoring sessions | Insights, decisions, action items, themes, emotional arc, techniques, session quality | | internal | Internal team meetings | Coming soon |
Run the processor, which auto-detects meeting type and asks clarifying questions:
python3 ~/.claude/skills/meeting-processor/scripts/process.py <transcript-file> --mode interactive
Interactive flow:
__INTERACTIVE_QUESTIONS__ markersprocess_with_answers.pyHandling interactive questions:
When the script exits with code 2, parse the output for questions JSON. Each question has:
question: The question textheader: Short label (used as answer key)options: Array of {label, description} for AskUserQuestionAfter collecting answers, create two temp files:
questions.json — the original questions context (includes partial_data, meeting_type, transcript_file)answers.json — map of {header_lowercase: selected_label}Then run:
python3 ~/.claude/skills/meeting-processor/scripts/process_with_answers.py questions.json answers.json
Extract only high-confidence information without user interaction:
python3 ~/.claude/skills/meeting-processor/scripts/process.py <transcript-file> --mode batch
Skip auto-detection:
python3 ~/.claude/skills/meeting-processor/scripts/process.py <transcript-file> --type leadgen
python3 ~/.claude/skills/meeting-processor/scripts/process.py <transcript-file> --type partnership
Analysis is appended to the transcript file as a ## Meeting Analysis section. Frontmatter is updated with meeting_type, processed_date, and processing_mode.
After the meeting analysis is complete (Step 1), automatically link any matching meeting-prep notes to the session note. This replaces the need to manually run /meeting-prep link.
Derive the meetings directory from the processed session note's parent directory (do not hardcode paths).
Extract session metadata from the processed note:
date from frontmatter (YYYYMMDD format)participants from frontmatter (list of names)participants field, extract names from the transcript header or attendee listSearch for matching prep notes:
find <MEETINGS_DIR> -name "YYYYMMDD-prep-*" -type f 2>/dev/null
Where YYYYMMDD is the session date.
Validate the match: For each candidate prep note, read its frontmatter and confirm:
date field matches the session dateparticipant field matches one of the session's participants (fuzzy: check both full name and first name, case-insensitive)session_note field is empty ("") — skip already-linked prep notesUpdate both files when a match is found:
In the prep note:
session_note: "[[session-note-filename]]" (without .md extension)status: doneIn the session note:
## See also section exists, add - [[YYYYMMDD-prep-participant-slug]] to it## Prep Note
- [[YYYYMMDD-prep-participant-slug]]
Report in the processing output which prep notes were linked, skipped, or not found.
MEETINGS_DIR from the session note path, not from hardcoded valuesconfig.yaml is available, read prep_notes.prefix (default: prep) and prep_notes.type_tag (default: meeting-prep)data-ai
--- name: disk-cleanup description: Scan and clean macOS caches, package-manager data, crash dumps, and app caches to reclaim disk space. Deterministic — a config registry (targets.json) plus two scripts (survey.py read-only, clean.py executor) do all the measuring and deleting; the agent only relays a compressed summary and makes the few human-judgment calls. IMPORTANT — use this skill whenever the user's request on macOS involves: freeing disk space, cleaning/clearing caches, "disk is full", "
development
Generate and edit images using Google's Gemini image generation models (Nano Banana family). Supports style presets, platform-specific sizing (YouTube/slides/blog), variants, image editing via inlineData, reference images for style transfer, and organized output with metadata. Default model is Nano Banana 2 (gemini-3.1-flash-image-preview). Key is auto-decrypted via SOPS.
development
--- name: agency-docs-updater description: End-to-end pipeline for publishing Claude Code lab meetings. Accepts optional args: date (YYYYMMDD, "yesterday", "today") and lab number (e.g. "04"). Examples: "yesterday 04", "20260420 05", "04" (today, lab 04), "" (today, auto-detect lab). --- # Agency Docs Updater Execute ALL steps automatically in sequence. Only pause if a step fails and cannot be recovered. Read `references/learnings.md` before starting for known pitfalls. **Configuration**: pat
tools
This skill should be used when applying proper typography to prose text or files in Russian, English, German, or French — smart quotes per locale («ёлочки», “curly”, „Gänsefüßchen“, « guillemets »), correct dashes (тире, em/en dash, Gedankenstrich, tiret), non-breaking spaces, ranges, ellipsis, and French espaces insécables before ! ? ; :. Fully deterministic via a pinned typograf-based CLI; never apply these rules by hand. Triggers on "типографика", "typograf", "оттипографь", "smart quotes", "fix typography", "неразрывные пробелы".