Agent skill

Kol Discovery

by gooseworks-ai in gooseworks-ai/goose-skills

Find Key Opinion Leaders (KOLs) in a given domain by combining web research with LinkedIn post search.

MITAuto-check: notesWriting & Content

Install Kol Discovery

skills CLI
$ npx skills add gooseworks-ai/goose-skills --skill kol-discovery -a claude-code

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

GitHub CLI
$ gh skill install gooseworks-ai/goose-skills kol-discovery --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/gooseworks-ai/goose-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/social/capabilities/kol-discovery .claude/skills/kol-discovery && 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
kol-discovery
GitHub stars
1.2k
Used in
1 other repo
Token cost
~1.5k tokens
SKILL.md length
591 words
Files
3 (incl. scripts)
Skills in repo
273
Repo updated
First seen
Licence
MIT

At a glance

Find Key Opinion Leaders (KOLs) in a given domain by combining web research with LinkedIn post search.

  • Works in 5 steps: Intake → Generate Domain Keywords → Run KOL Discovery Pipeline → …
  • Someone wants to find influencers in X space
  • SKILL.md covers Phase 0: Intake, Phase 1: Generate Domain…, Phase 2: Run KOL Discovery… and Phase 2b: Web Research…, plus 4 more sections
  • Runs Python scripts from its folder; calls python3; reaches linkedin.com; needs APIFY_API_TOKEN

What it does

Kol Discovery is an agent skill from gooseworks-ai/goose-skills. Find Key Opinion Leaders (KOLs) in a given domain by combining web research with LinkedIn post search. Given a company/idea and target domain, generates authority keywords, searches LinkedIn posts to find prolific authors with high engagement, and merges with web-researched influencers. Use when someone wants to "find influencers in X space" or "who are the KOLs for Y industry."

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including scripts (for example `scripts/kol_discovery.py` and `skill.meta.json`).

It sits in Writing & Content, covering Social media posts and Influencer and creator marketing. It works with LinkedIn. The repository describes itself as: Library of Growth & GTM skills + data APIs for Claude Code, Codex, Cursor to run ads, social, content, lead gen, seo and data scraping. The licence is MIT.

When your agent uses it

  • Someone wants to find influencers in X space
  • Who are the KOLs for Y industry

Example prompts

  • “find influencers in X space”
  • “who are the KOLs for Y industry.”
  • “/kol-discovery”

Requirements

  • Python 3
  • A credential in APIFY_API_TOKEN

Workflow steps

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

  1. Intake
  2. Generate Domain Keywords
  3. Run KOL Discovery Pipeline
  4. Review & Refine
  5. Output

What it can do on your machine

Read from SKILL.md and the folder at commit c650c6d. 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

    Ships 1 file in scripts/ (Python), which the agent can run.

    Shell commands in SKILL.md call:

    • python3

    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 these keys or tokens, usually read from environment variables:

    • APIFY_API_TOKEN

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

Context cost

Kol Discovery loads about 1.5k tokens when it runs. Until then it costs about 99 tokens; SKILL.md has 591 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~99
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

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:149
    I token** — set as `APIFY_API_TOKEN` in `.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); the scripts in this folder are not scanned.

SKILL.md

The full file from gooseworks-ai/goose-skills at commit c650c6d, republished under its MIT licence (© gooseworks-ai). 591 words, ~1,546 tokens.

Download SKILL.mdSave it as .claude/skills/kol-discovery/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
kol-discovery
description
Find Key Opinion Leaders (KOLs) in a given domain by combining web research with LinkedIn post search. Given a company/idea and target domain, generates authority keywords, searches LinkedIn posts to find prolific authors with high engagement, and merges with web-researched influencers. Use when someone wants to "find influencers in X space" or "who are the KOLs for Y industry."
tags
outreach

KOL Discovery

Find Key Opinion Leaders in any domain by searching LinkedIn posts for prolific, high-engagement authors and merging with web-researched influencers.

Core principle: Search for authority/thought-leadership keywords, not pain-language. We want people who shape conversation in the space — conference speakers, newsletter writers, podcast hosts, and prolific LinkedIn posters.

Phase 0: Intake

Ask the user these questions:

Domain & Audience
  1. What does your company/product do? What space are you in?
  2. What specific domain or topic are the KOLs you want to find expert in?
  3. Who is your target audience? (The people the KOLs influence)
  4. Any KOLs you already know about? (LinkedIn URLs — these become the baseline)
  5. Anyone to EXCLUDE? (Competitors, your own team, irrelevant voices)

Phase 1: Generate Domain Keywords

Based on intake, generate 15-25 topic/authority keywords. These are NOT pain-language — they're the terms thought leaders use when sharing expertise:

  • Industry terms — "freight tech", "supply chain innovation"
  • Thought leadership signals — "lessons learned in logistics", "future of dispatch"
  • Conference/event terms — "supply chain summit keynote"
  • Content creator signals — "newsletter freight", "podcast logistics"

Also generate:

  • KOL title keywords — titles that signal thought leadership (vp, founder, analyst, editor, host)
  • Vendor exclusion keywords — titles to filter out (software engineer, recruiter, saas)
  • Domain relevance keywords — core industry terms for relevance scoring

Present keywords to user for approval before running.

Save config in the current working directory or wherever the user prefers:

Config JSON structure:

json
{
  "client_name": "example",
  "domain_keywords": ["\"freight tech\" thought leadership", "supply chain innovation"],
  "exclusion_patterns": ["hiring.*position", "we.re recruiting"],
  "kol_title_keywords": ["vp", "founder", "analyst", "editor", "host"],
  "vendor_exclude_keywords": ["software engineer", "saas", "recruiter"],
  "domain_relevance_keywords": ["freight", "logistics", "supply chain"],
  "country_filter": "",
  "max_posts_per_keyword": 50,
  "min_posts": 2,
  "min_total_engagement": 50,
  "top_n_kols": 50
}

Phase 2: Run KOL Discovery Pipeline

bash
python3 skills/kol-discovery/scripts/kol_discovery.py \
  --config kol-discovery.json \
  --output-dir . \
  [--test] [--web-kols kol-web-kols.json] [--yes]

Flags:

  • --config (required) — path to client config JSON
  • --output-dir — directory for output CSV (default: current working directory)
  • --test — limit to 5 keywords (validation run)
  • --web-kols — path to web-researched KOL JSON (agent generates this)
  • --yes — skip cost confirmation prompts
  • --max-runs — override Apify run limit

What the script does:

  1. Keyword search — apimaestro/linkedin-posts-search-scraper-no-cookies for each domain keyword
  2. Author aggregation — Group posts by author, compute engagement metrics
  3. Scoring — Composite KOL score: engagement volume (log-scaled) + consistency (post count) + quality (avg engagement) + relevance (keyword breadth) + web research bonus
  4. Merge — Combine post-data KOLs with web-researched KOLs, flag overlaps
  5. Export — Ranked CSV

Cost estimate: ~$0.10 per keyword. Full run with 20 keywords: ~$2-3.

Always run with --test first.

Show full SKILL.md (238 more words)Show less

Phase 2b: Web Research (Agent-Driven)

Before or alongside the script, do web research to find known KOLs:

  • Search for "top [industry] influencers on LinkedIn"
  • Find conference speakers, newsletter authors, podcast hosts
  • Check industry publications for frequent contributors

Save as JSON in the current working directory:

json
[
  {
    "name": "Jane Doe",
    "linkedin_url": "https://www.linkedin.com/in/janedoe/",
    "source": "FreightWaves conference speaker 2025",
    "notes": "Hosts weekly logistics podcast"
  }
]

Pass to script via --web-kols.

Phase 3: Review & Refine

Present results:

  • Top 20 KOLs — rank, name, headline, KOL score, total engagement, top post
  • Source breakdown — how many from post-data vs web-research vs both
  • Keyword performance — which keywords surfaced the most KOLs

Common adjustments:

  • Too many irrelevant authors — refine domain keywords, add exclusion patterns
  • Missing known KOLs — add more keyword variants, expand web research
  • Too few results — lower min_posts or min_total_engagement thresholds

Phase 4: Output

CSV exported to the current working directory:

ColumnDescription
RankOverall rank by KOL Score
NameFull name
LinkedIn URLProfile link
HeadlineFrom LinkedIn
KOL ScoreComposite score
Total PostsPosts found in search
Total ReactionsSum of reactions across posts
Total CommentsSum of comments across posts
Avg EngagementAverage reactions+comments per post
Top Post URLHighest engagement post
Top Post PreviewFirst 100 chars of top post
Sourcepost-data / web-research / both

Tools Required

  • Apify API token — set as APIFY_API_TOKEN in .env
  • Apify actors used:
    • apimaestro/linkedin-posts-search-scraper-no-cookies (keyword search)

Example Usage

Trigger phrases:

  • "Find KOLs in the freight/logistics space"
  • "Who are the influencers in [industry]?"
  • "Discover thought leaders for [domain]"
  • "Run KOL discovery for [client]"

With existing config:

bash
python3 skills/kol-discovery/scripts/kol_discovery.py \
  --config clients/example/configs/kol-discovery.json \
  --output-dir clients/example/leads --yes

© gooseworks-ai, 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 2 other files (scripts) in skills/social/capabilities/kol-discovery of gooseworks-ai/goose-skills.

  • SKILL.md
  • scripts/kol_discovery.py
  • skill.meta.json

Open the folder on GitHubat commit c650c6d

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in gooseworks-ai/goose-skills, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Kol Discovery 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.

Kol Discovery compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Kol Discovery this skillgooseworks-ai/goose-skills1.2k1 repos~1.5kAutomated safety check: NotesMIT
Employee Generated Contentkostja94/marketing-skills1k—~1.2kAutomated safety check: PassMIT
Socialcoreyhaines31/marketingskills54k4 repos~4.5kAutomated safety check: PassMIT
Social Contentfreekmurze/dotfiles1k23 repos~2.1kAutomated safety check: PassNone
Linkedin Marketingsergebulaev/linkedin-skills4.4k1 repos~3.2kAutomated safety check: NotesMIT
Linkedin Content Plannersergebulaev/linkedin-skills4.4k1 repos~2.1kAutomated safety check: PassMIT

Similar skills

  • Employee Generated Content

    kostja94/marketing-skills

    When the user wants to plan, implement, or optimize employee-generated content (EGC) or employee advocacy.

    1k GitHub stars~1.2k tokensUpdated 5 days ago
    Writing & ContentAuto-check passed
  • Social

    coreyhaines31/marketingskills

    When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, or Facebook, or wants to do social listening and engagement triage.

    54k GitHub starsUsed in 4 repos~4.5k tokens
    Writing & ContentAuto-check passed
  • Social Content

    freekmurze/dotfiles

    When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, Facebook, or other platforms.

    1k GitHub starsUsed in 23 repos~2.1k tokens
    Writing & ContentAuto-check passed
  • Linkedin Marketing

    sergebulaev/linkedin-skills

    Plan, draft, audit, and publish LinkedIn posts and comments.

    4.4k GitHub starsUsed in 1 repo~3.2k tokens
    Writing & ContentAuto-check: notes
  • Linkedin Content Planner

    sergebulaev/linkedin-skills

    Generate a 7-day LinkedIn content plan from a theme, audience, and pillars.

    4.4k GitHub starsUsed in 1 repo~2.1k tokens
    Writing & ContentAuto-check passed
  • Typefully

    freekmurze/dotfiles

    Create, schedule, and manage social media posts via Typefully.

    1k GitHub starsUsed in 1 repo~3.4k tokens
    Writing & ContentAuto-check: notes

More from gooseworks-ai/goose-skills

All 273 skills in this repo
  • Reddit Post Finder

    gooseworks-ai/goose-skills

    Scrape and search Reddit posts using Apify. An agent skill from gooseworks-ai/goose-skills.

    1.2k GitHub starsUsed in 1 repo~1.2k tokens
    Auto-check passed
  • Create Image Fal

    gooseworks-ai/goose-skills

    Generate or edit an image via any FAL image model (nano-banana edit, gpt-image, flux, ...), ROUTED THROUGH THE fal-proxy so it bills the Ads agent.

    1.2k GitHub stars~1.3k tokensUpdated yesterday
    Auto-check passed
  • Render Hook Replacement

    gooseworks-ai/goose-skills

    Replace an existing video's opening with a supplied clip or free kinetic text hook while retaining and verifying every original body frame, audio, captions and ending.

    1.2k GitHub stars~2.3k tokensUpdated yesterday
    Auto-check passed
  • Blog Feed Monitor

    gooseworks-ai/goose-skills

    Scrape blog posts via RSS feeds (free, no API key) with Apify fallback for JS-heavy sites.

    1.2k GitHub starsUsed in 1 repo~578 tokens
    Auto-check passed
  • Competitor Post Engagers

    gooseworks-ai/goose-skills

    Find leads by scraping engagers from a competitor's top LinkedIn posts.

    1.2k GitHub starsUsed in 1 repo~1.8k tokens
    Auto-check: notes
  • Render Chatgpt Chat

    gooseworks-ai/goose-skills

    Assemble a ChatGPT chat-reveal video ad from a thread + timeline JSON — one continuous Playwright recording of a ChatGPT mobile chat (user types with the iOS keyboard up → taps send → keyboard…

    1.2k GitHub stars~2.3k tokensUpdated yesterday
    Auto-check passed

Works with

Questions about Kol Discovery

What does Kol Discovery do?

Find Key Opinion Leaders (KOLs) in a given domain by combining web research with LinkedIn post search. Kol Discovery is an agent skill from gooseworks-ai/goose-skills. Find Key Opinion Leaders (KOLs) in a given domain by combining web research with LinkedIn post search.

When should I use Kol Discovery?

Kol Discovery fits situations like: someone wants to find influencers in X space; who are the KOLs for Y industry.

How do I install Kol Discovery in Claude Code?

Run `npx skills add gooseworks-ai/goose-skills --skill kol-discovery -a claude-code`. Or copy the skill folder (skills/social/capabilities/kol-discovery in gooseworks-ai/goose-skills) into .claude/skills/kol-discovery in your project. Claude Code loads it when a task matches its description.

How do I install Kol Discovery in Codex?

Run `npx skills add gooseworks-ai/goose-skills --skill kol-discovery -a codex`. Or copy the skill folder (skills/social/capabilities/kol-discovery in gooseworks-ai/goose-skills) into .agents/skills/kol-discovery in your project. Codex loads it when a task matches its description.

Can I use Kol Discovery 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 gooseworks-ai/goose-skills --skill kol-discovery -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/kol-discovery, .gemini/skills/kol-discovery, .github/skills/kol-discovery and .opencode/skills/kol-discovery in your project.

What does Kol Discovery need to run?

Going by SKILL.md and its folder, Kol Discovery needs Python for the scripts in its folder, the command-line tools its instructions call (python3) and credentials named APIFY_API_TOKEN. Our summary lists: Python 3; A credential in APIFY_API_TOKEN.

Does Kol Discovery 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 Kol Discovery 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. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Kol Discovery use?

Kol Discovery 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 Kol Discovery use?

About 1.5k tokens (SKILL.md is roughly 6.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Kol Discovery?

Skills that share tags, products or a category with Kol Discovery: Employee Generated Content (kostja94/marketing-skills, 1k stars), Social (coreyhaines31/marketingskills, 54k stars), Social Content (freekmurze/dotfiles, 1k stars) and Linkedin Marketing (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 Kol Discovery?

gooseworks-ai (a GitHub organization) maintains it in gooseworks-ai/goose-skills, which has 1,240 GitHub stars. The repository holds 273 skills in this directory. The repository was last updated on October 8, 2026.

Source: gooseworks-ai/goose-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.