Pull the audience that engaged with a LinkedIn post — likers (reactors) and commenters — via Unipile, dedupe across endpoints, and persist them as a result set ready for qualification or campaign…

MITAuto-check: notesWriting & Content

Install Scrape Post Engagers

skills CLI
$ npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill scrape-post-engagers -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install Othmane-Khadri/YALC-the-GTM-operating-system scrape-post-engagers --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/Othmane-Khadri/YALC-the-GTM-operating-system.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/scrape-post-engagers .claude/skills/scrape-post-engagers && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
scrape-post-engagers
GitHub stars
317
Token cost
~1.4k tokens
SKILL.md length
665 words
Files
2 (incl. references)
Skills in repo
57
Repo updated
First seen
Licence
MIT

At a glance

Pull the audience that engaged with a LinkedIn post — likers (reactors) and commenters — via Unipile, dedupe across endpoints, and persist them as a result set ready for qualification or campaign…

  • Works in 6 steps: Ask for the LinkedIn post URL → Validate URL format → Shell out to the CLI → …
  • The user says scrape engagers from this post
  • SKILL.md covers When This Skill Applies, What This Skill Does, What This Skill Does NOT and Workflow, plus 1 more section
  • Calls npx; reaches linkedin.com

What it does

Scrape Post Engagers is an agent skill from Othmane-Khadri/YALC-the-GTM-operating-system. Pull the audience that engaged with a LinkedIn post — likers (reactors) and commenters — via Unipile, dedupe across endpoints, and persist them as a result set ready for qualification or campaign launch. Use when the user says 'scrape engagers from this post', 'who liked this LinkedIn post', 'who commented on this LinkedIn post', 'pull engagers from this URL', or 'get the audience of this post'. Side-effecting — calls Unipile and writes to the local SQLite DB.

Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/example-output.md`).

It sits in Writing & Content, covering Web scraping and Social media posts. It works with LinkedIn and SQLite. The repository describes itself as: YALC 1.0, the open-source Clay alternative. MIT, CLI-first, self-hosted, runs in Claude Code. Yalc today is an intelligent orchestration layer that runs pre configured GTM agents…. The licence is MIT.

When your agent uses it

  • The user says scrape engagers from this post
  • Who liked this LinkedIn post
  • Who commented on this LinkedIn post
  • Pull engagers from this URL

Example prompts

  • “scrape engagers from this post”
  • “who liked this LinkedIn post”
  • “who commented on this LinkedIn post”
  • “/scrape-post-engagers”

Requirements

  • Node.js

Workflow steps

6 steps, taken from the step headings in SKILL.md.

  1. Ask for the LinkedIn post URL
  2. Validate URL format
  3. Shell out to the CLI
  4. Parse the CLI output
  5. Render a clean summary
  6. Offer follow-ups

What it can do on your machine

Read from SKILL.md and the folder at commit 5686d1f. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • npx

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • linkedin.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Scrape Post Engagers loads about 1.4k tokens when it runs, and up to ~1.9k if it reads all its reference files. Until then it costs about 121 tokens; SKILL.md has 665 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~121
When it runs · the whole SKILL.md, loaded when a task matches
~1.4k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~1.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:42
    - Edit `.env`, the Unipile DSN, or any config. Read the env, fail loudly if missing.
  • NoteMentions a .env fileSKILL.md:119
    okens into chat. They live in `~/.gtm-os/.env`.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from Othmane-Khadri/YALC-the-GTM-operating-system at commit 5686d1f, republished under its MIT licence (© Othmane-Khadri). 665 words, ~1,364 tokens.

Download SKILL.mdSave it as .claude/skills/scrape-post-engagers/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
scrape-post-engagers
description
Pull the audience that engaged with a LinkedIn post — likers (reactors) and commenters — via Unipile, dedupe across endpoints, and persist them as a result set ready for qualification or campaign launch. Use when the user says 'scrape engagers from this post', 'who liked this LinkedIn post', 'who commented on this LinkedIn post', 'pull engagers from this URL', or 'get the audience of this post'. Side-effecting — calls Unipile and writes to the local SQLite DB.
version
1.0.0

Scrape Post Engagers

I'll pull the people who engaged with a LinkedIn post (reactors + commenters) via Unipile, dedupe them across endpoints, and persist the result as a numbered result set you can hand off to qualify-leads or launch-linkedin-campaign.

When This Skill Applies

Use this skill when the user says:

  • "scrape engagers from this post"
  • "who liked this LinkedIn post"
  • "who commented on this LinkedIn post"
  • "pull engagers from this URL"
  • "get the audience of this post"

NOT this skill (use qualify-leads instead):

  • "score these prospects" / "qualify these leads" — qualification runs the 7-gate ICP pipeline on an existing result set, it doesn't fetch new data.

NOT this skill (use personalize-message instead):

  • "write a DM to this engager" / "personalize a message" — that's per-lead copy generation, not audience extraction.

NOT this skill (use launch-linkedin-campaign instead):

  • "send connect requests to these people" / "start outreach" — campaign launch consumes a result set; it doesn't produce one.

What This Skill Does

  1. Validates the LinkedIn post URL (linkedin.com/posts/... or linkedin.com/feed/update/...).
  2. Shells out to npx tsx src/cli/index.ts leads:scrape-post --url <url>.
  3. The CLI calls Unipile under the hood, fetches reactors + commenters, dedupes them, writes them to the local SQLite DB as a fresh result set, and prints the result set id, totals, and output path.
  4. Renders a clean summary and offers to chain into the next step (qualify or launch).

What This Skill Does NOT

  • Send messages, connection requests, or DMs. That's launch-linkedin-campaign.
  • Score or filter the engagers against an ICP. That's qualify-leads --result-set <id>.
  • Personalize copy. That's personalize-message.
  • Edit .env, the Unipile DSN, or any config. Read the env, fail loudly if missing.

Workflow

Step 0: Ask for the LinkedIn post URL

If the user hasn't pasted a post URL, ask:

"What's the LinkedIn post URL? I need either the activity URL (linkedin.com/posts/<handle>_<slug>-activity-...) or the feed update URL (linkedin.com/feed/update/urn:li:activity:...)."

Don't proceed without a URL. Don't guess from screenshots, post titles, or partial slugs.

Step 1: Validate URL format

The CLI accepts any URL Unipile resolves, but the supported patterns are:

  • https://www.linkedin.com/posts/<handle>_<slug>-activity-<id>-<suffix>
  • https://www.linkedin.com/feed/update/urn:li:activity:<id>/

If the URL doesn't match either shape, ask the user to paste the canonical URL from the post's "Copy link" menu.

Show full SKILL.md (307 more words)Show less
Step 2: Shell out to the CLI

From the gtm-os root (~/Desktop/gtm-os/):

bash
npx tsx src/cli/index.ts leads:scrape-post --url <url>

Per the 0.13.0 benchmark, single-command side-effecting skills shell out unconditionally — the import-direct path saves ~10ms but doubles the maintenance surface.

Optional flags worth surfacing if the user asks:

  • --type <both|reactions|comments> — default both. Drop to reactions or comments only if the user says "just likers" / "just commenters".
  • --max-pages <n> — default 10. Bump only if engagement count >1000 reactors expected.
  • --account <name> — pick a non-default Unipile account (multi-tenant only).
  • --output <path> — override where the JSON file lands.

Don't pass these flags unless the user asks.

Step 3: Parse the CLI output

The CLI prints a final block of the form:

✓ Scraped <N> engagers (<R> reactors, <C> commenters)
  Result set: <id>
  Output: <path>

Next: yalc-gtm leads:qualify --result-set <id>

Capture the result set id, total count, reactor count, commenter count, and output path.

Step 4: Render a clean summary

Use the format shown in references/example-output.md. At minimum:

  • Total engagers + breakdown of reactors vs commenters.
  • Result set id (the user will need this for the next command).
  • Output JSON path (so they can inspect the raw payload).
Step 5: Offer follow-ups

After the summary, ask:

"Want me to: (a) qualify these leads against your ICP via qualify-leads --result-set <id>? (b) launch a LinkedIn outreach campaign to them via launch-linkedin-campaign?"

Don't run either without a clear yes.

Notes

  • The CLI is gated on the linkedin channel being enabled in the user's config — if disabled, the CLI exits with a clear message and this skill surfaces it verbatim.
  • Unipile rate limits: caps page-fetches per account-per-hour. If pagination errors mid-flight, the partial result set is still persisted; surface the result set id and tell the user they can re-run with the same URL to top up.
  • Dedupe is by canonical LinkedIn profile URL — someone who both liked and commented appears once with engagement_type reflecting both signals.
  • Never paste Unipile DSNs, account ids, or tokens into chat. They live in ~/.gtm-os/.env.

© Othmane-Khadri, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in .claude/skills/scrape-post-engagers of Othmane-Khadri/YALC-the-GTM-operating-system.

  • SKILL.md
  • references/example-output.md

Open the folder on GitHubat commit 5686d1f

Compare with similar skills

Scrape Post Engagers next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Scrape Post Engagers compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Scrape Post Engagers this skillOthmane-Khadri/YALC-the-GTM-operating-system317—~1.4kAutomated safety check: NotesMIT
Post Engagersextruct-ai/gtm-skills109—~2kAutomated safety check: PassNone
Competitor Content Trackergooseworks-ai/goose-skills1.2k1 repos~1.4kAutomated safety check: PassMIT
Unipile Linkedin SDKLeoYeAI/openclaw-master-skills2.2k—~4.1kAutomated safety check: NotesMIT
Linkedin Engager Analyticssergebulaev/linkedin-skills4.4k1 repos~1.4kAutomated safety check: PassMIT
Post Scorercharlie947/social-media-skills3.8k—~2.4kAutomated safety check: PassMIT

Similar skills

  • Post Engagers

    extruct-ai/gtm-skills

    Extract people who engage (comment, react, repost) on a LinkedIn post, enrich their profile / email / company data, and land them in a local SQLite CRM (content.db → crm.db) as the source of truth.

    109 GitHub stars~2k tokensUpdated 11 days ago
    Writing & ContentAuto-check passed
  • Competitor Content Tracker

    gooseworks-ai/goose-skills

    Monitor competitor content across blogs, LinkedIn, and Twitter/X on a recurring basis.

    1.2k GitHub starsUsed in 1 repo~1.4k tokens
    Writing & ContentAuto-check passed
  • Unipile Linkedin SDK

    LeoYeAI/openclaw-master-skills

    LinkedIn integration via Unipile's official Node.js SDK. An agent skill from LeoYeAI/openclaw-master-skills.

    2.2k GitHub stars~4.1k tokensUpdated 2 mo ago
    Writing & ContentAuto-check: notes
  • Linkedin Engager Analytics

    sergebulaev/linkedin-skills

    Pull the people who liked or commented on any LinkedIn post and segment them by ICP fit (peer / aspirational / prospect / other).

    4.4k GitHub starsUsed in 1 repo~1.4k tokens
    Writing & ContentAuto-check passed
  • Post Scorer

    charlie947/social-media-skills

    Score a LinkedIn post using real performance data. An agent skill from charlie947/social-media-skills.

    3.8k GitHub stars~2.4k tokensUpdated 24 days ago
    Writing & ContentAuto-check passed
  • Turn a single LinkedIn post URL into a paused cold email campaign in Instantly.

    117 GitHub stars~2.1k tokensUpdated today
    Writing & ContentAuto-check passed

More from Othmane-Khadri/YALC-the-GTM-operating-system

All 57 skills in this repo
  • Claap Weekly Recap

    Othmane-Khadri/YALC-the-GTM-operating-system

    Turns a week of Claap-recorded sales calls into action items and focus blocks on a Notion Kanban, delivered with a Slack summary.

    317 GitHub stars~5.4k tokensUpdated 1 mo ago
    Auto-check passed
  • Fullenrich Plg Reverse Lookup

    Othmane-Khadri/YALC-the-GTM-operating-system

    A skill your agent uses when the user says "set up FullEnrich reverse lookup for trial signups", "PLG enrichment webhook", "identify free trial signups via FullEnrich", "reverse email lookup for…

    317 GitHub stars~1.3k tokensUpdated 1 mo ago
    Auto-check passed
  • Fullenrich Content Engagers

    Othmane-Khadri/YALC-the-GTM-operating-system

    A skill your agent uses when the user says "enrich people who engaged with this post", "qualify post engagers with FullEnrich", "scrape and enrich LinkedIn post {URL}", "engagers from this post into…

    317 GitHub stars~1.5k tokensUpdated 1 mo ago
    Auto-check: warnings
  • Fullenrich Event Attendees

    Othmane-Khadri/YALC-the-GTM-operating-system

    A skill your agent uses when the user says "enrich this LinkedIn event", "enrich attendees of this event", "enrich this attendees CSV", "scrape and enrich LinkedIn event {URL}", "FullEnrich event…

    317 GitHub stars~1.4k tokensUpdated 1 mo ago
    Auto-check: warnings
  • Answer Linkedin Comments

    Othmane-Khadri/YALC-the-GTM-operating-system

    Reply to comments on a LinkedIn post via Unipile — drafts thread-aware replies grounded in the user's voice and the conversation context, then sends on approval.

    317 GitHub stars~551 tokensUpdated 1 mo ago
    Auto-check: notes
  • Fullenrich Network Activation

    Othmane-Khadri/YALC-the-GTM-operating-system

    A skill your agent uses when the user says "activate co-founder network with FullEnrich", "enrich LinkedIn connections export", "qualify my LinkedIn connections CSV", "turn Connections.csv into a…

    317 GitHub stars~1.1k tokensUpdated 1 mo ago
    Auto-check: warnings

Works with

Questions about Scrape Post Engagers

What does Scrape Post Engagers do?

Pull the audience that engaged with a LinkedIn post — likers (reactors) and commenters — via Unipile, dedupe across endpoints, and persist them as a result set ready for qualification or campaign…. Scrape Post Engagers is an agent skill from Othmane-Khadri/YALC-the-GTM-operating-system. Pull the audience that engaged with a LinkedIn post — likers (reactors) and commenters — via Unipile, dedupe across endpoints, and persist them as a result set ready for qualification or campaign launch.

When should I use Scrape Post Engagers?

Scrape Post Engagers fits situations like: the user says scrape engagers from this post; who liked this LinkedIn post; who commented on this LinkedIn post; pull engagers from this URL.

How do I install Scrape Post Engagers in Claude Code?

Run `npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill scrape-post-engagers -a claude-code`. Or copy the skill folder (.claude/skills/scrape-post-engagers in Othmane-Khadri/YALC-the-GTM-operating-system) into .claude/skills/scrape-post-engagers in your project. Claude Code loads it when a task matches its description.

How do I install Scrape Post Engagers in Codex?

Run `npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill scrape-post-engagers -a codex`. Or copy the skill folder (.claude/skills/scrape-post-engagers in Othmane-Khadri/YALC-the-GTM-operating-system) into .agents/skills/scrape-post-engagers in your project. Codex loads it when a task matches its description.

Can I use Scrape Post Engagers in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Othmane-Khadri/YALC-the-GTM-operating-system --skill scrape-post-engagers -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/scrape-post-engagers, .gemini/skills/scrape-post-engagers, .github/skills/scrape-post-engagers and .opencode/skills/scrape-post-engagers in your project.

What does Scrape Post Engagers need to run?

Going by SKILL.md and its folder, Scrape Post Engagers needs the command-line tools its instructions call (npx). Our summary lists: Node.js.

Does Scrape Post Engagers access the network?

SKILL.md names 1 domain. In commands or code: linkedin.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Scrape Post Engagers safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Scrape Post Engagers use?

Scrape Post Engagers is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Scrape Post Engagers use?

About 1.4k tokens (SKILL.md is roughly 5.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 525 tokens, read only when the agent opens those files.

What are the alternatives to Scrape Post Engagers?

Skills that share tags, products or a category with Scrape Post Engagers: Post Engagers (extruct-ai/gtm-skills, 109 stars), Competitor Content Tracker (gooseworks-ai/goose-skills, 1.2k stars), Unipile Linkedin SDK (LeoYeAI/openclaw-master-skills, 2.2k stars) and Linkedin Engager Analytics (sergebulaev/linkedin-skills, 4.4k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Scrape Post Engagers?

Othmane-Khadri (a GitHub user) maintains it in Othmane-Khadri/YALC-the-GTM-operating-system, which has 317 GitHub stars. The repository holds 57 skills in this directory. The repository was last updated on August 20, 2026.

Source: Othmane-Khadri/YALC-the-GTM-operating-system on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.