Competitor Content Tracker
Competitor content tracker

Monitor competitor content across blogs, LinkedIn, and Twitter/X on a recurring basis. Surfaces new posts, trending topics, and content gaps you can own.
--- name: competitor-content-tracker description: > Monitor competitor content across blogs, LinkedIn, and Twitter/X on a recurring basis. Surfaces new posts, trending topics, and content gaps you can own. Chains blog-feed-monitor, linkedin-profile-post-scraper, and twitter-mention-tracker. Use when you want a weekly digest of what competitors are publishing and which topics are generating engagement. tags: [competitive-intel] --- # Competitor Content Tracker Monitor competitor content activity across three channels — blog, LinkedIn, Twitter/X — and produce a consolidated digest highlighting what's new, what's getting traction, and where you have a content gap. ## When to Use - "Track what [competitor] is publishing" - "Show me what my competitors posted this week"
Overview
Monitor competitor content activity across three channels — blog, LinkedIn, Twitter/X — and produce a consolidated digest highlighting what's new, what's getting traction, and where you have a content gap.
Manual install (npx, ZIP)
npx skills add gooseworks-ai/goose-skills --skill competitor-content-tracker -g -a claude-codemkdir -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/competitive-intel/composites/competitor-content-trackerNew-Item -ItemType Directory -Force "$HOME\.claude\skills" | Out-Null; Invoke-WebRequest "https://m.agentalley.io/zip/b11a45a5d033d81da03b/competitor-content-tracker.zip" -OutFile "$env:TEMP\competitor-content-tracker.zip"; Expand-Archive "$env:TEMP\competitor-content-tracker.zip" -DestinationPath "$HOME\.claude\skills" -ForceConnects with Agent Alley MCP · agentalley.io/mcp
Files included
SKILL.md5.5 KBskill.meta.json402 B
Read the files here
gooseworks-ai/
Shared references3SKILL.md reads these from elsewhere in the repo. Not in the ZIP.
- scrape_blogs.pyskills/monitoring/capabilities/blog-feed-monitor/scripts/15.0 KB
- search_twitter.pyskills/monitoring/capabilities/twitter-mention-tracker/scripts/7.9 KB
- scrape_linkedin_posts.pyskills/social/capabilities/linkedin-profile-post-scraper/scripts/9.3 KB
Show the full text191 lines
Competitor Content Tracker
Monitor competitor content activity across three channels — blog, LinkedIn, Twitter/X — and produce a consolidated digest highlighting what's new, what's getting traction, and where you have a content gap.
When to Use
- "Track what [competitor] is publishing"
- "Show me what my competitors posted this week"
- "What topics are competitors winning on?"
- "I want a weekly competitor content digest"
Phase 0: Intake
Competitors to Track
- List of competitor company names + blog URLs (e.g.,
https://clay.com/blog) - LinkedIn profile URLs of competitor founders/CMOs to track (optional but high-value)
- Twitter/X handles of the competitors or their founders (optional)
Scope
- How far back? (default: 7 days for weekly digest, 30 days for first run)
- Any topics/keywords you care most about? (used to surface relevant posts first)
Output
- Format preference: full digest (everything) or highlights only (top 3-5 per competitor)?
Save config to clients/<client-name>/configs/competitor-content-tracker.json.
{
"competitors": [
{
"name": "Clay",
"blog_url": "https://clay.com/blog",
"linkedin_profiles": ["https://www.linkedin.com/in/kareem-amin/"],
"twitter_handles": ["@clay_hq", "@kareemamin"]
}
],
"days_back": 7,
"keywords": ["GTM", "outbound", "AI agents", "growth"],
"output_mode": "highlights"
}
Phase 1: Scrape Blog Content
Run blog-feed-monitor for each competitor blog URL:
python3 skills/capabilities/blog-feed-monitor/scripts/scrape_blogs.py \
--urls "<competitor_blog_url>" \
--days <days_back> \
--keywords "<keywords>" \
--output summary
Collect: post title, publish date, URL, excerpt.
Phase 2: Scrape LinkedIn Posts
Run linkedin-profile-post-scraper for each tracked founder/executive LinkedIn URL:
python3 skills/capabilities/linkedin-profile-post-scraper/scripts/scrape_linkedin_posts.py \
--profiles "<linkedin_url_1>,<linkedin_url_2>" \
--days <days_back> \
--max-posts 20 \
--output summary
Collect: post text preview, date, reactions, comments, post URL.
Phase 3: Scrape Twitter/X
Run twitter-mention-tracker for each handle:
python3 skills/capabilities/twitter-mention-tracker/scripts/search_twitter.py \
--query "from:<handle>" \
--since <YYYY-MM-DD> \
--until <YYYY-MM-DD> \
--max-tweets 20 \
--output summary
Collect: tweet text, date, likes, retweets, URL.
Phase 4: Analyze & Synthesize
After collecting raw data, synthesize across all channels:
For each competitor, identify:
- New blog posts — titles, dates, topics
- Top LinkedIn post — by engagement (reactions + comments), topic, key message
- Top tweet — by likes, topic
- Recurring themes — what topics did they post about most this period?
- Content format patterns — are they doing listicles, opinion pieces, case studies?
Cross-competitor analysis:
- Shared trending topics — what are multiple competitors writing about?
- Coverage gaps — topics they're covering that you're not
- Topics you own — where you're publishing and they're not
- Engagement benchmarks — average likes/reactions across competitors (context for your own performance)
Phase 5: Output Format
Produce a structured markdown digest:
# Competitor Content Digest — Week of [DATE]
## Summary
- [N] new blog posts tracked across [N] competitors
- Top trending topic: [topic]
- Biggest content gap for you: [topic]
---
## [Competitor Name]
### Blog
- [Post Title] — [Date] — [URL]
> [One-sentence summary]
### LinkedIn (top post)
> "[Post preview...]"
— [Author], [Date] | [Reactions] reactions, [Comments] comments
[URL]
### Twitter/X (top tweet)
> "[Tweet text]"
— [@handle], [Date] | [Likes] likes
[URL]
### Themes this week: [tag1], [tag2], [tag3]
---
## Content Gap Analysis
| Topic | Competitors covering | You covering |
|-------|---------------------|--------------|
| [topic] | Clay, Apollo | ❌ No |
| [topic] | Nobody | ✅ Yes |
## Recommended Actions
1. [Specific content opportunity to act on this week]
2. [Topic to consider writing a response/alternative take on]
Save digest to clients/<client-name>/intelligence/competitor-content-[YYYY-MM-DD].md.
Scheduling
This skill is designed to run weekly (Mondays recommended). Set up a cron job:
# Every Monday at 8am
0 8 * * 1 python3 run_skill.py competitor-content-tracker --client <client-name>
Cost
| Component | Cost |
|---|---|
| Blog scraping (RSS mode) | Free |
| LinkedIn post scraping | ~$0.05-0.20/profile (Apify) |
| Twitter scraping | ~$0.01-0.05 per run |
| Total per weekly run | ~$0.10-0.50 depending on scope |
Tools Required
- Apify access — via Gooseworks proxy by default (no key needed); set
APIFY_API_TOKENto BYO Apify - Upstream skills:
blog-feed-monitor,linkedin-profile-post-scraper,twitter-mention-tracker
Trigger Phrases
- "Run competitor content tracker for [client]"
- "What did my competitors publish this week?"
- "Give me a competitor content digest"
- "What's [competitor] writing about?"
| 1 | |
| 2 | name competitor-content-tracker |
| 3 | description > |
| 4 | Monitor competitor content across blogs, LinkedIn, and Twitter/X on a recurring basis. |
| 5 | Surfaces new posts, trending topics, and content gaps you can own. Chains blog-feed-monitor, |
| 6 | linkedin-profile-post-scraper, and twitter-mention-tracker. Use when you want a weekly digest |
| 7 | of what competitors are publishing and which topics are generating engagement. |
| 8 | tags [competitive-intel] |
| 9 | |
| 10 | |
| 11 | # Competitor Content Tracker |
| 12 | |
| 13 | Monitor competitor content activity across three channels — blog, LinkedIn, Twitter/X — and produce a consolidated digest highlighting what's new, what's getting traction, and where you have a content gap. |
| 14 | |
| 15 | ## When to Use |
| 16 | |
| 17 | "Track what [competitor] is publishing" |
| 18 | "Show me what my competitors posted this week" |
| 19 | "What topics are competitors winning on?" |
| 20 | "I want a weekly competitor content digest" |
| 21 | |
| 22 | ## Phase 0: Intake |
| 23 | |
| 24 | ### Competitors to Track |
| 25 | List of competitor company names + blog URLs (e.g., `https://clay.com/blog`) |
| 26 | LinkedIn profile URLs of competitor founders/CMOs to track (optional but high-value) |
| 27 | Twitter/X handles of the competitors or their founders (optional) |
| 28 | |
| 29 | ### Scope |
| 30 | How far back? (default: 7 days for weekly digest, 30 days for first run) |
| 31 | Any topics/keywords you care most about? (used to surface relevant posts first) |
| 32 | |
| 33 | ### Output |
| 34 | Format preference: full digest (everything) or highlights only (top 3-5 per competitor)? |
| 35 | |
| 36 | Save config to `clients/<client-name>/configs/competitor-content-tracker.json`. |
| 37 | |
| 38 | |
| 39 | { |
| 40 | "competitors": [ |
| 41 | { |
| 42 | "name": "Clay", |
| 43 | "blog_url": "https://clay.com/blog", |
| 44 | "linkedin_profiles": ["https://www.linkedin.com/in/kareem-amin/"], |
| 45 | "twitter_handles": ["@clay_hq", "@kareemamin"] |
| 46 | } |
| 47 | ], |
| 48 | "days_back": 7, |
| 49 | "keywords": ["GTM", "outbound", "AI agents", "growth"], |
| 50 | "output_mode": "highlights" |
| 51 | } |
| 52 | |
| 53 | |
| 54 | ## Phase 1: Scrape Blog Content |
| 55 | |
| 56 | Run `blog-feed-monitor` for each competitor blog URL: |
| 57 | |
| 58 | |
| 59 | python3 skills/capabilities/blog-feed-monitor/scripts/scrape_blogs.py \ |
| 60 | --urls "<competitor_blog_url>" \ |
| 61 | --days <days_back> \ |
| 62 | --keywords "<keywords>" \ |
| 63 | --output summary |
| 64 | |
| 65 | |
| 66 | Collect: post title, publish date, URL, excerpt. |
| 67 | |
| 68 | ## Phase 2: Scrape LinkedIn Posts |
| 69 | |
| 70 | Run `linkedin-profile-post-scraper` for each tracked founder/executive LinkedIn URL: |
| 71 | |
| 72 | |
| 73 | python3 skills/capabilities/linkedin-profile-post-scraper/scripts/scrape_linkedin_posts.py \ |
| 74 | --profiles "<linkedin_url_1>,<linkedin_url_2>" \ |
| 75 | --days <days_back> \ |
| 76 | --max-posts 20 \ |
| 77 | --output summary |
| 78 | |
| 79 | |
| 80 | Collect: post text preview, date, reactions, comments, post URL. |
| 81 | |
| 82 | ## Phase 3: Scrape Twitter/X |
| 83 | |
| 84 | Run `twitter-mention-tracker` for each handle: |
| 85 | |
| 86 | |
| 87 | python3 skills/capabilities/twitter-mention-tracker/scripts/search_twitter.py \ |
| 88 | --query "from:<handle>" \ |
| 89 | --since <YYYY-MM-DD> \ |
| 90 | --until <YYYY-MM-DD> \ |
| 91 | --max-tweets 20 \ |
| 92 | --output summary |
| 93 | |
| 94 | |
| 95 | Collect: tweet text, date, likes, retweets, URL. |
| 96 | |
| 97 | ## Phase 4: Analyze & Synthesize |
| 98 | |
| 99 | After collecting raw data, synthesize across all channels: |
| 100 | |
| 101 | ### For each competitor, identify: |
| 102 | **New blog posts** — titles, dates, topics |
| 103 | **Top LinkedIn post** — by engagement (reactions + comments), topic, key message |
| 104 | **Top tweet** — by likes, topic |
| 105 | **Recurring themes** — what topics did they post about most this period? |
| 106 | **Content format patterns** — are they doing listicles, opinion pieces, case studies? |
| 107 | |
| 108 | ### Cross-competitor analysis: |
| 109 | **Shared trending topics** — what are multiple competitors writing about? |
| 110 | **Coverage gaps** — topics they're covering that you're not |
| 111 | **Topics you own** — where you're publishing and they're not |
| 112 | **Engagement benchmarks** — average likes/reactions across competitors (context for your own performance) |
| 113 | |
| 114 | ## Phase 5: Output Format |
| 115 | |
| 116 | Produce a structured markdown digest: |
| 117 | |
| 118 | |
| 119 | # Competitor Content Digest — Week of [DATE] |
| 120 | |
| 121 | ## Summary |
| 122 | - [N] new blog posts tracked across [N] competitors |
| 123 | - Top trending topic: [topic] |
| 124 | - Biggest content gap for you: [topic] |
| 125 | |
| 126 | |
| 127 | |
| 128 | ## [Competitor Name] |
| 129 | |
| 130 | ### Blog |
| 131 | - [Post Title] — [Date] — [URL] |
| 132 | > [One-sentence summary] |
| 133 | |
| 134 | ### LinkedIn (top post) |
| 135 | > "[Post preview...]" |
| 136 | — [Author], [Date] | [Reactions] reactions, [Comments] comments |
| 137 | [URL] |
| 138 | |
| 139 | ### Twitter/X (top tweet) |
| 140 | > "[Tweet text]" |
| 141 | — [@handle], [Date] | [Likes] likes |
| 142 | [URL] |
| 143 | |
| 144 | ### Themes this week: [tag1], [tag2], [tag3] |
| 145 | |
| 146 | |
| 147 | |
| 148 | ## Content Gap Analysis |
| 149 | |
| 150 | | Topic | Competitors covering | You covering | |
| 151 | |-------|---------------------|--------------| |
| 152 | | [topic] | Clay, Apollo | ❌ No | |
| 153 | | [topic] | Nobody | ✅ Yes | |
| 154 | |
| 155 | ## Recommended Actions |
| 156 | 1. [Specific content opportunity to act on this week] |
| 157 | 2. [Topic to consider writing a response/alternative take on] |
| 158 | |
| 159 | |
| 160 | Save digest to `clients/<client-name>/intelligence/competitor-content-[YYYY-MM-DD].md`. |
| 161 | |
| 162 | ## Scheduling |
| 163 | |
| 164 | This skill is designed to run weekly (Mondays recommended). Set up a cron job: |
| 165 | |
| 166 | |
| 167 | # Every Monday at 8am |
| 168 | 0 8 * * 1 python3 run_skill.py competitor-content-tracker --client <client-name> |
| 169 | |
| 170 | |
| 171 | ## Cost |
| 172 | |
| 173 | | Component | Cost | |
| 174 | |-----------|------| |
| 175 | | Blog scraping (RSS mode) | Free | |
| 176 | | LinkedIn post scraping | ~$0.05-0.20/profile (Apify) | |
| 177 | | Twitter scraping | ~$0.01-0.05 per run | |
| 178 | | **Total per weekly run** | **~$0.10-0.50** depending on scope | |
| 179 | |
| 180 | ## Tools Required |
| 181 | |
| 182 | **Apify access** — via Gooseworks proxy by default (no key needed); set `APIFY_API_TOKEN` to BYO Apify |
| 183 | **Upstream skills:** `blog-feed-monitor`, `linkedin-profile-post-scraper`, `twitter-mention-tracker` |
| 184 | |
| 185 | ## Trigger Phrases |
| 186 | |
| 187 | "Run competitor content tracker for [client]" |
| 188 | "What did my competitors publish this week?" |
| 189 | "Give me a competitor content digest" |
| 190 | "What's [competitor] writing about?" |
| 191 |
Details
- Updated
- Sep 21, 2026
- License
- MIT
- Stars on the repo
- ★ 1,220
- Checked
- Source
- gooseworks-ai/goose-skills ↗
- Creator
- gooseworks-ai · 205 listings
Similar skills
See all →
SkillCompany Valuation Calculator
SkillKeyword Gap Analyzer
SkillAd Angle Miner
SkillCompetitor Content Intelligence
SkillCompetitive Win Cards
SkillX Audience AnalyzerMore from gooseworks-ai
SkillAd Angle Miner
SkillAd Campaign Analyzer
SkillLead Quality Analyzer
SkillMessage Match Auditor
SkillAI Search Visibility
SkillAmazon Product Search