{
  "slug": "blog-seo-spur",
  "category": "workflow",
  "name": "Die Blog-SEO-Spur",
  "domaene": "SEO & KI-Sichtbarkeit",
  "typTags": [
    "automatisierend",
    "prüfend"
  ],
  "teaser": "Sobald ein Blog-Entwurf in die Review geht, prüft dieser Workflow ihn automatisch auf SEO-relevante Punkte und hinterlässt priorisierte Optimierungsvorschläge direkt im CMS.",
  "hat": {
    "schritte": true,
    "beispiel_szenario": false,
    "ausgabebeispiel": false,
    "konfiguration": false,
    "betrieb": true,
    "arbeitsprompts": true,
    "einrichtung": true,
    "umsetzung": false,
    "export": true,
    "staerken": false,
    "ki_funktionen": false,
    "einschraenkungen": false,
    "weniger_geeignet_fuer": false
  },
  "sections": [
    {
      "id": "beschreibung",
      "title": "Beschreibung",
      "html": "<p>Ein SEO-Check pro Blog-Draft klingt nach einer kleinen Aufgabe, summiert sich aber über viele Artikel und mehrere Autorinnen und Autoren zu spürbarem manuellem Aufwand, und die Qualität schwankt je nachdem, wer gerade Zeit hat. Die Blog-SEO-Spur nimmt diesen ersten Check ab: Sobald ein Entwurf den Status Entwurf oder Review erhält, liest der Workflow Titel, Inhalt, aktuelle Meta-Description und, falls vorhanden, das Ziel-Keyword aus dem CMS und schickt sie an ein Sprachmodell zur Analyse.</p>\n<p>Geprüft werden Keyword-Platzierung, die Hierarchie der Überschriften, Länge und Formulierung der Meta-Description, Lesbarkeit sowie mögliche interne und externe Verlinkungen. Das Ergebnis ist eine nach Kritisch, Wichtig und Optional sortierte Liste konkreter Vorschläge plus ein Vorschlag für eine optimierte Meta-Description, die als Kommentar direkt am Draft hängt. Das Content-Team wird per Chat informiert und entscheidet selbst, welche Vorschläge es übernimmt. Der Workflow ersetzt kein redaktionelles Urteil, er liefert nur die Vorarbeit dazu.</p>\n<ul>\n<li><strong>Standardisierte SEO-Prüfung:</strong> Jeder Draft durchläuft denselben Check, unabhängig davon, wer ihn geschrieben hat.</li>\n<li><strong>Weniger manuelle Durchsicht:</strong> Die Redaktion liest nicht mehr Wort für Wort gegen, sondern setzt die priorisierten Vorschläge um.</li>\n<li><strong>Bessere Rankings und Klickrate:</strong> Überschriften und Meta-Description sind schon im Entwurf optimiert, nicht erst nach der Veröffentlichung.</li>\n<li><strong>Wissensaufbau im Team:</strong> Junior-Autorinnen und -Autoren lernen an begründeten Vorschlägen zum eigenen Text, statt nur eine Korrektur zu erhalten.</li>\n</ul>\n"
    },
    {
      "id": "builder-prompt",
      "title": "Builder-Prompt",
      "html": "<p>Kopieren Sie den Prompt unten in Ihr Automations-Tool oder Ihren Agent-Builder. Als Datei: <a href=\"/ai-library/blog-seo-spur.de.json\">blog-seo-spur.de.json</a></p>\n"
    }
  ],
  "schritte": [
    {
      "nr": 1,
      "titel": "Trigger",
      "beschreibung": "Ein Blog-Draft erhält im CMS den Status Entwurf oder Review.",
      "rolle": "mensch"
    },
    {
      "nr": 2,
      "titel": "Draft abrufen",
      "beschreibung": "Titel, Inhalt, aktuelle Meta-Description und, sofern gepflegt, das Ziel-Keyword werden aus dem CMS geladen.",
      "rolle": "automatisch"
    },
    {
      "nr": 3,
      "titel": "SEO-Analyse",
      "beschreibung": "Ein Sprachmodell prüft Keyword-Nutzung, Überschriften-Struktur, Meta-Description, Lesbarkeit, Verlinkungsmöglichkeiten und Alt-Texte.",
      "rolle": "automatisch"
    },
    {
      "nr": 4,
      "titel": "Vorschlagsliste erstellen",
      "beschreibung": "Die Ergebnisse werden nach Kritisch, Wichtig und Optional priorisiert, ergänzt um eine optimierte Meta-Description mit maximal 155 Zeichen.",
      "rolle": "automatisch"
    },
    {
      "nr": 5,
      "titel": "Kommentar im CMS hinterlegen",
      "beschreibung": "Die Vorschlagsliste wird strukturiert als Kommentar direkt am Draft gespeichert.",
      "rolle": "automatisch"
    },
    {
      "nr": 6,
      "titel": "Team benachrichtigen",
      "beschreibung": "Eine Nachricht im Team-Chat informiert mit Link zum Draft und einem Kurzüberblick der wichtigsten Punkte.",
      "rolle": "ergebnis"
    }
  ],
  "herausgeber": "Voyage Digital",
  "version": "2.0",
  "stand": "2026-07-26",
  "nutzen": [
    {
      "titel": "Standardisierte SEO-Prüfung",
      "text": "Jeder Draft durchläuft denselben Check, unabhängig davon, wer ihn geschrieben hat."
    },
    {
      "titel": "Weniger manuelle Durchsicht",
      "text": "Die Redaktion liest nicht mehr Wort für Wort gegen, sondern setzt die priorisierten Vorschläge um."
    },
    {
      "titel": "Bessere Rankings und Klickrate",
      "text": "Überschriften und Meta-Description sind schon im Entwurf optimiert, nicht erst nach der Veröffentlichung."
    },
    {
      "titel": "Wissensaufbau im Team",
      "text": "Junior-Autorinnen und -Autoren lernen an begründeten Vorschlägen zum eigenen Text, statt nur eine Korrektur zu erhalten."
    }
  ],
  "voraussetzungen": [
    {
      "label": "CMS",
      "text": "WordPress, Webflow oder Contentful, mit Status-Trigger und Kommentar-Funktion.",
      "icon": "web"
    },
    {
      "label": "Team-Chat",
      "text": "Slack, Teams oder Discord für den Content-Channel.",
      "icon": "notifications"
    },
    {
      "label": "Keyword-Tool (optional)",
      "text": "Ahrefs, SEMrush oder vergleichbar, für Suchvolumen in der Priorisierung.",
      "icon": "trending_up"
    },
    {
      "label": "LLM-Zugang",
      "text": "API-Key für OpenAI, Claude oder Gemini.",
      "icon": "key"
    }
  ],
  "betrieb": {
    "testing": [
      {
        "label": "Test-Draft",
        "text": "Legen Sie einen Test-Draft von rund 500 bis 1000 Wörtern mit sauberer Überschriften-Struktur an und setzen Sie den Status auf Entwurf.",
        "icon": "post_add"
      },
      {
        "label": "Draft-Abruf",
        "text": "Prüfen Sie, ob Titel, Inhalt, Meta-Description und Ziel-Keyword vollständig geladen werden.",
        "icon": "download"
      },
      {
        "label": "Analyse und Priorisierung",
        "text": "Prüfen Sie, ob die Vorschläge konkret sind und sauber nach Kritisch, Wichtig und Optional getrennt werden.",
        "icon": "fact_check"
      },
      {
        "label": "Edge Cases",
        "text": "Testen Sie sehr kurze und sehr lange Drafts, eine fehlende Meta-Description, ein fehlendes Ziel-Keyword und mehrsprachigen Content.",
        "icon": "rule"
      }
    ],
    "goLive": [
      {
        "label": "Freigeben",
        "text": "Aktivieren Sie den Workflow erst, wenn Trigger, Vorschlagsliste und CMS-Kommentar sauber zusammenspielen.",
        "icon": "check_circle"
      },
      {
        "label": "Guidelines",
        "text": "Reichern Sie den Prompt mit Zielgruppe, Tonalität und den eigenen Content-Richtlinien an.",
        "icon": "tune"
      },
      {
        "label": "Pflichtfeld",
        "text": "Führen Sie das Ziel-Keyword als Pflichtfeld pro Artikel im CMS.",
        "icon": "label"
      },
      {
        "label": "Ausbauen",
        "text": "Erweitern Sie den Workflow bei Bedarf um Konkurrenz-Analyse, Reading-Score, Keyword-Recherche oder A/B-Headlines.",
        "icon": "rocket_launch"
      }
    ],
    "haeufigeFehler": [
      {
        "label": "Workflow startet nicht",
        "text": "Prüfen Sie den CMS-Webhook und den Status-Filter für den Draft.",
        "icon": "sensors_off"
      },
      {
        "label": "Kommentar wird nicht erstellt",
        "text": "Prüfen Sie die Schreibrechte im CMS und das Kommentar-Format.",
        "icon": "lock"
      },
      {
        "label": "Vorschläge zu generisch",
        "text": "Reichern Sie den Prompt mit Zielgruppe und Content-Richtlinien an.",
        "icon": "auto_awesome"
      },
      {
        "label": "Meta über 155 Zeichen",
        "text": "Begrenzen Sie die Länge strikt im Prompt und validieren Sie sie zusätzlich.",
        "icon": "straighten"
      }
    ]
  },
  "arbeitsprompts": [
    {
      "titel": "Prompt: SEO-Analyse und Vorschläge",
      "beschreibung": "Prüft den Blog-Draft auf SEO-relevante Punkte und gibt eine priorisierte Liste konkreter Optimierungsvorschläge samt optimierter Meta-Description zurück.",
      "prompt": "Sie sind SEO-Experte für [UNTERNEHMEN]. Analysieren Sie den folgenden Blog-Draft und erstellen Sie konkrete Optimierungsvorschläge. Sprechen Sie in Ihren Ausgaben, wo eine Anrede vorkommt, durchgehend mit Sie an.\n\nEINGABE\nBlog-Titel: [BLOG_TITEL]\nBlog-Inhalt: [BLOG_INHALT]\nAktuelle Meta-Description: [META_DESCRIPTION]\nZiel-Keyword (falls vorhanden): [ZIEL_KEYWORD]\n\nARBEITSANWEISUNG\nFühren Sie eine umfassende SEO-Analyse durch und prüfen Sie:\n1. Keyword-Optimierung: Haupt- und Neben-Keywords, Keyword-Dichte, Platzierung.\n2. Überschriften-Struktur: H1, H2, H3, Hierarchie und Keyword-Integration.\n3. Meta-Description: Länge, Call-to-Action, Keyword-Nutzung.\n4. Lesbarkeit: Satzlänge, Absatzstruktur, Zwischenüberschriften.\n5. Interne und externe Verlinkungsmöglichkeiten.\n6. Alt-Texte für Bilder, sofern im Content erwähnt.\n\nErstellen Sie eine Liste priorisierter Optimierungsvorschläge im folgenden Format:\n\nKritisch (sofort umsetzen):\n- [Konkreter Vorschlag mit Beispiel]\n\nWichtig (empfohlen):\n- [Konkreter Vorschlag mit Beispiel]\n\nOptional (Nice to have):\n- [Konkreter Vorschlag mit Beispiel]\n\nOptimierte Meta-Description (maximal 155 Zeichen):\n[Ihr Vorschlag]\n\nWenn Angaben fehlen, etwa kein Ziel-Keyword hinterlegt ist, kennzeichnen Sie Ihre Annahme als solche statt sie stillschweigend zu treffen. Seien Sie spezifisch, umsetzbar und begründen Sie jeden Vorschlag kurz."
    }
  ],
  "prompt": "ZIEL\nBauen Sie einen Workflow, der jeden Blog-Draft automatisch auf SEO prüft, sobald er im CMS den Status Entwurf oder Review erhält: Analyse von Keywords, Überschriften-Struktur, Meta-Description, Verlinkung und Lesbarkeit, daraus eine priorisierte Liste konkreter Optimierungsvorschläge, die direkt als Kommentar am Draft im CMS hinterlegt wird.\n\nPassen Sie die Struktur an die Konzepte Ihres Automations-Tools an (zum Beispiel Nodes, Steps, Zaps oder Agenten-Aktionen). Erhalten Sie dabei die Trigger-Logik, die Reihenfolge und den Datenfluss.\n\nTRIGGER\nTyp: CMS-Webhook (WordPress, Webflow oder Contentful).\nBedingung: Ein Draft erhält den Status Entwurf oder Review.\n\nSCHRITTE (sequenziell)\n1. Draft abrufen: Laden Sie Titel, vollständigen Inhalt, aktuelle Meta-Description und, sofern vorhanden, das Ziel-Keyword aus dem CMS.\n2. KI-Schritt: SEO-Analyse und Vorschläge. Setzen Sie exakt den Arbeitsprompt „SEO-Analyse und Vorschläge\" ein (siehe Abschnitt Arbeitsprompts). Ergebnis: eine priorisierte Vorschlagsliste (Kritisch, Wichtig, Optional) sowie eine optimierte Meta-Description.\n3. Kommentar im CMS hinterlegen: Speichern Sie die Vorschlagsliste strukturiert direkt als Kommentar am Draft.\n4. Ausgabe: Benachrichtigen Sie das Content-Team im Team-Chat, mit Link zum Draft und einem Kurzüberblick über die Anzahl kritischer Punkte.\n\nPROMPT-VORGABEN\nFür den Analyseschritt gibt es einen festen Arbeitsprompt, siehe Abschnitt Arbeitsprompts. Übernehmen Sie ihn unverändert und vollständig in Schritt 2.\n\nDATENFLUSS\nTrigger zu Schritt 1: Draft-ID beziehungsweise Link zum Draft.\nSchritt 1 zu Schritt 2: Blog-Titel, Blog-Inhalt, aktuelle Meta-Description, Ziel-Keyword als Eingabe für die entsprechenden Platzhalter im Arbeitsprompt.\nSchritt 2 zu Schritt 3: priorisierte Vorschlagsliste und optimierte Meta-Description.\nTrigger zu Schritt 4: Link zum Draft.\n\nFEHLERBEHANDLUNG\nWorkflow startet nicht: CMS-Webhook und Status-Filter (Entwurf/Review) prüfen.\nKein Ziel-Keyword hinterlegt: Analyse trotzdem durchführen und im Kommentar auf das fehlende Keyword hinweisen. Das Ziel-Keyword sollte als Pflichtfeld im CMS geführt werden.\nKommentar wird nicht erstellt: Schreibrechte im CMS und das Kommentar-Format prüfen.\nMeta-Description-Vorschlag über 155 Zeichen: Länge validieren, bei Überschreitung einmalig neu generieren lassen.\nVorschläge zu generisch: Prompt um Zielgruppe und Content-Richtlinien ergänzen, als optionale Konfiguration.\nSehr langer Draft (Token-Limit): In Abschnitte teilen und die Ergebnisse zusammenführen.\n\nPLATZHALTER-KONVENTION\nAlle Platzhalter in eckigen Klammern im Eingabebereich des Arbeitsprompts sind Variablen und werden vollständig dynamisch aus dem CMS gemappt: Blog-Titel, Blog-Inhalt, Meta-Description und Ziel-Keyword, wie im Datenfluss beschrieben. Es gibt keine manuellen Prompt-Platzhalter. Die eckigen Klammern im Ausgabeformat des Arbeitsprompts sind Formatanweisungen an das Sprachmodell und bleiben unverändert. Manuell konfiguriert werden nur CMS-Zugang, Status-Filter und Benachrichtigungs-Kanal.\n\nSELBSTPRÜFUNG VOR ABSCHLUSS\nPrüfen Sie, bevor Sie den Workflow als fertig melden:\n1. Sind alle Schritte korrekt verbunden, und feuert der Trigger nur bei den Status Entwurf und Review?\n2. Ist der Arbeitsprompt vollständig und unverändert eingesetzt, und sind alle CMS-Felder korrekt gemappt?\n3. Landet der Kommentar strukturiert am richtigen Draft, und wird die Meta-Länge validiert?\n4. Sind alle Punkte aufgelistet, die manuell konfiguriert werden müssen: CMS-Webhook und Schreibrechte, Ziel-Keyword als Pflichtfeld, Benachrichtigungs-Kanal und LLM-Zugang?",
  "einrichtung": {
    "intro": "Zwei Wege führen zum Ziel. Wählen Sie den, der zu Ihrem Setup passt.",
    "varianten": [
      {
        "variante": "Builder-Prompt",
        "einleitung": "Geeignet, wenn Sie den Workflow in Ihrem eigenen Automations-Tool aufbauen möchten.",
        "schritte": [
          "Öffnen Sie Ihr Workflow-Tool, etwa n8n, Make, Zapier oder Langdock.",
          "Legen Sie einen neuen Workflow an und vergeben Sie einen Namen.",
          "Wählen Sie die KI-gestützte Erstellung, sofern Ihr Tool sie anbietet.",
          "Fügen Sie den Builder-Prompt von oben vollständig ein.",
          "Prüfen Sie das Ergebnis gegen die Schrittfolge in diesem Dokument und ergänzen Sie Zugänge und Kanäle."
        ]
      },
      {
        "variante": "JSON-Import",
        "einleitung": "Geeignet, wenn Sie den Workflow unverändert übernehmen möchten.",
        "schritte": [
          "Laden Sie die JSON-Datei aus dem Abschnitt JSON-Export herunter.",
          "Öffnen Sie den Workflow-Bereich Ihres Tools und legen Sie einen neuen Workflow an.",
          "Vergeben Sie einen Namen und bestätigen Sie die Anlage.",
          "Öffnen Sie das Menü am Workflow-Namen und wählen Sie den Import einer JSON-Datei.",
          "Laden Sie die Datei hoch und hinterlegen Sie anschließend Ihre eigenen Zugänge.",
          "Führen Sie einen Testlauf durch, bevor Sie den Workflow aktivieren."
        ]
      }
    ]
  },
  "exportMeta": {
    "datei": "w23_blog-seo-spur__workflow.json",
    "format": "voyage-workflow/1"
  },
  "download": {
    "schema": "voyage-workflow/1",
    "name": "Die Blog-SEO-Spur",
    "beschreibung": "Prüft jeden Blog-Draft automatisch auf SEO, sobald er im CMS den Status Entwurf oder Review erhält: Analyse von Keywords, Struktur und Meta-Description, eine priorisierte Vorschlagsliste als Kommentar direkt am Draft und eine Benachrichtigung des Content-Teams im Team-Chat.",
    "trigger": {
      "typ": "Webhook",
      "bedingung": "Ein CMS-Webhook (WordPress, Webflow oder Contentful) feuert, sobald ein Blog-Draft den Status Entwurf oder Review erhält. Die Nutzlast enthält mindestens draft_id, title, content, meta_description und status, optional zusätzlich draft_url, author und created_at."
    },
    "schritte": [
      {
        "nr": 1,
        "titel": "Trigger",
        "rolle": "mensch",
        "aktion": "Eine Person aus der Redaktion setzt den Blog-Draft im CMS auf den Status Entwurf oder Review. Der CMS-Webhook feuert daraufhin mit einer Nutzlast, die mindestens draft_id, title, content, meta_description und status enthält, optional ergänzt um draft_url, author und created_at. Die Fehlerstrategie dieses Knotens steht auf Stop: bei einem fehlerhaften oder unvollständigen Aufruf startet der restliche Ablauf nicht.",
        "prompt_ref": null,
        "eingang": [],
        "ausgang": [
          "Webhook-Nutzlast mit draft_id, title, content, meta_description, status, optional draft_url, author, created_at"
        ]
      },
      {
        "nr": 2,
        "titel": "Draft abrufen",
        "rolle": "automatisch",
        "aktion": "Im tatsächlichen Aufbau gibt es keinen eigenen Abruf-Knoten: Titel, Inhalt, aktuelle Meta-Description und Status kommen bereits mit der Webhook-Nutzlast aus Schritt 1. Ein Ziel-Keyword ist in dieser Standard-Nutzlast nicht vorgesehen und muss als zusätzliches Feld im CMS gepflegt werden, damit es hier ankommt.",
        "prompt_ref": null,
        "eingang": [
          "Webhook-Nutzlast mit draft_id, title, content, meta_description, status, optional draft_url, author, created_at"
        ],
        "ausgang": [
          "Blog-Titel (title), Blog-Inhalt (content), Meta-Description (meta_description), Ziel-Keyword (sofern als CMS-Zusatzfeld gepflegt)"
        ]
      },
      {
        "nr": 3,
        "titel": "SEO-Analyse",
        "rolle": "automatisch",
        "aktion": "Ein KI-Agent im Modus Erstellen prüft Keyword-Nutzung, Überschriften-Struktur, Meta-Description, Lesbarkeit, Verlinkungsmöglichkeiten und Alt-Texte und liefert eine strukturierte Ausgabe mit acht festen Feldern: seo_score (Zahl von 0 bis 100), keyword_analysis, heading_structure_analysis, meta_description_feedback, readability_assessment, priority_recommendations, output (vollständiger formatierter Report) und success (Boolean). Fehlerstrategie: Stop.",
        "prompt_ref": "arbeitsprompt-1",
        "eingang": [
          "Blog-Titel, Blog-Inhalt, Meta-Description, Ziel-Keyword"
        ],
        "ausgang": [
          "Strukturierte SEO-Analyse mit seo_score, keyword_analysis, heading_structure_analysis, meta_description_feedback, readability_assessment, priority_recommendations, output, success"
        ]
      },
      {
        "nr": 4,
        "titel": "Vorschlagsliste erstellen",
        "rolle": "automatisch",
        "aktion": "Erfolgt im selben KI-Aufruf wie Schritt 3, nicht als eigener Knoten. Das Feld priority_recommendations liefert die bereits nach Kritisch, Wichtig und Optional sortierten Vorschläge, meta_description_feedback die Einschätzung zur Meta-Description und output den vollständigen, fertig formatierten Report für den Kommentar.",
        "prompt_ref": "arbeitsprompt-1",
        "eingang": [
          "Strukturierte SEO-Analyse mit seo_score, keyword_analysis, heading_structure_analysis, meta_description_feedback, readability_assessment, priority_recommendations, output, success"
        ],
        "ausgang": [
          "priority_recommendations",
          "seo_score",
          "output (vollständiger Report)"
        ]
      },
      {
        "nr": 5,
        "titel": "Kommentar im CMS hinterlegen",
        "rolle": "automatisch",
        "aktion": "Ein HTTP-Request-Knoten (POST) sendet den Kommentar an die CMS-API. Die URL muss auf den echten Kommentar-Endpunkt des jeweiligen CMS umgestellt werden, zum Beispiel wp-json/wp/v2/posts/{draft_id}/comments bei WordPress oder den entsprechenden Contentful-Endpunkt, adressiert über die draft_id aus der Webhook-Nutzlast. Header: Content-Type sowie Authorization mit einem echten CMS-API-Key statt des Platzhalters. Der Body wird von der KI aus output und den Einzelfeldern der SEO-Analyse zusammengesetzt. Fehlerstrategie: Stop.",
        "prompt_ref": null,
        "eingang": [
          "priority_recommendations, seo_score, output (vollständiger Report)",
          "draft_id aus der Webhook-Nutzlast"
        ],
        "ausgang": [
          "Kommentar am Draft im CMS"
        ]
      },
      {
        "nr": 6,
        "titel": "Team benachrichtigen",
        "rolle": "ergebnis",
        "aktion": "Läuft parallel zu Schritt 5, nicht danach: Beide Knoten hängen direkt am Ergebnis der SEO-Analyse aus Schritt 3/4, der CMS-Kommentar ist keine Voraussetzung für die Benachrichtigung. Eine Chat-Nachricht, standardmäßig für den Kanal #content-team konfiguriert und vor dem Einsatz auf den echten Kanal umzustellen, nennt den Draft-Titel, den seo_score und einen Hinweis, dass die ausführlichen Empfehlungen als Kommentar im CMS liegen, ergänzt um den Link zum Draft, sofern draft_url in der Webhook-Nutzlast vorhanden ist. Fehlerstrategie: Stop.",
        "prompt_ref": null,
        "eingang": [
          "Draft-Titel und draft_url aus der Webhook-Nutzlast",
          "seo_score aus der SEO-Analyse"
        ],
        "ausgang": [
          "Team-Benachrichtigung im Chat-Kanal"
        ]
      }
    ],
    "prompts": {
      "arbeitsprompt-1": {
        "titel": "SEO-Analyse und Vorschläge",
        "text": "Sie sind SEO-Experte für [UNTERNEHMEN]. Analysieren Sie den folgenden Blog-Draft und erstellen Sie konkrete Optimierungsvorschläge. Sprechen Sie in Ihren Ausgaben, wo eine Anrede vorkommt, durchgehend mit Sie an.\n\nEINGABE\nBlog-Titel: [BLOG_TITEL]\nBlog-Inhalt: [BLOG_INHALT]\nAktuelle Meta-Description: [META_DESCRIPTION]\nZiel-Keyword (falls vorhanden): [ZIEL_KEYWORD]\n\nARBEITSANWEISUNG\nFühren Sie eine umfassende SEO-Analyse durch und prüfen Sie:\n1. Keyword-Optimierung: Haupt- und Neben-Keywords, Keyword-Dichte, Platzierung.\n2. Überschriften-Struktur: H1, H2, H3, Hierarchie und Keyword-Integration.\n3. Meta-Description: Länge, Call-to-Action, Keyword-Nutzung.\n4. Lesbarkeit: Satzlänge, Absatzstruktur, Zwischenüberschriften.\n5. Interne und externe Verlinkungsmöglichkeiten.\n6. Alt-Texte für Bilder, sofern im Content erwähnt.\n\nErstellen Sie eine Liste priorisierter Optimierungsvorschläge im folgenden Format:\n\nKritisch (sofort umsetzen):\n- [Konkreter Vorschlag mit Beispiel]\n\nWichtig (empfohlen):\n- [Konkreter Vorschlag mit Beispiel]\n\nOptional (Nice to have):\n- [Konkreter Vorschlag mit Beispiel]\n\nOptimierte Meta-Description (maximal 155 Zeichen):\n[Ihr Vorschlag]\n\nWenn Angaben fehlen, etwa kein Ziel-Keyword hinterlegt ist, kennzeichnen Sie Ihre Annahme als solche statt sie stillschweigend zu treffen. Seien Sie spezifisch, umsetzbar und begründen Sie jeden Vorschlag kurz."
      }
    },
    "datenfluss": [
      {
        "von": 1,
        "nach": 2,
        "nutzlast": "Webhook-Nutzlast: draft_id, title, content, meta_description, status, optional draft_url, author, created_at"
      },
      {
        "von": 2,
        "nach": 3,
        "nutzlast": "Blog-Titel, Blog-Inhalt, Meta-Description, Ziel-Keyword (sofern als CMS-Zusatzfeld vorhanden)"
      },
      {
        "von": 3,
        "nach": 4,
        "nutzlast": "Strukturierte Analyse: seo_score, keyword_analysis, heading_structure_analysis, meta_description_feedback, readability_assessment, priority_recommendations, output, success"
      },
      {
        "von": 4,
        "nach": 5,
        "nutzlast": "priority_recommendations, seo_score, output (vollständiger Report), adressiert über draft_id"
      },
      {
        "von": 4,
        "nach": 6,
        "nutzlast": "Draft-Titel, seo_score und draft_url, parallel zu Schritt 5, nicht von dessen Ergebnis abhängig"
      }
    ],
    "voraussetzungen": [
      "CMS mit Status-Trigger und Kommentar-Funktion, zum Beispiel WordPress, Webflow oder Contentful",
      "CMS-API-Zugang mit Schreibrechten für Kommentare, inklusive gültigem API-Key für den Authorization-Header",
      "Team-Chat für die Benachrichtigung, zum Beispiel Slack, Teams oder Discord",
      "Slack-Verbindung mit Autorisierung für den Workspace, der Bot benötigt Zugriff auf den gewählten Kanal, der Platzhalter #content-team muss auf den echten Kanal umgestellt werden",
      "Keyword-Tool optional, zum Beispiel Ahrefs oder SEMrush, für Suchvolumen in der Priorisierung",
      "LLM-Zugang per API-Key (OpenAI, Claude oder Gemini)",
      "Ziel-Keyword als Pflichtfeld pro Artikel im CMS, da es nicht Teil der Standard-Webhook-Nutzlast ist"
    ],
    "fehlerbehandlung": [
      {
        "fall": "Alle Knoten sind auf die Fehlerstrategie Stop gesetzt",
        "massnahme": "Bei einem Fehler in Trigger, SEO-Analyse, CMS-Kommentar oder Team-Benachrichtigung bricht der jeweilige Lauf ab. Es gibt keinen automatischen Retry, Fehler müssen im Log des Automations-Tools nachvollzogen werden."
      },
      {
        "fall": "Workflow startet nicht",
        "massnahme": "CMS-Webhook und Status-Filter (Entwurf/Review) prüfen."
      },
      {
        "fall": "Kein Ziel-Keyword hinterlegt",
        "massnahme": "Analyse trotzdem durchführen und im Kommentar auf das fehlende Keyword hinweisen. Ziel-Keyword als eigenes Pflichtfeld im CMS einführen, da es in der Standard-Webhook-Nutzlast nicht enthalten ist."
      },
      {
        "fall": "Kommentar wird nicht erstellt",
        "massnahme": "CMS-Endpunkt-URL (zum Beispiel wp-json/wp/v2/posts/{draft_id}/comments bei WordPress) und den Authorization-Header mit einem echten API-Key statt des Platzhalters prüfen, zusätzlich die Schreibrechte im CMS."
      },
      {
        "fall": "Meta-Description-Vorschlag über 155 Zeichen",
        "massnahme": "Länge validieren, bei Überschreitung einmalig neu generieren lassen."
      },
      {
        "fall": "Vorschläge zu generisch",
        "massnahme": "Prompt um Zielgruppe und Content-Richtlinien ergänzen."
      },
      {
        "fall": "Sehr langer Draft (Token-Limit)",
        "massnahme": "In Abschnitte teilen und die Ergebnisse zusammenführen."
      },
      {
        "fall": "Team-Benachrichtigung kommt nicht an oder landet im falschen Kanal",
        "massnahme": "Slack-Verbindung und Autorisierung für den Workspace prüfen. Der Kanal-Name #content-team ist nur ein Platzhalter und muss auf den echten Kanal umgestellt werden, der Bot benötigt Zugriff darauf."
      }
    ],
    "platzhalter": [
      {
        "name": "BLOG_TITEL",
        "quelle": "Feld title aus der Webhook-Nutzlast des CMS, dynamisch gemappt"
      },
      {
        "name": "BLOG_INHALT",
        "quelle": "Feld content aus der Webhook-Nutzlast des CMS, dynamisch gemappt"
      },
      {
        "name": "META_DESCRIPTION",
        "quelle": "Feld meta_description aus der Webhook-Nutzlast des CMS, dynamisch gemappt"
      },
      {
        "name": "ZIEL_KEYWORD",
        "quelle": "Nicht Teil der Standard-Webhook-Nutzlast, muss als eigenes Feld im CMS ergänzt werden, kann leer sein"
      },
      {
        "name": "draft_id",
        "quelle": "Eindeutige ID des Drafts aus der Webhook-Nutzlast, adressiert den Kommentar-Endpunkt im CMS-Request"
      },
      {
        "name": "status",
        "quelle": "Statusfeld aus der Webhook-Nutzlast, gefiltert auf Entwurf oder Review beziehungsweise draft/review je nach CMS"
      },
      {
        "name": "draft_url",
        "quelle": "Optionales Feld aus der Webhook-Nutzlast, Link zum Draft in der Team-Benachrichtigung"
      }
    ],
    "herausgeber": "Voyage Digital",
    "version": "2.0",
    "stand": "2026-07-26"
  },
  "itemIcon": "search",
  "recommended": [
    {
      "slug": "claude-seo",
      "category": "tool",
      "name": "claude-seo",
      "teaser": "SEO-Skill- und Subagenten-Suite für Claude Code mit 25 Unter-Skills und 18 Agenten für technische Audits, Content-Qualität, Schema-Markup und KI-Sichtbarkeit, Open Source.",
      "domaene": "SEO & KI-Sichtbarkeit"
    },
    {
      "slug": "geo-seo-claude",
      "category": "tool",
      "name": "geo-seo-claude",
      "teaser": "Claude-Code-Skill-Suite für Generative Engine Optimization mit 13 Unter-Skills und 5 Subagenten, prüft Zitierfähigkeit, KI-Crawler-Zugriff und Markenerwähnungen für KI-Suchsysteme, Open Source.",
      "domaene": "SEO & KI-Sichtbarkeit"
    },
    {
      "slug": "google-search-console",
      "category": "tool",
      "name": "Google Search Console",
      "teaser": "Kostenloses Diagnose-Tool von Google zur Auswertung der Suchperformance, Sitemap-Verwaltung, Index-Inspektion und technischen SEO-Fehlererkennung.",
      "domaene": "SEO & KI-Sichtbarkeit",
      "logoFile": "google-search-console.png",
      "logoEinzug": 1
    },
    {
      "slug": "seo-briefing",
      "category": "skill",
      "name": "Das SEO-Briefing",
      "teaser": "Verwandelt ein Haupt-Keyword in ein vollständiges Content-Briefing mit Keyword-Cluster, Suchintention, Wettbewerberanalyse und Gliederung, direkt nutzbar als Schreibvorlage.",
      "domaene": "SEO & KI-Sichtbarkeit",
      "itemIcon": "search"
    },
    {
      "slug": "rechnungs-strecke",
      "category": "workflow",
      "name": "Die Rechnungs-Strecke",
      "teaser": "Ein Workflow, der eingehende PDF-Rechnungen automatisch ausliest, gegen die passende Bestellung abgleicht und bei Übereinstimmung direkt bucht, während Abweichungen sichtbar zur manuellen Prüfung markiert werden.",
      "domaene": "Daten, Analytics & Finanzen",
      "itemIcon": "receipt"
    },
    {
      "slug": "vertragsrisiko-kette",
      "category": "workflow",
      "name": "Die Vertragsrisiko-Kette",
      "teaser": "Ein Automations-Baustein, der neue Verträge beim Eingang liest, die wichtigsten Klauseln strukturiert herausarbeitet und eine erste Risikoeinschätzung für das Team ablegt.",
      "domaene": "Recht & Compliance",
      "itemIcon": "file-warning"
    },
    {
      "slug": "playwright",
      "category": "tool",
      "name": "Playwright",
      "teaser": "Quelloffenes Framework für Browser-Automatisierung und End-to-End-Tests über Chromium, Firefox und WebKit, mit paralleler Testausführung, Trace Viewer, Codegen-Recorder und Ad-hoc-Inspektion.",
      "domaene": "Softwareentwicklung & technische Infrastruktur",
      "logoFile": "playwright.svg",
      "logoEinzug": 1
    },
    {
      "slug": "content-raster",
      "category": "skill",
      "name": "Das Content-Raster",
      "teaser": "Legen Sie ein systematisches Raster über Ihre bestehenden Inhalte: Leistung, Aktualität und strategische Relevanz in einer Ansicht, daraus ein priorisierter Aktionsplan.",
      "domaene": "Content & Redaktion",
      "itemIcon": "layout-grid"
    },
    {
      "slug": "email-html-mjml",
      "category": "skill",
      "name": "Das E-Mail-Muster",
      "teaser": "Erstellt responsive MJML-4.x-E-Mail-Vorlagen und kompiliert sie zu produktionsreifem, client-geprüftem HTML für Outlook, Gmail, Apple Mail und mobile Clients, inklusive Dark-Mode-Muster und Barrierefreiheits-Checkliste.",
      "domaene": "Design & Kreativ",
      "itemIcon": "mails"
    },
    {
      "slug": "betreffzeilen-pruefer",
      "category": "assistent",
      "name": "Der Betreffzeilen-Prüfer",
      "teaser": "Prüft und optimiert Newsletter-Betreffzeilen: liefert fünf Varianten mit unterschiedlichen psychologischen Ansätzen (emotional, rational, FOMO, Neugier, Nutzen)",
      "domaene": "Content & Redaktion",
      "itemIcon": "type"
    }
  ]
}