CommunityCodierung & Entwicklunggithub.com

blog-seo-check

Führt eine umfassende On-Page-SEO-Validierung für fertige Blogbeiträge durch und erstellt eine Bestanden/Nicht bestanden-Checkliste mit spezifischen Korrekturen für jede Fehlerstelle.

Was ist blog-seo-check?

Blog SEO Check ist ein Skill für KI-Agenten, der nach dem Schreiben eines Blogbeitrags eine vollständige On-Page-SEO-Prüfung durchführt. Er extrahiert Metadaten, Überschriften, Links und Inhalte aus einer Datei oder URL und validiert diese anhand von über 40 Kriterien (z. B. Titel-Länge, Meta-Beschreibung, Heading-Hierarchie, interne Verlinkung). Der Skill erzeugt einen detaillierten SEO-Validierungsbericht im Markdown-Format mit Status (PASS/FAIL/WARN/N/A) und konkreten Korrekturempfehlungen. Er unterstützt auch Duplikatsprüfung für URLs, bidirektionale Verlinkung (durch Grep/Glob-Scans) und kann optional Live-Performance-Checks über den blog-google-Skill (PageSpeed, Core Web Vitals) einbinden. Ziel ist es, häufige SEO-Fehler vor der Veröffentlichung zu erkennen und zu beheben.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/AgriciDaniel/claude-blog/tree/main/skills/blog-seo-check

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Blog SEO Check – Validierung nach dem Schreiben

Führt eine umfassende On-Page-SEO-Validierung für einen fertigen Blogbeitrag durch und erstellt eine Bestanden/Nicht bestanden-Checkliste mit spezifischen Korrekturen für jede Fehlerstelle. Entwickelt, um nach dem Schreiben ausgeführt zu werden – erkennt Probleme vor der Veröffentlichung.

Arbeitsablauf

Schritt 1: Inhalt lesen

Lese die Zieldatei und extrahiere:

  • Frontmatter – Titel, Beschreibung, Datum, letzte Aktualisierung, Autor, Tags, kanonische URL, og:image, Slug/URL
  • Überschriftenstruktur – H1-, H2-, H3-Hierarchie mit vollständigem Text
  • Links – Alle internen und externen Links mit Ankertext
  • Meta-Tags – OG-Tags, Twitter-Card-Tags, kanonische URL
  • Textkörper – Volltext für Keyword- und Strukturanalyse

Wenn der Benutzer eine URL anstelle eines Dateipfads angibt, verwende WebFetch, um die Seite abzurufen und die relevanten Elemente zu extrahieren.

Schritt 2: Titel-Tag-Validierung

PrüfungBestehenskriterium
Zeichenanzahl40-60 Zeichen (keine Kürzung in SERPs)
Keyword-PlatzierungPrimäres Keyword in der ersten Hälfte des Titels
Power WordEnthält mindestens ein Power Word (z. B. Leitfaden, Beste, Wie, Warum, Essenziell, Bewährt, Vollständig)
KürzungsrisikoKein kritischer Bedeutungsverlust bei Kürzung auf 60 Zeichen
EinzigartigkeitNicht generisch – spezifisch für den Inhalt

Schritt 3: Meta-Beschreibung

PrüfungBestehenskriterium
Zeichenanzahl150-160 Zeichen
Statistik enthaltenEnthält mindestens eine konkrete Zahl oder einen Datenpunkt
WertversprechenEndet mit einem klaren Nutzen für den Leser oder Wertversprechen
Keyword-PräsenzPrimäres Keyword erscheint natürlich (nicht gestopft)
Kein Keyword-StuffingKeyword erscheint höchstens einmal
Aufruf zum HandelnImpliziert eine Aktion (lernen, entdecken, herausfinden, sehen)

Schritt 4: Überschriftenhierarchie

PrüfungBestehenskriterium
Einzelne H1Genau ein H1-Tag (der Titel)
Keine übersprungenen EbenenH1 → H2 → H3, niemals H1 → H3 oder H2 → H4
Keyword in ÜberschriftenPrimäres Keyword in 2-3 Überschriften (natürlich, nicht erzwungen)
Fragenformat60-70 % der H2-Überschriften sind Fragen
H2-Anzahl6-8 H2-Abschnitte für einen Standard-Blogbeitrag
ÜberschriftenlängeJede Überschrift unter 70 Zeichen

Schritt 5: Interne Links

PrüfungBestehenskriterium
Linkanzahl3-10 interne Links pro Beitrag
AnkertextBeschreibend (nicht „hier klicken" oder „mehr lesen")
BidirektionalPrüfe, ob verlinkte Seiten ebenfalls zurückverlinken (melde, wenn nicht)
Kein WaisenstatusBeitrag verlinkt auf mindestens 3 andere Seiten der Website
LinkverteilungLinks über den Beitrag verteilt, nicht gebündelt
Keine EigenverlinkungBeitrag verlinkt nicht auf sich selbst

Verwende Grep und Glob, um das Projekt nach vorhandenen Bloginhalten zu durchsuchen und bidirektionale Verlinkung nach Möglichkeit zu überprüfen.

Schritt 5.5: Link-Deduplizierung

PrüfungBestehenskriterium
Keine doppelten URLsJede URL erscheint im Textkörper höchstens einmal
Beste Instanz behaltenFalls Duplikate vorhanden, behalte die mit dem aussagekräftigsten Ankertext
Navigation ausgenommenHeader/Footer-Navigationslinks zählen nicht für die Deduplizierung des Textkörpers
FragmentnormalisierungURLs mit unterschiedlichen #Fragmenten werden als gleiche URL behandelt

Für jedes gefundene Duplikat:

  1. URLs normalisieren (abschließende Schrägstriche, Abfrageparameter, Fragmente entfernen)
  2. Jede Instanz nach Aussagekraft des Ankertextes bewerten (keywordreich > generisch)
  3. Empfehlen, die am höchsten bewertete Instanz zu behalten, andere zu entfernen
  4. 1 Punkt pro Duplikat vom SEO-Optimierungswert abziehen

Google notiert 1-2 Ankertexte pro URL pro Seite (Zyppy 2023). Optimal: einmalige Verlinkung derselben URL im Textkörper; 5-10 interne Links pro 2.000 Wörter; max. ~50 Links insgesamt pro Seite.

Schritt 6: Externe Links

PrüfungBestehenskriterium
QuellenstufeNur Links zu Quellen der Stufen 1-3 (autoritativ, keine SEO-Blogs)
Defekte LinksVerwende WebFetch, um die Erreichbarkeit der wichtigsten externen Links zu überprüfen
Rel-AttributeExterne Links haben angemessene rel-Attribute (nofollow für gesponserte/UGC)
LinkanzahlMindestens 3 externe Links zu autoritativen Quellen
Keine KonkurrentenlinksNicht unnötig auf direkte Konkurrenten verlinken

Schritt 7: Kanonische URL

PrüfungBestehenskriterium
VorhandenKanonische URL ist im Frontmatter oder in den Meta-Tags definiert
Korrektes FormatVollständige absolute URL (https://domain.de/pfad)
Abschließender SchrägstrichKonsistent mit der Seitenkonvention (keine gemischten abschließenden Schrägstriche)
SelbstreferenzierendKanonische URL verweist auf die Seite selbst (außer bei beabsichtigter Cross-Domain)

Schritt 8: OG-Meta-Tags

PrüfungBestehenskriterium
og:titleVorhanden, entspricht oder ergänzt den Titel-Tag
og:descriptionVorhanden, 150-160 Zeichen, ansprechend für Social Sharing
og:imageVorhanden, mindestens 1200x630 Pixel, absolute URL
og:typeAuf „article" für Blogbeiträge gesetzt
og:urlVorhanden, entspricht der kanonischen URL
og:site_nameVorhanden, entspricht dem Seiten-/Markennamen

Schritt 9: Twitter Card

PrüfungBestehenskriterium
twitter:cardAuf „summary_large_image" für Blogbeiträge gesetzt
twitter:titleVorhanden, unter 70 Zeichen
twitter:descriptionVorhanden, unter 200 Zeichen
twitter:imageVorhanden, gleich oder ähnlich zu og:image
twitter:siteVorhanden, falls die Seite ein Twitter/X-Konto hat

Schritt 10: URL-Struktur

PrüfungBestehenskriterium
LängeKurz – unter 75 Zeichen für den Pfadanteil
Keyword-PräsenzPrimäres Keyword oder enge Variante im URL-Slug
Keine DatenURL enthält keine /2025/ oder /2026/ Datumssegmente
Keine SonderzeichenNur Kleinbuchstaben, Zahlen und Bindestriche
KleinschreibungGesamter URL-Pfad in Kleinbuchstaben
Keine StoppwörterMinimale Verwendung von „der", „die", „das", „und", „von" im Slug
Keine DateierweiterungKeine .html oder .php in der URL (saubere URLs)

Schritt 11: Bericht erstellen

Gib einen umfassenden SEO-Validierungsbericht in folgendem Format aus:

## SEO-Validierungsbericht: [Titel]

**Datei**: [Pfad oder URL]
**Datum**: [Prüfdatum]
**Gesamt**: [X/Y Prüfungen bestanden] – [BESTANDEN/ÜBERARBEITUNG/NICHT BESTANDEN]

### Ergebnisse

| # | Prüfung | Status | Details | Korrektur |
|---|---------|--------|---------|-----------|
| 1 | Titel-Länge | BESTANDEN | 52 Zeichen | - |
| 2 | Titel-Keyword | BESTANDEN | „Keyword" in der ersten Hälfte | - |
| 3 | Titel-Power-Word | NICHT BESTANDEN | Kein Power Word gefunden | Füge „Leitfaden", „Essenziell" oder „Vollständig" hinzu |
| 4 | Meta-Beschreibung-Länge | BESTANDEN | 155 Zeichen | - |
| 5 | Meta-Beschreibung-Statistik | NICHT BESTANDEN | Keine Zahl gefunden | Füge eine wichtige Statistik aus dem Beitrag hinzu |
| ... | ... | ... | ... | ... |

### Zusammenfassung

**Bestanden**: [N] Prüfungen
**Nicht bestanden**: [N] Prüfungen

### Prioritäre Korrekturen
1. [Wirkungsvollste Korrektur – was und wo zu ändern ist]
2. [Zweitwirkungsvollste Korrektur]
3. [Drittwirkungsvollste Korrektur]

### Anmerkungen
- [Beobachtungen zur allgemeinen SEO-Gesundheit]
- [Verbesserungsvorschläge über die Checkliste hinaus]

Statuswerte:

  • BESTANDEN – Erfüllt die Kriterien
  • NICHT BESTANDEN – Erfüllt die Kriterien nicht, Korrektur bereitgestellt
  • WARNUNG – Erfüllt die Kriterien teilweise oder Grenzfall, Empfehlung bereitgestellt
  • N/V – Nicht zutreffend (z. B. keine Twitter-Card-Tags, wenn die Seite kein X-Konto hat)

Optional: Live-Performance-Check (blog-google)

Wenn der Beitrag eine veröffentlichte URL hat und blog-google-Anmeldedaten verfügbar sind:

  1. Anmeldedaten prüfen: python3 skills/blog-google/scripts/run.py google_auth --check --json
  2. Wenn Tier 0+, PageSpeed ausführen: python3 skills/blog-google/scripts/run.py pagespeed_check <url> --json
  3. Dem Bericht anhängen:
    • Lighthouse Performance, Accessibility, Best Practices, SEO-Punktzahl
    • CWV-Felddaten (LCP, INP, CLS) mit Ampelfarben-Bewertung
    • Top-3-Optimierungsmöglichkeiten mit geschätzten Einsparungen
  4. Fällt stillschweigend zurück, wenn Anmeldedaten nicht verfügbar oder URL nicht veröffentlicht sind.

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

Verwandte Skills