ai-citations-tracker
Use when you need to **measure** (not just describe) brand citation frequency across AI search surfaces over time. Runs a configurable brand-mention prompt set…
Use when generating a polished single-PDF SEO snapshot for a third-party domain owner. The output is a decision-maker-friendly document in plain language for non-SEO-experts (shop owners, founders, executives), not a technical site audit. Triggers include "send the owner of X.de
$ npx -y skills add maxschottke-spec/seo-survival-kit --skill seo-outreach-report --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/seo-outreach-reportContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when generating a polished single-PDF SEO snapshot for a third-party domain owner. The output is a decision-maker-friendly document in plain language for non-SEO-experts (shop owners, founders, executives), not a technical site audit. Triggers include "send the owner of X.de
name: seo-outreach-report description: 'Use when generating a polished single-PDF SEO snapshot for a third-party domain owner. The output is a decision-maker-friendly document in plain language for non-SEO-experts (shop owners, founders, executives), not a technical site audit. Triggers include "send the owner of X.de an SEO snapshot", "generate a report for the owner", "show X.de their SEO status", "make a PDF for a non-technical decision maker about their SEO". Complements `claude-seo:seo-audit` when the goal is communication for a non-technical audience rather than technical depth. Complements `make-pdf` when the input is a domain (not a markdown file) and the workflow needs editorial narrative integrated with Sistrix / DataForSEO / PSI data.' user-invocable: true argument-hint: '[domain | comma-separated-slugs]' allowed-tools: [Read, Write, Bash(node:*), Bash(curl:*)] license: MIT metadata: author: Max Schottke version: '0.5.4' category: marketing
Generates a 10-chapter PDF report per domain for non-technical decision-makers. Data sources: Sistrix VI, DataForSEO Labs (rankings + competitors + backlinks), Google PSI v5 (lab + CrUX). Renders via Chrome-headless without puppeteer.
**Output:** `~/Downloads/SEO-Auswertung-<domain>-<YYYY-MM-DD>.pdf` (~1 MB per report)
**Don't use for:**
The PDF this skill generates contains a concrete action plan with cost ranges, timelines, and prioritized recommendations. For Your-Money-Your-Life sites (medical / health, legal, financial, regulated industries), have a domain expert review the action plan before publication or client delivery. Examples of recommendations that need expert review in those contexts:
The plugin treats all sites uniformly at the SEO-mechanics level; it does not validate domain-specific compliance, fiduciary obligations, or industry-specific marketing regulations.
Default configuration produces ~5 API calls per target domain: 1 Sistrix VI, 1 Sistrix VI overview, 18 monthly VI history points, 1 DataForSEO ranked_keywords, 1 backlinks/summary, 1 domain_rank_overview, 1 competitors_domain, 1 referring_domains, 2 PSI runs (mobile + desktop).
Typical realized cost per domain: 5–50 ct in DataForSEO credits plus 18 Sistrix calls plus 2 PSI calls (free with API key). Multi-domain batches multiply linearly. Before running against many domains, estimate cost first — see COSTS.md.
seo-audit-fetch-v2.js → ~/.cache/seo-rescue/<slug>-raw.json (Sistrix + DataForSEO + PSI) seo-extract-v2.js → ~/.cache/seo-rescue/<slug>-summary.json (KPIs, top keywords, quick wins) seo-onpage.js → ~/.cache/seo-rescue/seo-onpage.json (title, H1, schema from local HTML) seo-report-gen.js → ~/Downloads/SEO-Auswertung-<domain>-<date>.pdf
Cache directory `~/.cache/seo-rescue/` is created mode `0700` (owner-only). Override with `SEO_CACHE_DIR=/path` if needed.
The scripts in this skill folder are self-contained. Prerequisite: a `.env` file (any path) with:
SISTRIX_API_KEY=... # https://www.sistrix.de/ (API tier must include VI endpoint) DATAFORSEO_LOGIN=... # https://dataforseo.com/ — pay-per-call DATAFORSEO_PASSWORD=... GOOGLE_API_KEY=... # https://console.cloud.google.com/ — enable PageSpeed Insights API
Recommended path convention: `~/.config/seo-outreach-report/.env` or `./.env` in your working directory. See `.env.example` in this skill folder.
1. Edit `audit-config.json` (copy from `audit-config.example.json`):
{
"targets": [
{ "slug": "newslug", "domain": "example.de", "host": "https://example.de/", "label": "Example Company" }
],
"narrative": {
"newslug": { "headline": "...", "business_one_liner": "...", "diagnose": [...], "fazit": [...], "action_plan": [...] }
}
}2. Cache the homepage HTML locally for on-page analysis (cache dir is auto-created):
CACHE_DIR="${SEO_CACHE_DIR:-$HOME/.cache/seo-rescue}"
mkdir -p "$CACHE_DIR" && chmod 700 "$CACHE_DIR"
curl -s -A "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36" "https://example.de/" > "$CACHE_DIR/newslug-home.html"3. Run the pipeline:
ENV_PATH=/path/to/your/.env # or ~/.config/seo-outreach-report/.env node --env-file="$ENV_PATH" seo-audit-fetch-v2.js newslug node seo-extract-v2.js node seo-onpage.js node seo-report-gen.js
1. **Cover** with data-driven headline 2. **Executive summary for decision-makers** — 4 KPI gauges + top 5 prioritized actions 3. **Status quo** — neutral inventory (no judgment) 4. **Google visibility over time** — 18-month VI chart + plain-language interpretation 5. **Where you rank today** — top 15 keywords +
Recovery-first decision support for ecommerce/D2C SEO. Claude Code skills for Core Update recovery diagnosis, prioritized action plans, weekly monitoring, and a Change Governor / Settlement Gate that prevents over-optimizing during recovery windows.
Repo: maxschottke-spec/seo-survival-kit
Use when you need to **measure** (not just describe) brand citation frequency across AI search surfaces over time. Runs a configurable brand-mention prompt set…
Use when a site has lost visibility in AI search surfaces (Google AI Overviews, Google AI Mode, ChatGPT citations, Perplexity citations) or wants to…
Use when an e-commerce business sells across multiple channels (own shop, Amazon, OTTO, eBay, Etsy, Zalando, etc.) and wants to know which channel is actually…
Use when an e-commerce or content site wants to deeply understand WHO their organic competitors are (often surprising — not the brands they think) and WHERE…
Use when the user wants Google Search Console data pulled directly into the session instead of manually screenshotting / CSV-exporting from search.google.com.…
Use when a website experienced a sudden visibility/ranking drop that correlates with a published Google Core Update — symptoms include broad ranking loss…