Skip to content
cccskills
FreePublished on GitHub

engagement-miner

Extract warm prospects from competitor and industry post engagers across LinkedIn, Twitter, and blogs

The English summary is being prepared. Showing the original description.

Run score Not tested

See how to install

Files included (2)

  • SKILL.md8.4 KB
  • skill.meta.json458 B

SKILL.md (original)

Review the instructions the agent will receive before you install.

Engagement Miner

Finds engaged audiences on competitor posts, industry discussions, and thought-leader content. Extracts commenters and engagers from LinkedIn posts, Twitter threads, and blog comments. These are warm prospects who already care about the topic and are pre-qualified by their own engagement behavior.

Prerequisites

  • agency.config.json at repo root with services, icp, and scoring sections
  • WebSearch tool available
  • Optional: person-researcher skill for enriching extracted prospects
  • Optional: crm-writer skill for logging prospects to CRM

Phase 0: Intake

  1. Read agency.config.json from the project root.
  2. Extract:
    • services[].keywords -- topic relevance for filtering
    • icp.segments[].titles, icp.segments[].seniority -- prospect qualification criteria
    • icp.segments[].industries -- industry filters
    • icp.segments[].company_size -- company size filters
    • icp.primary_keywords, icp.secondary_keywords -- topic matching
    • icp.negative_keywords -- filter out competitors and service providers
  3. Accept parameters:
    • source_posts -- list of specific post URLs to mine (default: none, discover automatically)
    • competitors -- competitor names/profiles whose posts to mine (default: none, user must supply)
    • topics -- topic keywords to find relevant posts (default: use config keywords)
    • platforms -- platforms to mine: linkedin | twitter | blogs (default: all)
    • max_prospects -- max prospects to return (default: 50)
    • min_engagement -- minimum engagement threshold for source posts (default: 10 comments)

Phase 1: Source Post Discovery

If source_posts not provided, discover high-engagement posts to mine.

LinkedIn post discovery:

  • site:linkedin.com/posts "{competitor_name}" "{service_keyword}"
  • site:linkedin.com/posts "{service_keyword}" "comments" OR "agree" OR "great point"
  • site:linkedin.com/posts "{icp_industry}" "{intent_keyword}"
  • Prioritize posts with visible comment counts > min_engagement.

Twitter thread discovery:

  • site:twitter.com OR site:x.com "{competitor_name}" "{service_keyword}" "replies"
  • site:twitter.com OR site:x.com "{service_keyword}" "thread" OR "unpopular opinion" "{icp_industry}"
  • Look for threads with high reply counts.

Blog comment discovery:

  • "{competitor_name}" blog "{service_keyword}" "comments"
  • "{industry_keyword}" blog "leave a comment" OR "responses" "{service_keyword}"
  • Target popular industry blogs with active comment sections.

For each source post, capture:

{
  "post_url": "URL",
  "platform": "LinkedIn | Twitter | Blog",
  "author": "Post author name",
  "author_company": "Author's company if visible",
  "topic": "Main topic of the post",
  "engagement_count": "Number of comments/replies visible",
  "posted_date": "Date if available",
  "relevance": "HIGH | MEDIUM"
}

Target 10-20 high-engagement source posts across platforms.

Phase 2: Engager Extraction

For each source post, extract people who engaged (commented, replied, shared):

LinkedIn engager extraction:

  • Search: site:linkedin.com "{post_title}" "{commenter_snippet}" to find comment previews
  • Search: site:linkedin.com/in "{keyword_from_post}" "{icp_title}" to find people who likely engaged
  • Extract from search snippets: commenter names, their titles, companies
  • Note: LinkedIn comments are not always fully indexed. Accept partial results.

Twitter engager extraction:

  • Search: site:twitter.com OR site:x.com "replying to @{author_handle}" "{topic_keyword}"
  • Search for quoted retweets: site:twitter.com "{post_url_fragment}"
  • Extract: replier handles, names, bios if visible in snippets

Blog comment extraction:

  • Use WebFetch on the blog URL (if available) to read comment sections
  • Extract: commenter names, linked websites, comment content
  • Commenter websites are valuable for company identification

For each extracted engager:

{
  "name": "Full name",
  "handle": "Social handle or username",
  "platform": "LinkedIn | Twitter | Blog",
  "title": "Job title if visible",
  "company": "Company name if visible",
  "profile_url": "Profile URL if available",
  "comment_snippet": "What they said (first 200 chars)",
  "source_post_url": "The post they engaged with",
  "source_post_topic": "Topic of the source post"
}

Phase 3: Prospect Qualification

Filter and score extracted engagers against ICP:

Title matching:

  • Compare title against icp.segments[].titles and icp.segments[].seniority.
  • Exact title match: +30 points
  • Seniority level match: +20 points
  • No title available: +5 points (benefit of the doubt)

Company relevance:

  • If company matches ICP industries: +20 points
  • If company size is estimable and within ICP range: +10 points
  • If company is a known competitor (from competitors param): -100 points (disqualify)

Engagement quality:

  • Comment shows pain point or need: +25 points
  • Comment asks a question: +20 points
  • Comment shares experience: +15 points
  • Generic agreement ("Great post!"): +5 points
  • Self-promotional comment: -50 points (disqualify)

Negative keyword filter:

  • Check name, title, company, and comment against icp.negative_keywords.
  • Disqualify any match.

Scoring thresholds:

  • HOT PROSPECT (60+): Strong title match + relevant engagement
  • WARM PROSPECT (35-59): Partial match, worth researching
  • COOL (<35): Weak match, skip unless volume is low

Phase 4: Deduplication

  1. Deduplicate by name + company combination (same person across multiple posts).
  2. For duplicates, keep the entry with the richest data (most fields populated).
  3. Merge comment snippets from multiple engagements into a single prospect record.
  4. Deduplicate by profile URL if available (exact match).

Phase 5: Output

Return structured prospect list:

{
  "mining_summary": {
    "source_posts_analyzed": 15,
    "total_engagers_extracted": 120,
    "after_qualification": 50,
    "after_dedup": 42,
    "breakdown": {
      "hot": 8,
      "warm": 22,
      "cool": 12
    }
  },
  "prospects": [
    {
      "name": "Jane Doe",
      "title": "Head of Ecommerce",
      "company": "BrandCo",
      "platform": "LinkedIn",
      "profile_url": "https://linkedin.com/in/janedoe",
      "score": 75,
      "tier": "HOT",
      "engagement_context": "Commented on CRO post asking about checkout optimization",
      "comment_snippets": ["We've been struggling with cart abandonment..."],
      "source_posts": ["https://linkedin.com/posts/..."],
      "recommended_approach": "Reference their checkout concern, offer CRO audit insight",
      "next_step": "RESEARCH | CONNECT | EMAIL"
    }
  ]
}

Present formatted summary:

ENGAGEMENT MINING REPORT
Source posts analyzed: {N} across {platforms}
Total engagers found: {N}
Qualified prospects: {N} ({hot} HOT, {warm} WARM)

HOT PROSPECTS ({count}):
1. {name} -- {title} at {company} -- Score: {N}
   Context: "{comment_snippet}"
   Approach: {recommended_approach}
   Next: {next_step}

WARM PROSPECTS ({count}):
1. {name} -- {title} at {company} -- Score: {N}
   Context: "{comment_snippet}"
   Next: {next_step}

DISQUALIFIED: {count} (competitors: {a}, self-promoters: {b}, irrelevant: {c})

TOP ENGAGEMENT TOPICS:
1. {topic} -- {count} qualified engagers found

Phase 6: CRM Logging

If crm-writer is available and user approves:

  • Log HOT and WARM prospects to CRM pipeline tab
  • Columns: Date, Name, Title, Company, Platform, Source Post, Score, Tier, Context, Status
  • Set initial status: "MINED"

Example Usage

Trigger phrases:

  • "Mine engagement on competitor posts"
  • "Find prospects from LinkedIn comments"
  • "Extract engagers from this post: [URL]"
  • "Who's engaging with Shopify CRO content on LinkedIn?"
  • "Mine warm leads from competitor content"
  • "Find people commenting on ecommerce topics"
User: Mine engagement from WebSavvy and Starter Labs LinkedIn posts about Shopify
Assistant: [reads config, discovers high-engagement posts by those competitors, extracts commenters, qualifies against ICP, scores and deduplicates, presents ranked prospect list with approach recommendations]
User: Extract prospects from these 3 LinkedIn posts: [URL1, URL2, URL3]
Assistant: [same flow but uses provided URLs directly as source posts, skips discovery phase]

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

Analyze A/B test results for statistical significance with ship, extend, or kill recommendations

The English summary is being prepared. Showing the original description.

ekatasingh1107/b2b-gtm-skills2Updated Apr 12, 2026

Reallocate ad budget across campaigns and channels using ROAS and marginal return analysis

The English summary is being prepared. Showing the original description.

ekatasingh1107/b2b-gtm-skills2Updated Apr 12, 2026

Generate structured creative briefs for ad designers with brand-consistent direction

The English summary is being prepared. Showing the original description.

ekatasingh1107/b2b-gtm-skills2Updated Apr 12, 2026

Mine winning ad angles, hooks, and creative patterns from top-performing ads

The English summary is being prepared. Showing the original description.

ekatasingh1107/b2b-gtm-skills2Updated Apr 12, 2026

ad-spy

Free

Monitor competitor ads across Meta, Google, and LinkedIn with strategic analysis

The English summary is being prepared. Showing the original description.

ekatasingh1107/b2b-gtm-skills2Updated Apr 12, 2026

Interactive onboarding wizard that generates agency.config.json for any B2B agency. Asks structured questions about the agency, services, ICP, tools, outreach preferences, and CRM setup. Outputs a complete config file.

The English summary is being prepared. Showing the original description.

ekatasingh1107/b2b-gtm-skills2Updated Apr 12, 2026

See all skills by ekatasingh1107

Report a problem with this skill