Scrape blog posts via RSS feeds (free, no API key) with Apify fallback for JS-heavy sites. Use when you need to monitor competitor blogs, track industry content, or aggregate blog posts by keyword.
npx gooseworks install --all # then, in Claude Code, Cursor, or Codex: /gooseworks use the blog-feed-monitor skill
Scrape blog posts via RSS/Atom feeds (free) with optional Apify fallback for JS-heavy sites.
No API key needed for RSS mode.
# Scrape a blog's RSS feed
python3 skills/blog-feed-monitor/scripts/scrape_blogs.py \
--urls "https://example.com/blog" --days 30
# Multiple blogs with keyword filter
python3 skills/blog-feed-monitor/scripts/scrape_blogs.py \
--urls "https://blog1.com,https://blog2.com" --keywords "AI,marketing" --output summary
# Force Apify for JS-heavy sites
python3 skills/blog-feed-monitor/scripts/scrape_blogs.py \
--urls "https://example.com" --mode apify<link rel="alternate"> tags/feed, /rss, /atom.xml, /feed.xml, /rss.xml, /blog/feed, /index.xmljupri/rss-xml-scraper (if token available)Note: The Apify fallback actor
jupri/rss-xml-scrapermay need updating -- it has not been verified recently. RSS mode works reliably without it.
Only tries RSS feeds, no Apify fallback.
Uses Apify actor directly, skipping RSS discovery.
| Flag | Default | Description |
|---|---|---|
--urls | required | Blog URL(s), comma-separated |
--keywords | none | Keywords to filter (comma-separated, OR logic) |
--days | 30 | Only include posts from last N days |
--max-posts | 50 | Max posts to return |
--mode | auto | auto (RSS + fallback), rss (RSS only), apify (Apify only) |
--output | json | Output format: json or summary |
--token | env var | Apify token (only needed for Apify mode/fallback) |
--timeout | 300 | Max seconds for Apify run |
jupri/rss-xml-scraper -- minimal Apify creditsjupri/rss-xml-scraper -- minimal Apify creditsFull video production sequence with script review, actual ingredient choices, controlled generation, editing, evidence-based quality review, polish, captions and delivery. A host binding supplies project storage, authentic approvals, provider access and billing.
Build a vox-pop street interview video ad. An interviewer with a handheld mic asks passers-by one question about the brand's product, they give blunt wrong guesses, one gives the real answer, and the cut lands on a branded end card. Generates the takes through the GooseWorks fal proxy (Seedance 2.0 with native voice), then grades, re-cuts, captions and gates them locally. Use for the street-interview format.
Write the words of a short-form video ad (voiceover, dialogue, chat bubbles, on-screen lines) the way performance creative teams do instead of from a blank page. Builds the script from the buyers' own words, the beat sheet of an ad that already works and three deliberately different angles, filters them with a rule check and a second non-Claude model, and takes the strongest into the review with the other two as one-line swaps. Use it in every video ad run before any paid step, and whenever the user asks to write, rewrite or improve a video ad script or says a script sounds generic or AI-written.