create-image-fal
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. image_urls…
Scrape competitor ads from Meta, TikTok, Google, and LinkedIn ad libraries, analyze creative patterns (hooks, formats, CTAs), reverse-engineer landing page funnels, and produce a strategic teardown with vulnerability analysis and counter-play recommendations. Use when you need
$ npx -y skills add gooseworks-ai/goose-skills --skill competitor-ad-intelligence --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/competitor-ad-intelligenceContext preview
The summary Claude sees to decide when to auto-load this skill.
Scrape competitor ads from Meta, TikTok, Google, and LinkedIn ad libraries, analyze creative patterns (hooks, formats, CTAs), reverse-engineer landing page funnels, and produce a strategic teardown with vulnerability analysis and counter-play recommendations. Use when you need
name: competitor-ad-intelligence description: > Scrape competitor ads from Meta, TikTok, Google, and LinkedIn ad libraries, analyze creative patterns (hooks, formats, CTAs), reverse-engineer landing page funnels, and produce a strategic teardown with vulnerability analysis and counter-play recommendations. Use when you need to understand the competitive ad landscape, find new creative directions, or identify weaknesses in a competitor's paid strategy. tags: [ads]
Scrape competitor ads from Meta, TikTok, Google, and LinkedIn, analyze creative patterns, reverse-engineer landing page funnels, and produce a full strategic teardown — hooks, formats, positioning bets, vulnerabilities, and counter-plays.
**Core principle:** A competitor's ad portfolio is evidence about its growth strategy, not access to its results. Long-running ads suggest sustained use. New ads suggest active testing. Landing pages reveal positioning bets. Use these signals to form differentiated tests without claiming conversion, spend, or causality the libraries do not expose.
Gather from the user:
1. **Competitor names + domains** (e.g., `apollo.io`, `clay.run`) 2. **Your product/domain** — for comparison framing 3. **Channels:** Meta, TikTok, Google, LinkedIn, or all relevant libraries? (default: all channels relevant to the brand and market) 4. **Depth level:**
5. **Product category** — helps frame analysis 6. **Known competitor landing pages?** — any URLs already spotted in their ads
For each competitor domain, scrape ads from Meta Ad Library.
Use `scrapecreators-api` as the primary collection path. Resolve the advertiser first, then fetch its ads and individual ad details:
- provider: scrapecreators
method: GET
path: /v1/facebook/adLibrary/search/companies
query:
query: "[competitor_name]"
- provider: scrapecreators
method: GET
path: /v1/facebook/adLibrary/company/ads
query:
companyName: "[competitor_name]"
- provider: scrapecreators
method: GET
path: /v1/facebook/adLibrary/ad
query:
id: "[ad_id]"If the structured endpoint cannot resolve an advertiser, verify the name in the public Meta Ad Library and use web search as a documented fallback. Keep the library URL and ad ID with every result.
**Collect per ad:**
For each competitor or category, use `scrapecreators-api` to resolve the current TikTok Ad Library search and ad-detail operations from the official provider reference.
Collect the advertiser, ad ID, caption or script, format, landing page, first-seen date, market, and available performance or reach indicators. Keep organic TikTok posts separate from paid-library ads.
Use `transcript-intelligence` when the ad includes spoken content. Analyze TikTok-native mechanics such as creator-led openings, product demonstrations, comment-style hooks, native captions, sounds, offer timing, and the first visible payoff.
For each competitor domain, scrape ads from Google Ads Transparency Center.
Use the structured advertiser endpoints first:
- provider: scrapecreators
method: GET
path: /v1/google/company/ads
query:
domain: "[competitor_domain]"
get_ad_details: true
- provider: scrapecreators
method: GET
path: /v1/google/ad
query:
id: "[ad_id]"Use the public Google Ads Transparency Center or web search only when the structured endpoint is incomplete. Mark fallback records so coverage limits remain visible.
**Collect per ad:**
For each relevant competitor, use `scrapecreators-api` to resolve the current LinkedIn Ad Library search and ad-detail operations from the official provider reference.
Collect the advertiser, ad copy, creative format, CTA, landing page, dates, and visible targeting or company context. Keep organic company posts separate from paid-library ads.
LinkedIn is optional for consumer brands. Include it when the competitor sells high-consideration products, wholesale or retail partnerships, franchises, professional education, recruiting, or another business-facing offer.
After collecting all ads, perform structured analysis.
Group all ad headlines/openers by hook type:
| Hook Type | Pattern | Example | |-----------|---------|---------| | **Fear/Loss** | Risk of missing out or falling behind | "Your competitors are already using AI SDRs" | | **Outcome** | Direct result promise | "10x your pipeline in 30 days" | | **Question** | Challenges current assumption | "Still doing outbound manually?" | | **Social proof** | Names customers or numbers | "Join 500+ B2B teams using [product]" | | **Contrarian** | Challenges conventional wisdom | "Cold e
Put your AI agent on the growth team. Research customers and competitors, analyze what is working, create the next campaign, and learn from the result.
Repo: 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. image_urls…
Generate a single photoreal or designed image with OpenAI gpt-image via fal.ai. Supports gpt-image-1 (default, fixed sizes — the FAL fallback for Higgsfield's…
Generate an instrumental music bed via ElevenLabs Music, ROUTED THROUGH THE elevenlabs-proxy so it bills the Ads agent. Trims any sparse intro, loudnorm, fades…
Image-to-video (or text-to-video) via any FAL video model (Kling, Seedance, Veo), ROUTED THROUGH THE GooseWorks fal-proxy so the call bills the Ads agent. The…
Generate a voiceover (VO) clip via ElevenLabs text-to-speech, ROUTED THROUGH THE elevenlabs-proxy so it bills the Ads agent. Voice id + script text come from…
Scrape competitor ads from Google Ads by domain. Returns ad creatives, formats, and campaign details. Use for competitive ad research and messaging analysis.