CLI-Befehle

FAQ-Batch-Generierung per Kommandozeile

sven:das-faq:generate

Der einzige CLI-Befehl des Plugins. Startet die KI-FAQ-Generierung und kann wahlweise ein einzelnes Produkt, eine Kategorie (optional inkl. Unterkategorien) oder den gesamten Katalog verarbeiten.

bin/console sven:das-faq:generate [OPTIONS]

Ohne Parameter werden alle aktiven Hauptprodukte des Shops verarbeitet. Produkte, die bereits FAQs haben, werden standardmäßig übersprungen — ein Re-Run ist also idempotent.

Der Befehl ruft pro Produkt einen API-Call an Anthropic bzw. OpenAI ab. Bei großen Katalogen entstehen echte Kosten — vor dem ersten echten Lauf bitte mit --dry-run --limit=5 testen und die Provider-Dashboard-Kosten beobachten.

Optionen im Detail

OptionKurzBeschreibung
--product-id -p Einzelmodus. Akzeptiert UUID oder Produktnummer. Gewinnt vor Kategorie-Filtern.
--category-id Nur Produkte dieser Kategorie (UUID).
--category-name -c Nur Produkte dieser Kategorie (Name — matcht über alle Sprachen).
--include-children Unterkategorien rekursiv einbeziehen (nur sinnvoll mit --category-*).
--mode -m append (anhängen, Default) oder replace (bestehende FAQs ersetzen).
--force -f Auch Produkte mit bestehenden FAQs verarbeiten. Pflicht für replace.
--dry-run Nur generieren, NICHT speichern. Im Einzelmodus werden die Vorschläge im Terminal in einer Tabelle gezeigt.
--limit -l Maximale Anzahl Produkte. 0 = unbegrenzt (Default). Für Smoke-Tests sehr nützlich.
--delay -d Pause zwischen API-Calls in Millisekunden. Default 500. Schützt vor Rate-Limits.

Typische Beispiele

Einzelnes Produkt — Vorschau

bin/console sven:das-faq:generate -p SW10001 --dry-run

Generiert FAQs für das Produkt mit Nummer SW10001, zeigt sie als Tabelle im Terminal und speichert nichts.

Einzelnes Produkt — FAQs anhängen

bin/console sven:das-faq:generate -p SW10001

Gleicher Lauf, aber die FAQs werden an die bestehende Liste des Produkts angehängt. Bestehende FAQs bleiben erhalten.

Komplette Kategorie inkl. Unterkategorien

bin/console sven:das-faq:generate -c "Stühle" --include-children

Verarbeitet alle aktiven Hauptprodukte der Kategorie „Stühle" und aller untergeordneten Kategorien. Produkte mit bestehenden FAQs werden übersprungen.

Smoke-Test vor dem großen Lauf

bin/console sven:das-faq:generate --category-id=abc123def456… --limit=5 --dry-run

Generiert FAQs für höchstens 5 Produkte der angegebenen Kategorie, speichert nichts. Gibt eine grobe Schätzung von Laufzeit und API-Kosten.

Bestehende FAQs überschreiben

bin/console sven:das-faq:generate -c "Stühle" --force --mode=replace

Verarbeitet auch Produkte, die schon FAQs haben — alte FAQs werden komplett ersetzt. Vorsicht: Kuratierte FAQs gehen verloren. Vorher ein Backup der product.custom_fields-Spalte empfehlenswert.

Bestehende FAQs ergänzen statt ersetzen

bin/console sven:das-faq:generate -c "Stühle" --force --mode=append

Verarbeitet auch Produkte mit FAQs, hängt aber neue Vorschläge an die bestehende Liste an. Sinnvoll, nachdem Beschreibungen oder Properties umfangreich erweitert wurden.

Vorsichtiger Lauf mit längerer Pause

bin/console sven:das-faq:generate -c "Stühle" --delay=1500

Wartet 1,5 Sekunden zwischen den API-Calls. Empfohlen für große Läufe mit niedrigem Tier-Limit oder bei OpenAI-Accounts ohne hohes RPM-Limit.

Sicherheits-Defaults

Empfohlener Workflow

  1. Konfiguration prüfen: Provider gewählt, API-Key eingetragen, „API-Key testen"-Button geklickt und grün.
  2. Smoke-Test:
    bin/console sven:das-faq:generate -p <eine_test_produktnummer> --dry-run
    Output prüfen: Liefert die KI sinnvolle, sprachlich passende, faktentreue Fragen?
  3. Kategorie-Test:
    bin/console sven:das-faq:generate -c "<Kategorie>" --limit=5 --dry-run
    Schaut man sich 5 zufällige Produkte einer Kategorie an, sieht man schnell, ob Beschreibung & Properties dort generell gut genug sind.
  4. Echter Lauf: Ohne --dry-run, ohne --limit — oder schrittweise pro Kategorie.
  5. Stichproben im Admin: Ein paar Produkte aus dem Lauf manuell aufmachen, FAQs sichten und ggf. nachschärfen.
  6. Storefront kontrollieren: Cache leeren, eine Produktseite öffnen, FAQ-Akkordeon und FAQPage-JSON-LD prüfen (z. B. mit dem Google Rich Results Test ↗).
Idempotent by default: Den gleichen Befehl ein zweites Mal aufzurufen ist sicher — Produkte mit bestehenden FAQs werden übersprungen und kein API-Call läuft unnötig.

Zurück zur KI-FAQ-Generierung oder zur Plugin-Übersicht.