backlink-gap
Find domains linking to your competitors but not to you, ranked by priority score (DR + link-overlap + traffic + topical relevance) with a four-gate quality…
Compare two SEO snapshots (GSC / GSC AI Performance / rank tracker / AEO probe) and surface top movers per metric with auto-classification — growth / decline / reshuffle / stable / new / lost
$ npx -y skills add indranilbanerjee/digital-marketing-pro --agent claude-codeHow it fires
How this command gets triggered: by you, by Claude, or both.
/seo-driftContext preview
What this command does when you run it.
Compare two SEO snapshots (GSC / GSC AI Performance / rank tracker / AEO probe) and surface top movers per metric with auto-classification — growth / decline / reshuffle / stable / new / lost
description: Compare two SEO snapshots (GSC / GSC AI Performance / rank tracker / AEO probe) and surface top movers per metric with auto-classification — growth / decline / reshuffle / stable / new / lost argument-hint: "<baseline.csv> <current.csv> [--noise 5]"
> If you see unfamiliar placeholders or need to check which data sources are connected, see [CONNECTORS.md](../CONNECTORS.md).
Takes two snapshots of SEO performance data — separated by weeks, a Core Update, a content refresh, or an algorithm change — and produces a structured drift report. Works with classic GSC exports, the new GSC AI Performance Report (3 Jun 2026), rank-tracker exports, and `aeo-audit` probe results. Routes to `skills/seo-drift/SKILL.md`.
User runs `/digital-marketing-pro:seo-drift` or asks for:
1. **Baseline CSV** — older snapshot 2. **Current CSV** — newer snapshot 3. **Source type** — auto-detected via columns (GSC / GSC AI / rank tracker / AEO probe). Both snapshots must be from same source. 4. **Noise threshold** (optional) — default 5%, below which moves are classified `stable`. YMYL industries should use 10% to filter out Quality Rater Guidelines volatility.
1. Load brand context 2. Place baseline + current CSV exports into the dated output folder 3. Run `scripts/seo_drift.py` to compute per-row deltas + classifications 4. Validate the four quality gates (date_range_distinct / sample_size / metric_compatibility / no_lookup_collisions) 5. Narrative analysis of top 10 gainers (cause hypotheses → amplification candidates) 6. Triage matrix for top 10 losers (`is_yMYL × had_recent_change × Core_Update_window` → action) 7. If source is GSC AI Performance Report: cross-reference AI Mode citation losses with `/digital-marketing-pro:aeo-audit` 8. Classification distribution analysis (high reshuffle = AI Mode intent reweighting) 9. Write `PLAN.md` to `${CLAUDE_PLUGIN_DATA}/{brand}/seo/seo-drift/{date}/`
Numbered intermediate files under `${CLAUDE_PLUGIN_DATA}/{brand}/seo/seo-drift/{YYYY-MM-DD}/`:
Branch by finding:
For the full skill spec including classification rules, position-delta inversion, and Core Update timing guidance, see [skills/seo-drift/SKILL.md](../skills/seo-drift/SKILL.md).
Your agency just signed a 50-brand client. The previous agency left no playbook. Three brands are bleeding budget, two have stale positioning, one is launching in a regulated jurisdiction next month. Where do you start?
Repo: indranilbanerjee/digital-marketing-pro
Find domains linking to your competitors but not to you, ranked by priority score (DR + link-overlap + traffic + topical relevance) with a four-gate quality…
Set up a new brand profile with voice, audience, competitors, guidelines, and compliance rules
Generate a full multi-channel campaign plan with objectives, audience, channel mix, budget, timeline, and KPIs
Run the unified pre-publish quality gate on marketing content (hallucination + brand voice + structure + claims). Use before publishing any marketing copy.
Multi-dimensional competitive analysis — content, SEO, paid ads, social, AI visibility, pricing, and positioning
Draft blog posts, ad copy, emails, social media, landing pages, and video scripts with brand voice and SEO