meeting-followup
Skill0 starsChanged 18 days agoMITView on GitHub
Automates post-meeting follow-up after any sales or customer call. Pulls the meeting transcript from Fireflies, cross-references HubSpot deal/contact data and Apollo contact enrichment, runs a fact-check layer, and produces three deliverables: a plain-text follow-up email draft, HubSpot deal notes with stage/amount recommendations, and an internal debrief with buying signals, objections, competitor mentions, and next moves. Use this skill when the user says "follow up on my meeting with [company]", "meeting follow-up", "post-meeting", "write follow-up for [company]", "summarize my call with...", "meeting debrief", "what happened on my call with...", "draft follow-up email for [company]", "post-call notes", "follow up from today's call", "write a recap for [company]", or any variation of wanting follow-up materials after a sales or customer conversation.
We split this skill into the rules it gives an agent
24 rules. 0 are common, 24 are distinctive, and 0 are very specific to this project.
0
Common
Most of the 6 edited versions we read keep these.
24
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 25
Every word in the follow-up must trace back to something specific from the call or the deal history.
- Distinctive: line 38
If the user names a company or person, use that as the search term
- Distinctive: line 39
If the user says "my last meeting" or "today's call", search by recency
- Distinctive: line 40
If ambiguous, search Fireflies for recent calls and present options
- Distinctive: line 49
Run all four data pulls simultaneously:
- Distinctive: line 57
If no results by company name, try:
- Distinctive: line 75
Search HubSpot for the company and associated contacts:
- Distinctive: line 110
If prior meetings exist with this company:
- Distinctive: line 112
Check which ones were completed vs.
- Distinctive: line 118
Before generating any output, run these verification checks:
- Distinctive: line 122
If a name or title differs, use the most authoritative source (Apollo for titles, HubSpot for contact ownership)
- Distinctive: line 167
If previous email threads exist in HubSpot, match that tone and formality level
- Distinctive: line 170
If the call was technical/operational, keep the email operational
- Distinctive: line 171
If the call was executive/strategic, keep the email high-level
- Distinctive: line 172
Use the prospect's first name naturally
- Distinctive: line 173
Keep it under 150 words. Shorter is better.
- Distinctive: line 220
Only recommend a stage change if the call clearly warrants it
- Distinctive: line 311
Ask if the meeting was recorded on a different platform (Fathom, Zoom, etc.)
- Distinctive: line 320
Ask the user to pick the correct one
- Distinctive: line 321
Default to the most recent if user says "the latest one"
- Distinctive: line 331
Check if the call was cut short or if it was intentionally brief
- Distinctive: line 340
If any are missing, tell the user which ones are needed and proceed with what's available.
- Distinctive: line 348
Be honest in the debrief: If the call went badly, say so.
- Distinctive: line 352
Track commitments ruthlessly: If Solum promised something on a prior call and didn't deliver, flag it immediately.
“Common” is measured: kept by at least 6 in 10 of the 6 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Meeting Follow-Up
Generate a complete post-meeting follow-up package: email draft, HubSpot notes, and internal debrief. All grounded in what was actually said on the call, cross-checked against CRM and enrichment data.
Core Principle
Every word in the follow-up must trace back to something specific from the call or the deal history. No filler. No generic "great talking to you" language that could apply to any meeting. The prospect should read the email and think "this person was actually paying attention." The internal debrief should be honest, not optimistic.
The Workflow
Execute these phases in order. Some sub-steps within phases run in parallel.
Phase 0: Identify the Meeting
Determine which meeting the user wants to follow up on:
- If the user names a company or person, use that as the search term
- If the user says "my last meeting" or "today's call", search by recency
- If ambiguous, search Fireflies for recent calls and present options
Extract from the user's request:
- Company name (required — ask if not provided)
- Person name (optional, helps narrow search)
- Date (optional, defaults to most recent match)
Phase 1: Data Collection (parallel)
Run all four data pulls simultaneously:
1A — Fireflies Transcript:
fireflies_search: keyword:"{company_name}" scope:title limit:10If no results by company name, try:
fireflies_search: keyword:"{person_name}" scope:title limit:10From the matching meeting(s):
fireflies_get_summaryfor the meeting — get overview, action items, topics discussedfireflies_get_transcriptfor the full transcript — needed for direct quotes and nuance- Note: meeting ID, title, date, duration, attendees
Also search for any PREVIOUS meetings with this company:
fireflies_search: keyword:"{company_name}" scope:title limit:20Pull summaries of prior meetings to track action item progress and conversation continuity.
1B — HubSpot Deal & Contact Data:
Search HubSpot for the company and associated contacts:
search_crm_objects: objectType:"companies" query:"{company_name}"
search_crm_objects: objectType:"deals" query:"{company_name}"
search_crm_objects: objectType:"contacts" query:"{company_name}"Extract:
- Current deal stage, amount, close date, pipeline
- Contact names, titles, emails, phone numbers
- Deal notes and activity history
- Previous email threads (check contact activity for email subjects/dates)
- Any tasks or upcoming activities scheduled
- Deal owner
1C — Apollo Contact Enrichment:
For each attendee from the Fireflies transcript who is NOT from Solum Health:
apollo_people_match: email:"{attendee_email}"Or if only name + company:
apollo_mixed_people_api_search: person_titles:[] person_locations:[] q_organization_name:"{company}" q_keywords:"{person_name}"Extract:
- Full name, current title, seniority level
- LinkedIn URL
- Company size, industry, funding stage
- Other relevant contacts at the company (decision makers, champions)
1D — Prior Meeting Cross-Reference:
If prior meetings exist with this company:
- List action items from prior calls
- Check which ones were completed vs. still open
- Note any pricing, timelines, or commitments previously discussed
- Track how the relationship has progressed over time
Phase 2: Fact-Check Layer
Before generating any output, run these verification checks:
Attendee Verification:
- Compare attendee names from Fireflies against HubSpot contacts and Apollo data
- If a name or title differs, use the most authoritative source (Apollo for titles, HubSpot for contact ownership)
- Flag any attendees on the call who are NOT in HubSpot (suggest adding them)
Numbers Consistency:
- Extract any numbers discussed on the call: pricing, volumes, timelines, patient counts, revenue figures
- Compare against numbers from prior meetings and HubSpot deal amount
- Flag inconsistencies (e.g., "They said 500 patients on the last call but 800 on this one")
Competitor Detection:
- Scan transcript for mentions of competitors, alternative solutions, or "we're also looking at..."
- Common competitors to watch for: Availity, Waystar, Infinx, Infinitus, Olive AI, Rhyme, Myndshft, manual processes, "doing it in-house", "our current vendor"
- Flag the context of any competitive mention (comparing features, pricing, timeline)
Commitment Tracking:
- Identify any commitments made by either side:
- "We'll send you..." / "I'll follow up with..."
- "Let's schedule..." / "We can start..."
- "I'll check with my team about..."
- Cross-reference with prior meeting commitments to see what was delivered
- Flag overdue commitments
Discrepancy Report:
- Compile all inconsistencies, missing data, and flags into a fact-check section
- Rate confidence: HIGH (data matches everywhere), MEDIUM (minor gaps), LOW (conflicting information)
Phase 3: Generate Deliverables
Produce all three outputs. Each must be grounded in specific call content.
Deliverable A: Follow-Up Email Draft
Format: Plain text. No markdown. No bold. No bullets. No asterisks. Ready to paste into Gmail with Cmd+Shift+V and send without any formatting cleanup.
Structure:
- Opening line referencing something specific from the call (NOT "great meeting today")
- 1-2 sentences recapping the key topic or problem discussed
- Specific next steps that were agreed upon, with owners and dates
- Any documents, materials, or information promised — mention them explicitly
- Closing that sets up the next interaction naturally
- Sign-off as JP
Tone Calibration:
- If previous email threads exist in HubSpot, match that tone and formality level
- First meeting = slightly more formal but still warm
- Ongoing relationship = casual, direct, skip the pleasantries
- If the call was technical/operational, keep the email operational
- If the call was executive/strategic, keep the email high-level
- Use the prospect's first name naturally
- Keep it under 150 words. Shorter is better.
What NOT to include:
- "It was great connecting" or any variation
- Bullet points or numbered lists (this is an email, not a document)
- Links to marketing materials unless specifically discussed
- Product pitches or features not discussed on the call
- "Please don't hesitate to reach out" or any similar filler
Example calibration (DO NOT copy verbatim — adapt to each call):
Hi Sarah,
Really interesting point you made about the eligibility check volume spiking
during Q1. That tracks with what we're seeing across similar-sized practices.
As discussed, I'm putting together the ROI breakdown based on your 2,400
monthly checks. You mentioned wanting to see the error-rate comparison
against your current Availity workflow, so I'll include that side by side.
I'll have that over to you by Thursday. In the meantime, I've looped in
our implementation lead so we can move quickly if the numbers make sense
on your end.
Talk soon,
JPDeliverable B: HubSpot Deal Notes
Format: Structured text ready to paste into HubSpot deal notes or present as a recommended CRM update.
Contents:
- Meeting Summary (3-5 sentences max)
- Who was on the call, their roles
- Primary topic discussed
- Key decisions or outcomes
- Deal Stage Recommendation
- Current stage in HubSpot
- Recommended stage after this meeting (with reasoning)
- Stage progression options: Appointment Scheduled → Qualified to Buy → Presentation Scheduled → Decision Maker Bought-In → Contract Sent → Closed Won / Closed Lost
- Only recommend a stage change if the call clearly warrants it
- Amount Update (if pricing was discussed)
- Current deal amount in HubSpot
- Recommended amount based on what was discussed
- Calculation basis (e.g., "[N] patients x $[X]/check = $[monthly]/mo = $[annual] annual")
- Action Items
- Each item with: description, owner (Solum or prospect), due date
- Mark which are blocking the deal from progressing
- Next Meeting
- Date/time if scheduled
- Agenda items for next call
- Who should attend
- Contacts to Add/Update
- Any new attendees not in HubSpot
- Title or role updates needed
Deliverable C: Internal Debrief
Format: Structured analysis for internal use. Be honest and direct.
Contents:
- Call Rating: X/5
- 5 = Deal advancing, clear next steps, buying signals strong
- 4 = Productive call, positive signals, minor gaps
- 3 = Neutral, no clear movement forward or backward
- 2 = Concerns raised, objections not handled, momentum stalling
- 1 = Deal at risk, strong objections, competitive threat, going cold
- What Went Well
- Specific moments from the call that advanced the deal
- Direct quotes that show interest, buy-in, or urgency
- Relationship dynamics that are working
- What Concerns Were Raised
- Objections stated or implied
- Questions that suggest hesitation
- Topics avoided or deflected by the prospect
- Buying Signals
- Questions about implementation, timeline, onboarding
- "How would we..." or "When can we start..." language
- Asking about references, case studies, or similar clients
- Discussing budget or getting internal approval
- Objections & Risks
- Price concerns
- Timing ("not right now", "maybe next quarter")
- Technical fit questions
- Internal politics or approval process complexity
- Status quo bias ("what we have works fine")
- Competitive Landscape
- Any competitors mentioned, with exact context
- How Solum was positioned against them
- Whether the prospect is in an active evaluation
- Recommended Next Move
- The single most important thing to do before the next call
- Specific action, not vague ("Send the ROI doc with their numbers by Thursday" not "Follow up soon")
- Fact-Check Notes
- Any discrepancies found during Phase 2
- Data that needs verification
- Attendees not in CRM
- Confidence rating for the overall data quality
Phase 4: Presentation
Present the three deliverables in this order:
- Internal Debrief first — so JP sees the strategic picture before the tactical outputs
- Follow-Up Email Draft — clearly marked as ready to paste
- HubSpot Deal Notes — with specific fields to update
After presenting, ask:
- "Want me to adjust the email tone or add anything?"
- "Should I update the HubSpot deal with these notes?" (if HubSpot MCP supports writes)
- "Any other attendees I should look up in Apollo?"
Edge Cases
No Fireflies transcript found:
- Tell the user which searches were tried
- Ask if the meeting was recorded on a different platform (Fathom, Zoom, etc.)
- Offer to generate a follow-up based on what the user remembers (manual input mode)
No HubSpot deal exists:
- Suggest creating one with recommended stage, amount, and contacts
- Still generate all three deliverables using available data
Multiple meetings match the search:
- Present the list with dates, titles, and attendees
- Ask the user to pick the correct one
- Default to the most recent if user says "the latest one"
Internal meeting (not a prospect call):
- Skip the follow-up email
- Generate a shorter debrief focused on decisions made and action items
- Skip deal stage recommendations
Very short call (under 10 minutes):
- Flag that the call was brief
- Adjust expectations — shorter debrief, simpler email
- Check if the call was cut short or if it was intentionally brief
Required MCP Tools
This skill requires these MCP integrations to be connected:
- Fireflies — for transcripts and summaries
- HubSpot — for deal and contact data
- Apollo.io — for contact enrichment
If any are missing, tell the user which ones are needed and proceed with what's available. Generate the deliverables using whatever data sources are connected, and note what's missing in the output.
Important Notes
- Quote the prospect. The email and debrief should reference specific things they said. Generic follow-ups are worthless.
- Be honest in the debrief. If the call went badly, say so. If the deal is at risk, flag it. JP needs the truth, not optimism.
- Match email tone to the relationship. A first meeting email reads differently from a fifth meeting email. Check prior threads.
- Track commitments ruthlessly. If Solum promised something on a prior call and didn't deliver, flag it immediately. If the prospect promised something and didn't deliver, note it for the next call.
- No AI slop in the email. Zero dashes as punctuation. No "I wanted to follow up on our productive conversation." No "leverage", "streamline", "robust", "comprehensive." Write like a real person sending a real email.
- Keep the email SHORT. Under 150 words. Under 100 is better. Nobody reads long follow-up emails.
Other versions8 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 8
- runxhq/runx★ 97same name
- sami2919/SignalForce★ 9same name
- cyxar4uk/ya360-mcp★ 2same name
- dshaplyko/skills★ 2same name
- ozzy-labs/opshub★ 2same name
- alectivism/maven-template★ 1same name
- yakatotech/claude_code_env★ 1same name
- lexvalo/riverscript-claude-plugin★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
Used alongsideProjects with it also use research.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
NVIDIASkillresearch
Before designing a feature, research how comparable libraries solve the problem, check best practices, known pitfalls, and upstream changes. Use when starting a new feature, investigating an unfamiliar area, or the user asks to research something.
Also in 3 projects that use this
In this repository31 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- chief-of-staffSkill
- codex-reviewSkill
- conference-prepSkill
- doc-conversion-qaSkill
- eligibility-checkSkill
- fact-checkSkill
- google-adsSkill
- icp-researchSkill
- linkedin-carousel-builderSkill
- mac-performance-triageSkill
- meeting-prepSkill
- mobile-auditSkill
- one-pager-builderSkill
- ops-metricsSkill
- pmf-pulseSkill
- post-conference-fupSkill
- post-conference-insightsSkill
- postmortemSkill
- prior-auth-review-skillSkill
- product-insightsSkill
- seoSkill
- site-reviewSkill
- solum-health-brandSkill
- task-triageSkill
- team-feedbackSkill
- uscis-petition-reviewSkill
- weekly-retroSkill
- weekly-reviewSkill
- win-lossSkill
- x-healthcare-postsSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

