skills/competitive-ads-extractor/SKILL.md
Use when extracting, analyzing, or comparing competitors' ads from ad libraries (Facebook Ad Library, LinkedIn Ad Library, Google Ads Transparency Center). Also use when the user wants to understand competitor messaging, creative patterns, or ad strategy. NEVER use for creating ads (use copywriting or social-content), running ad campaigns, or non-advertising competitive analysis.
npx skillsauth add sharkitect-solutions/sharkitect-claude-toolkit competitive-ads-extractorInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Extracts and structures competitor ad data from public ad libraries, then applies a repeatable analysis framework to surface messaging patterns, creative approaches, and positioning gaps.
| File | Purpose | When to Load | |---|---|---| | SKILL.md | Extraction workflow, platform overview, analysis framework, output structure | Always (auto-loaded) | | platform-data-access-realities.md | Deep dive on what each platform API actually exposes vs what users expect: Facebook Ad Library API specifics, Google Ads Transparency gaps, LinkedIn active-only limitation, TikTok curation bias, platform-specific gotchas | Load when the user asks about specific data availability, encounters missing data, or wants programmatic API access. Also load when choosing which platforms to prioritize. Do NOT load for basic extraction (SKILL.md covers the overview). | | competitive-intelligence-frameworks.md | Share of voice estimation (volume-based and spend-based), messaging positioning analysis (message maps, positioning quadrants, differentiation scoring), creative testing velocity measurement, report template | Load when analyzing 3+ competitors, calculating share of voice, assessing messaging positioning, or measuring creative testing velocity. Do NOT load for single-competitor basic extraction. | | spend-estimation-methods.md | Impression-based spend modeling, volume-duration method, Facebook EU spend range interpretation, seasonal adjustment factors (B2B/B2C), multi-platform budget distribution inference, hiring signal budget inference, confidence calibration | Load when the user asks about competitor ad budgets, spend estimation, or wants to compare budgets across competitors. Do NOT load for messaging or creative analysis. |
| Platform | URL / Method | What's Available | Key Limitations | |---|---|---|---| | Facebook Ad Library | facebook.com/ads/library | Active + inactive ads, run dates, spend ranges (EU only), impressions (EU only), ad creative | No engagement metrics; US hides spend data | | LinkedIn Ad Library | linkedin.com/ad-library | Active ads only, targeting category (job title, industry), ad format | Historical ads not retained; no spend data | | Google Ads Transparency | adstransparency.google.com | Search, display, YouTube ads; verified advertiser status; run dates | Creative detail limited for display; no keyword data | | TikTok Creative Center | ads.tiktok.com/business/creativecenter | Top-performing ads by industry, CTR/CVR benchmarks (aggregated), trending formats | Only shows curated "top" ads, not full brand libraries |
Legal note: All four platforms publish this data intentionally for transparency. Manually reading and recording ad content is legal in all jurisdictions. Automated scraping via bots may violate platform ToS and in some regions data protection law -- if the user wants to scrape programmatically, flag this risk before proceeding.
| Dimension | What to Look For | Why It Matters | |---|---|---| | Pain point framing | Which problem is named in the hook? | Reveals which segment the ad targets and what fear/frustration is most activating | | Value proposition type | Feature vs. outcome vs. social proof vs. price | Shows maturity of market positioning and where competitors anchor | | CTA pattern | Verb choice, commitment level (free trial vs. buy now) | Signals funnel stage and conversion strategy | | Creative format | Static, video length, carousel sequence logic | Indicates platform fit and audience attention assumption | | Run duration | First seen vs. last seen dates | Long-running ads are statistically performing; recently paused may have failed | | Audience signals | Terminology, visuals, offers that index to a segment | Reveals who they are prioritizing and which segments are underserved |
When analyzing 3+ competitors, structure findings as a matrix before writing narrative conclusions:
Flag the "white space" -- pain points or audiences that no competitor is addressing in ads, which represent positioning opportunities for the user.
Deliver analysis in this order:
Do NOT fabricate metrics, impression counts, or engagement rates unless the platform surfaced them explicitly.
| Decision | Rationale | |---|---| | Delete 170-line mock Notion output | Fake data simulating tool output wastes context, teaches nothing generalizable, and misleads about what ad libraries actually expose | | Platform table with Limitations column | Each platform has distinct constraints (EU-only spend data, active-only history) that determine what analysis is possible -- omitting this causes user to expect data that does not exist | | Legal note in Platform section | Automated scraping risk is commonly misunderstood; flagging it proactively prevents the user from requesting something that could violate ToS before the work begins | | Run duration as analysis dimension | Ad longevity is the most accessible performance proxy in ad libraries that do not expose engagement metrics -- it is the key insight most users miss | | White space as mandatory output section | Competitor analysis value is highest when it surfaces gaps, not just what competitors do; many users only get a description without the opportunity identification | | Removed "What You Can Learn" and all tip sections | Claude already knows messaging analysis, copy formulas, and campaign strategy -- restating them as bullet lists adds lines without adding capability |
development
When the user wants help with paid advertising campaigns on Google Ads, Meta (Facebook/Instagram), LinkedIn, Twitter/X, or other ad platforms. Also use when the user mentions 'PPC,' 'paid media,' 'ad copy,' 'ad creative,' 'ROAS,' 'CPA,' 'ad campaign,' 'retargeting,' or 'audience targeting.' This skill covers campaign strategy, ad creation, audience targeting, and optimization.
testing
--- name: using-sharkitect-methodology description: Use when starting any conversation in a Sharkitect workspace OR before any task involving NEW pricing, positioning, proposal, strategy, plan-execution, or schema-design work — mandates invocation of Sharkitect-specific methodology skills (pricing-strategy, marketing-strategy-pmm, smb-cfo, hq-revenue-ops, executing-plans, brainstorming) under the same anti-rationalization discipline as using-superpowers. Documentation has failed 4 times across H
testing
Use when user says 'end session', 'wrap up', 'stop for the day', 'done for today', 'close out', 'save session', 'wrapping up', or invokes /end-session. Runs the full 9-step end-of-session protocol: resource audit, MEMORY.md update, lessons capture, plan status, pending items, workspace checklist, .tmp/ audit, git commit+push, Supabase brain sync, session brief, summary. Final step schedules a detached self-kill of the current session ONLY (3s delay) so the window closes cleanly. Other claude.exe processes (active workspaces) are NOT touched -- orphan cleanup is handled separately by Claude-Orphan-Cleanup-Hourly with proper age safeguards. Do NOT use for: mid-session quick saves (use session-checkpoint), skill syncing (use sync-skills.py), brain memory queries (use supabase-sync.py pull), document freshness reviews (use document-lifecycle), resource gap detection (use resource-auditor).
testing
Remove signs of AI-generated writing from text. Use when editing or reviewing text to make it sound more natural and human-written. Based on Wikipedia's comprehensive "Signs of AI writing" guide. Detects and fixes patterns including: inflated symbolism, promotional language, superficial -ing analyses, vague attributions, em dash overuse, rule of three, AI vocabulary words, passive voice, negative parallelisms, and filler phrases.