New: Earn 20% as an AgentAlley affiliate. Share your link and earn on every sale you refer. Join now New: Earn 20% as an affiliate. Join now

Track what key opinion leaders in your space are posting

Kol content monitor

by gooseworks-ai · MIT license · ★ 1,220 on GitHub · updated Sep 21

Kol content monitor cover

Track what key opinion leaders (KOLs) in your space are posting on LinkedIn and Twitter/X. Surfaces trending narratives, high-engagement topics, and early signals of emerging conversations before they peak.

---
name: kol-content-monitor
description: >
  Track what key opinion leaders (KOLs) in your space are posting on LinkedIn and Twitter/X.
  Surfaces trending narratives, high-engagement topics, and early signals of emerging
  conversations before they peak. Chains linkedin-profile-post-scraper and twitter-mention-tracker.
  Use when a marketing team wants to ride trends rather than create them from scratch,
  or when a founder wants to know which topics are resonating with their audience.
tags: [monitoring]
---

# KOL Content Monitor

Track what Key Opinion Leaders in your space are writing about. Surface trending narratives early — before they peak — so your team can join the conversation at the right time with relevant content.

**Core principle:** For seed-stage teams, the fastest path to content distribution is riding a wave that's already breaking, not creating one from scratch.

## When to Use

Overview

Track what Key Opinion Leaders in your space are writing about. Surface trending narratives early — before they peak — so your team can join the conversation at the right time with relevant content.

Manual install (npx, ZIP)
Claude Codenpx skills add gooseworks-ai/goose-skills --skill kol-content-monitor -g -a claude-code
Claude Code (manual)mkdir -p ~/.claude/skills && curl -sL https://codeload.github.com/gooseworks-ai/goose-skills/tar.gz/615c685f34f8 \ | tar -xz -C ~/.claude/skills --strip-components=4 goose-skills-615c685f34f8/skills/monitoring/composites/kol-content-monitor
Windows (PowerShell)New-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/964d865d4e4a9885df77/kol-content-monitor.zip" -OutFile "$env:TEMP\kol-content-monitor.zip"; Expand-Archive "$env:TEMP\kol-content-monitor.zip" -DestinationPath "$HOME\.claude\skills" -Force
Claude.ai / desktopDownload the ZIP and upload it under Settings → Capabilities → Skills.
Codex, Cursor, other agentsPoint them at SKILL.md. The other files are plain text.

Connects with Agent Alley MCP · agentalley.io/mcp

Files included

  • SKILL.md6.6 KB
  • skill.meta.json377 B
Read the files here
gooseworks-ai/615c6852 files
Shared references2SKILL.md reads these from elsewhere in the repo. Not in the ZIP.Get them on GitHub ↗
SKILL.md
Show the full text216 lines

KOL Content Monitor

Track what Key Opinion Leaders in your space are writing about. Surface trending narratives early — before they peak — so your team can join the conversation at the right time with relevant content.

Core principle: For seed-stage teams, the fastest path to content distribution is riding a wave that's already breaking, not creating one from scratch.

When to Use

  • "What are the top voices in [our space] posting about?"
  • "What topics are trending on LinkedIn in [industry]?"
  • "I want to know what content is resonating before I write anything"
  • "Track [list of founders/experts] and tell me what they're saying"
  • "Find trending narratives I can contribute to"

Phase 0: Intake

KOL List
  1. Names and LinkedIn URLs of KOLs to track (if known)
    • If unknown: use kol-discovery skill first to build the list
  2. Twitter/X handles for the same KOLs (optional but recommended for full picture)
  3. Any specific topics/keywords you care about? (for filtering noisy feeds)
Scope
  1. How far back? (default: 7 days for weekly monitor, 30 days for first run)
  2. Minimum engagement threshold to include a post? (default: 20 reactions/likes)

Save config to the current working directory as kol-monitor.json (or user-specified path).

{
  "kols": [
    {
      "name": "Lenny Rachitsky",
      "linkedin": "https://www.linkedin.com/in/lennyrachitsky/",
      "twitter": "@lennysan"
    },
    {
      "name": "Kyle Poyar",
      "linkedin": "https://www.linkedin.com/in/kylepoyar/",
      "twitter": "@kylepoyar"
    }
  ],
  "days_back": 7,
  "min_reactions": 20,
  "keywords": ["GTM", "growth", "AI", "outbound", "founder"],
  "output_path": "kol-monitor-[DATE].md"
}

Phase 1: Scrape LinkedIn Posts

Run linkedin-profile-post-scraper for all KOL LinkedIn profiles:

python3 skills/linkedin-profile-post-scraper/scripts/scrape_linkedin_posts.py \
  --profiles "<url1>,<url2>,<url3>" \
  --days <days_back> \
  --max-posts 20 \
  --output json

Filter results: only include posts with reactions ≥ min_reactions.

Phase 2: Scrape Twitter/X Posts

Run twitter-mention-tracker for each handle:

python3 skills/twitter-mention-tracker/scripts/search_twitter.py \
  --query "from:<handle>" \
  --since <YYYY-MM-DD> \
  --until <YYYY-MM-DD> \
  --max-tweets 20 \
  --output json

Filter: only include tweets with likes ≥ min_reactions / 2 (Twitter engagement is lower than LinkedIn).

Phase 3: Topic Clustering

Group all posts across all KOLs by topic/theme:

Clustering approach:
  1. Extract the main topic from each post (1-3 word label)
  2. Group similar topics together
  3. Count: how many KOLs touched this topic? How many total posts?
  4. Rank by: total engagement (sum of reactions/likes across all posts on that topic)

This surfaces topics with broad consensus (multiple KOLs talking about it) vs. individual takes.

Signal types to flag:
Signal Meaning Example
Convergence 3+ KOLs on same topic in same week Multiple founders posting about "AI SDR fatigue"
Spike Topic that 2x'd in volume vs last week Suddenly everyone's talking about [new thing]
Underdog 1 KOL posting about topic nobody else covers Potential early-mover opportunity
Controversy Posts with high comment/reaction ratio Debate you could weigh in on

Phase 4: Output Format

# KOL Content Monitor — Week of [DATE]

## Tracked KOLs
[N] KOLs | [N] LinkedIn posts | [N] tweets | Period: [date range]

---

## Trending Topics This Week

### 1. [Topic Name] — CONVERGENCE SIGNAL
- **KOLs discussing:** [Name 1], [Name 2], [Name 3]
- **Total posts:** [N] | **Total engagement:** [N] reactions/likes
- **Trend direction:** ↑ New this week / ↑↑ Growing / → Stable

**Best posts on this topic:**

> "[Post excerpt — first 150 chars]"
— [Author], [Date] | [N] reactions
[LinkedIn URL]

> "[Tweet text]"
— [@handle], [Date] | [N] likes
[Twitter URL]

**Content opportunity:** [1-2 sentences on how to contribute to this conversation]

---

### 2. [Topic Name]
...

---

## High-Engagement Posts (Top 5 This Week)

| Post | Author | Platform | Engagement | Topic |
|------|--------|----------|------------|-------|
| "[Preview...]" | [Name] | LinkedIn | [N] reactions | [topic] |
...

---

## Emerging Topics to Watch

Topics picked up by 1 KOL this week — too early to call a trend but worth tracking:
- [Topic] — [KOL name] — [brief description]
- [Topic] — ...

---

## Recommended Content Actions

### This Week (Ride the Wave)
1. **[Topic]** is peaking — ideal moment to publish your take. Suggested angle: [angle]
2. **[Controversy]** is generating debate — consider a nuanced response post. Your positioning: [suggestion]

### Next Week (Get Ahead)
1. **[Emerging topic]** is early-stage — write something now before it gets crowded.

Save to the current working directory as kol-monitor-[YYYY-MM-DD].md (or user-specified path).

Phase 5: Build Trigger-Based Content Calendar

Optional: from the monitor output, propose a content calendar entry for each "Ride the Wave" opportunity:

Topic: [topic]
Best post format: [LinkedIn insight post / tweet thread / blog]
Suggested hook: [hook]
Supporting points: [3 bullets from your product/experience]
Ideal publish date: [within 3 days of peak]

Scheduling

Run weekly (Friday afternoon — catches the week's peaks and gives weekend to draft):

0 14 * * 5 python3 run_skill.py kol-content-monitor --client <client-name>

Cost

Component Cost
LinkedIn post scraping (per profile) ~$0.05-0.20 (Apify)
Twitter scraping (per run) ~$0.01-0.05
Total per weekly run (10 KOLs) ~$0.50-2.00

Tools Required

  • Apify API token — APIFY_API_TOKEN env var
  • Upstream skills: linkedin-profile-post-scraper, twitter-mention-tracker
  • Optional upstream: kol-discovery (to build initial KOL list)

Trigger Phrases

  • "What are the top voices in [space] posting about this week?"
  • "Track my KOL list and give me content ideas"
  • "Run KOL content monitor for [client]"
  • "What's trending on LinkedIn in [industry]?"
1---
2name: kol-content-monitor
3description: >
4 Track what key opinion leaders (KOLs) in your space are posting on LinkedIn and Twitter/X.
5 Surfaces trending narratives, high-engagement topics, and early signals of emerging
6 conversations before they peak. Chains linkedin-profile-post-scraper and twitter-mention-tracker.
7 Use when a marketing team wants to ride trends rather than create them from scratch,
8 or when a founder wants to know which topics are resonating with their audience.
9tags: [monitoring]
10---
11 
12# KOL Content Monitor
13 
14Track what Key Opinion Leaders in your space are writing about. Surface trending narratives early — before they peak — so your team can join the conversation at the right time with relevant content.
15 
16**Core principle:** For seed-stage teams, the fastest path to content distribution is riding a wave that's already breaking, not creating one from scratch.
17 
18## When to Use
19 
20- "What are the top voices in [our space] posting about?"
21- "What topics are trending on LinkedIn in [industry]?"
22- "I want to know what content is resonating before I write anything"
23- "Track [list of founders/experts] and tell me what they're saying"
24- "Find trending narratives I can contribute to"
25 
26## Phase 0: Intake
27 
28### KOL List
291. Names and LinkedIn URLs of KOLs to track (if known)
30 - If unknown: use `kol-discovery` skill first to build the list
312. Twitter/X handles for the same KOLs (optional but recommended for full picture)
323. Any specific topics/keywords you care about? (for filtering noisy feeds)
33 
34### Scope
354. How far back? (default: 7 days for weekly monitor, 30 days for first run)
365. Minimum engagement threshold to include a post? (default: 20 reactions/likes)
37 
38Save config to the current working directory as `kol-monitor.json` (or user-specified path).
39 
40```json
41{
42 "kols": [
43 {
44 "name": "Lenny Rachitsky",
45 "linkedin": "https://www.linkedin.com/in/lennyrachitsky/",
46 "twitter": "@lennysan"
47 },
48 {
49 "name": "Kyle Poyar",
50 "linkedin": "https://www.linkedin.com/in/kylepoyar/",
51 "twitter": "@kylepoyar"
52 }
53 ],
54 "days_back": 7,
55 "min_reactions": 20,
56 "keywords": ["GTM", "growth", "AI", "outbound", "founder"],
57 "output_path": "kol-monitor-[DATE].md"
58}
59```
60 
61## Phase 1: Scrape LinkedIn Posts
62 
63Run `linkedin-profile-post-scraper` for all KOL LinkedIn profiles:
64 
65```bash
66python3 skills/linkedin-profile-post-scraper/scripts/scrape_linkedin_posts.py \
67 --profiles "<url1>,<url2>,<url3>" \
68 --days <days_back> \
69 --max-posts 20 \
70 --output json
71```
72 
73Filter results: only include posts with reactions ≥ `min_reactions`.
74 
75## Phase 2: Scrape Twitter/X Posts
76 
77Run `twitter-mention-tracker` for each handle:
78 
79```bash
80python3 skills/twitter-mention-tracker/scripts/search_twitter.py \
81 --query "from:<handle>" \
82 --since <YYYY-MM-DD> \
83 --until <YYYY-MM-DD> \
84 --max-tweets 20 \
85 --output json
86```
87 
88Filter: only include tweets with likes ≥ `min_reactions / 2` (Twitter engagement is lower than LinkedIn).
89 
90## Phase 3: Topic Clustering
91 
92Group all posts across all KOLs by topic/theme:
93 
94### Clustering approach:
951. Extract the main topic from each post (1-3 word label)
962. Group similar topics together
973. Count: how many KOLs touched this topic? How many total posts?
984. Rank by: total engagement (sum of reactions/likes across all posts on that topic)
99 
100This surfaces topics with **broad consensus** (multiple KOLs talking about it) vs. individual takes.
101 
102### Signal types to flag:
103 
104| Signal | Meaning | Example |
105|--------|---------|---------|
106| **Convergence** | 3+ KOLs on same topic in same week | Multiple founders posting about "AI SDR fatigue" |
107| **Spike** | Topic that 2x'd in volume vs last week | Suddenly everyone's talking about [new thing] |
108| **Underdog** | 1 KOL posting about topic nobody else covers | Potential early-mover opportunity |
109| **Controversy** | Posts with high comment/reaction ratio | Debate you could weigh in on |
110 
111## Phase 4: Output Format
112 
113```markdown
114# KOL Content Monitor — Week of [DATE]
115 
116## Tracked KOLs
117[N] KOLs | [N] LinkedIn posts | [N] tweets | Period: [date range]
118 
119---
120 
121## Trending Topics This Week
122 
123### 1. [Topic Name] — CONVERGENCE SIGNAL
124- **KOLs discussing:** [Name 1], [Name 2], [Name 3]
125- **Total posts:** [N] | **Total engagement:** [N] reactions/likes
126- **Trend direction:** ↑ New this week / ↑↑ Growing / → Stable
127 
128**Best posts on this topic:**
129 
130> "[Post excerpt — first 150 chars]"
131— [Author], [Date] | [N] reactions
132[LinkedIn URL]
133 
134> "[Tweet text]"
135— [@handle], [Date] | [N] likes
136[Twitter URL]
137 
138**Content opportunity:** [1-2 sentences on how to contribute to this conversation]
139 
140---
141 
142### 2. [Topic Name]
143...
144 
145---
146 
147## High-Engagement Posts (Top 5 This Week)
148 
149| Post | Author | Platform | Engagement | Topic |
150|------|--------|----------|------------|-------|
151| "[Preview...]" | [Name] | LinkedIn | [N] reactions | [topic] |
152...
153 
154---
155 
156## Emerging Topics to Watch
157 
158Topics picked up by 1 KOL this week — too early to call a trend but worth tracking:
159- [Topic] — [KOL name] — [brief description]
160- [Topic] — ...
161 
162---
163 
164## Recommended Content Actions
165 
166### This Week (Ride the Wave)
1671. **[Topic]** is peaking — ideal moment to publish your take. Suggested angle: [angle]
1682. **[Controversy]** is generating debate — consider a nuanced response post. Your positioning: [suggestion]
169 
170### Next Week (Get Ahead)
1711. **[Emerging topic]** is early-stage — write something now before it gets crowded.
172```
173 
174Save to the current working directory as `kol-monitor-[YYYY-MM-DD].md` (or user-specified path).
175 
176## Phase 5: Build Trigger-Based Content Calendar
177 
178Optional: from the monitor output, propose a content calendar entry for each "Ride the Wave" opportunity:
179 
180```
181Topic: [topic]
182Best post format: [LinkedIn insight post / tweet thread / blog]
183Suggested hook: [hook]
184Supporting points: [3 bullets from your product/experience]
185Ideal publish date: [within 3 days of peak]
186```
187 
188## Scheduling
189 
190Run weekly (Friday afternoon — catches the week's peaks and gives weekend to draft):
191 
192```bash
1930 14 * * 5 python3 run_skill.py kol-content-monitor --client <client-name>
194```
195 
196## Cost
197 
198| Component | Cost |
199|-----------|------|
200| LinkedIn post scraping (per profile) | ~$0.05-0.20 (Apify) |
201| Twitter scraping (per run) | ~$0.01-0.05 |
202| **Total per weekly run (10 KOLs)** | **~$0.50-2.00** |
203 
204## Tools Required
205 
206- **Apify API token** — `APIFY_API_TOKEN` env var
207- **Upstream skills:** `linkedin-profile-post-scraper`, `twitter-mention-tracker`
208- **Optional upstream:** `kol-discovery` (to build initial KOL list)
209 
210## Trigger Phrases
211 
212- "What are the top voices in [space] posting about this week?"
213- "Track my KOL list and give me content ideas"
214- "Run KOL content monitor for [client]"
215- "What's trending on LinkedIn in [industry]?"
216 
View all files on GitHub →

Details

Updated
Sep 21, 2026
License
MIT
Stars on the repo
★ 1,220
Checked
Source
gooseworks-ai/goose-skills ↗
Creator
gooseworks-ai · 206 listings
View creator

Made with kol-content-monitor

Kol content monitor — CleanShot 2026-07-13 at 20 16 54@2x (from the gooseworks-ai/goose-skills README)
Kol content monitor — CleanShot 2026-07-13 at 20 16 54@2x (from the gooseworks-ai/goose-skills README)

by gooseworks-ai

Similar skills

See all →
SkillResearch what people actually say about any topicSTEP 0: STALE-CLONE SELF-CHECK — RUN BEFORE READING BELOWmvanhorn/last30days-skill · by mvanhornResearch what people actually say about any topic in the last 30 days. Pulls posts and engagement from Reddit, X, YouTube, TikTok, Hacker News, Polymarket, GitHub, and the web. Includes a doctor health check to diagnose broken or missing sources.★ 63.5k GitHub starsSkillScrapes social platforms, business dataApifydanielmiessler/LifeOS · by danielmiesslerScrapes social platforms, business data, and e-commerce via Apify actors — Instagram, LinkedIn, TikTok, YouTube, Facebook, Google Maps, Amazon, and web crawls — filtering in code. USE WHEN scrape Instagram, scrape LinkedIn, scrape TikTok, scrape YouTube, scrape Facebook, Google Maps leads, Amazon reviews, business intelligence, multi-platform social listening, competitive analysis, lead generation, social monitoring, Apify actors, web crawl, extract contacts. NOT FOR X/Twitter account operations like posting, threads, or bookmarks (those need a dedicated X API client), 4-tier progressive scraping with proxy escalation (use BrightData), or real-Chrome bot bypass and computer use (use Interceptor).★ 19.3k GitHub starsSkill微信公众号长文增长闭环 ——tsingyuai/growth-lab · by tsingyuai微信公众号长文增长闭环 —— 从读者问题与复刻锚选题、写出可验证的公众号长文、预览与合规检查、同步微信草稿、三重确认下受控发布,到回收阅读与转化数据并复盘。用户要求写公众号、把内容改成公众号、同步或发布微信草稿、查看公众号数据或复盘时使用。★ 2k GitHub starsSkillSearch and retrieve content from Twitter/XTwitter/X SkillReScienceLab/opc-skills · by ReScienceLabSearch and retrieve content from Twitter/X. Get user info, tweets, replies, followers, communities, spaces, and trends via twitterapi.io. Use when user mentions Twitter, X, or tweets.★ 1.8k GitHub starsSkillSays 'YouTube script', 'video script'🎬 YouTube Script: Writing retention-optimized video script...cwinvestments/memstack · by cwinvestmentsUse this skill when the user says 'YouTube script', 'video script', 'write script for YouTube', 'YouTube video outline', or is creating scripted content for a YouTube video with hooks, chapters, and CTAs. Do NOT use for TikTok/Reels short-form scripts or webinar presentations.★ 423 GitHub starsSkillAgent Reach — 互联网能力路由器Ootto-AI/claude-content-skills · by Ootto-AIMUST USE when user wants to 调研/research/搜索/search/查/找/look up anything on the internet — e.g. 全网调研 X / 帮我调研一下 X / 查一下 X / 搜搜 X / 看看大家怎么评价 X / X 上有什么讨论 / research this topic。 Also MUST USE when user mentions any platform or shares any URL/链接: 小红书/xiaohongshu/xhs, Twitter/推特/X, B站/bilibili, Reddit, V2EX, LinkedIn/领英/招聘/求职/jobs, YouTube, GitHub code search, 小宇宙播客, 雪球/股票行情, RSS feeds, or any web URL. 13 platforms, multi-backend routing (OpenCLI / per-platform CLIs / APIs). Zero config for 6 channels. Run `agent-reach doctor --json` to see which backend serves each platform right now. NOT for: 写报告/数据分析/翻译等内容加工(本 skill 只负责从互联网获取内容); 发帖/评论/点赞等写操作;已有专门 skill 的平台(先用专门 skill)。 【路由方式】SKILL.md 包含路由表和常用命令,复杂场景需按需阅读对应分类的 references/*.md。 分类:search / social (小红书/推特/B站/V2EX/Reddit) / career(LinkedIn) / dev(github) / web(网页/文章/RSS) / video(YouTube/B站/播客)。★ 139 GitHub stars

More from gooseworks-ai

SkillMine the highest-converting ad angles from customer reviewsAd angle minergooseworks-ai/goose-skills · by gooseworks-aiMine the highest-converting ad angles from customer reviews, Reddit complaints, support tickets, and competitor ads. Extracts actual pain language, competitor weaknesses, and outcome phrases that real buyers use. Outputs a ranked angle bank with proof quotes and recommended ad formats per angle.★ 1.2k GitHub starsSkillAnalyze ad campaign performance data to identify what'sAd campaign analyzergooseworks-ai/goose-skills · by gooseworks-aiAnalyze ad campaign performance data (Google, Meta, LinkedIn) to identify what's working, what's wasting budget, and specific cut/scale/test recommendations. Runs statistical analysis, funnel diagnostics, and multi-channel budget reallocation with specific dollar-amount shift recommendations and scenario modeling.★ 1.2k GitHub starsSkillFor paid lead-gen and participant-recruitment adsAd lead quality analyzergooseworks-ai/goose-skills · by gooseworks-aiFor paid lead-gen and participant-recruitment ads, replaces vanity CPA with true CAC per qualified lead by joining ad-platform data with downstream funnel events, surfaces tracking gaps, and classifies every creative into Scale / Keep / Investigate / Cut.★ 1.2k GitHub starsSkillAnalyze the message match between your ads and landing pagesAd to landing page auditorgooseworks-ai/goose-skills · by gooseworks-aiAnalyze the message match between your ads and landing pages. Checks if the promise in the ad copy carries through to the landing page headline, body, and CTA. Flags disconnects that kill conversion rates. Works with Google, Meta, and LinkedIn ads.★ 1.2k GitHub starsSkillCheck and improve your brand's visibility across AI searchAeogooseworks-ai/goose-skills · by gooseworks-aiCheck and improve your brand's visibility across AI search engines (ChatGPT, Perplexity, Gemini, Grok, Claude, DeepSeek). Set up tracking, run visibility analyses, audit your website for AI readability, and get actionable recommendations. Uses the npx goose-aeo@latest CLI.★ 1.2k GitHub starsSkillSearch Amazon products - find items, compare pricesAmazon Product Searchgooseworks-ai/goose-skills · by gooseworks-aiSearch Amazon products - find items, compare prices, read reviews★ 1.2k GitHub stars