ads-audit
Full multi-platform paid advertising audit with parallel subagent delegation. Analyzes Google Ads, Meta Ads, LinkedIn Ads, TikTok Ads, and Microsoft Ads…
Scrape LinkedIn post engagers (commenters + reactors) from any profile or set of profiles, deduplicate them,
$ npx -y skills add naveedharri/benai-skills --skill linkedin-post-engagers --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/linkedin-post-engagersContext preview
The summary Claude sees to decide when to auto-load this skill.
Scrape LinkedIn post engagers (commenters + reactors) from any profile or set of profiles, deduplicate them,
name: linkedin-post-engagers description: Scrape LinkedIn post engagers (commenters + reactors) from any profile or set of profiles, deduplicate them, and optionally qualify + enrich them with full LinkedIn profile data and company websites. Use this skill whenever the user says "scrape post engagers", "get LinkedIn engagers", "who engaged with my posts", "LinkedIn warm list", "post engagement scraping", "scrape commenters", "scrape reactions", "LinkedIn post leads", "find people who engaged", "engagement-based prospecting", "warm outbound from LinkedIn", "prospect from posts", "competitor engager scraping", "scrape my LinkedIn audience", or wants to build a lead list from people who interacted with LinkedIn posts. Also trigger when the user mentions building a prospect list from LinkedIn engagement data, or wants to know who commented on or reacted to specific LinkedIn posts. allowed-tools: Read, Write, Edit, Bash, Grep, Glob, Task, WebSearch, TodoWrite, AskUserQuestion disable-model-invocation: true
You are orchestrating a pipeline that extracts warm prospects from LinkedIn post engagements. People who comment on or react to LinkedIn posts are warm leads because they've already shown interest in a relevant topic. This skill turns that engagement data into an enriched, optionally qualified, deduplicated lead list.
Cold outbound starts from zero context. Post-engager prospecting starts from a signal: these people already cared enough about a topic to engage publicly. That makes them warmer than any scraped list, and the engagement itself gives you something to reference in outreach.
Read `references/apify-operations.md` before running any Apify actor. It is the source of truth for actor mechanics. Non-negotiables:
Collect three things from the user using AskUserQuestion:
1. **Target profiles**: Whose LinkedIn posts should we scrape? Options: their own profile (personal brand audience), a specific competitor's profile, or a list of multiple profile URLs (competitors, thought leaders, etc.). 2. **Number of posts per profile**: How many recent posts to scrape per profile? Default recommendation is 5, range: 5-50. More posts = more engagers but longer scraping time and cost. 3. **LinkedIn profile URLs**: The actual URLs. Must be `linkedin.com/in/...` format (personal profiles, not company pages). If the user provides a name instead of a URL, search the web to find the correct LinkedIn profile URL first.
Once you have all three, proceed to Step 1.
Read `references/post-scraping.md`. Run the Apify actor `harvestapi/linkedin-profile-posts` using the actor call pattern from `references/apify-operations.md`. The dataset contains mixed item types (posts, reactions, comments) that must be separated and mapped back to their parent post. Report the scraped posts to the user and wait for confirmation before proceeding.
Read `references/extract-dedupe.md`. Extract all unique engagers (commenters + reactors) into a flat, deduplicated list. This is critical: one row per person, not one row per engagement. Report the counts to the user.
Read `references/qualification.md`. Ask the user (via AskUserQuestion) whether to run keyword-based qualification or skip qualification and scrape all profiles, and what keywords define their ICP. Run the chosen flow, report the qualification counts, and save the qualified CSV to the outputs folder.
Read `references/profile-scraping.md` (People Profile Scrape section). Run `dev_fusion/Linkedin-Profile-Scraper` on the qualified engagers (or all engagers if no qualification was done), sending ALL URLs in a single API call. Merge profile data back into the engager CSV, remove unemployed profiles, and report the counts.
Read `references/profile-scraping.md` (Company Profile Scrape section). Run `dev_fusion/Linkedin-Company-Scraper` on the unique company LinkedIn URLs. CRITICAL: company URL formats mismatch between the two actors, so use the three-tier fuzzy matching strategy in the reference. Merge company data into the CSV, remove unmatched leads and leads without websites, and report the counts.
Read `references/output.md`. Save the final enriched CSV to the outputs folder with the full column set and give the user the pipeline completion report.
This skill is never finished. Improve it as you use it.
Expert automation skills for Claude Code, organized by department.
Repo: naveedharri/benai-skills
Full multi-platform paid advertising audit with parallel subagent delegation. Analyzes Google Ads, Meta Ads, LinkedIn Ads, TikTok Ads, and Microsoft Ads…
Budget allocation and bidding strategy review across all ad platforms. Evaluates spend distribution, bidding strategy appropriateness, scaling readiness, and…
Competitor ad intelligence analysis across Google, Meta, LinkedIn, TikTok, and Microsoft. Analyzes competitor ad copy, creative strategy, keyword targeting,…
Cross-platform creative quality audit covering ad copy, video, image, and format diversity across all platforms. Detects creative fatigue, evaluates…
Google Ads deep analysis covering Search, Performance Max, Display, YouTube, and Demand Gen campaigns. Evaluates 74 checks across conversion tracking, wasted…
Landing page quality assessment for paid advertising campaigns. Evaluates message match, page speed, mobile experience, trust signals, form optimization, and…