Feiertage im Blick: Wie ein KI-Agent postet, wenn er für viele verschiedene Zielgruppen arbeitet

So plant ein KI-Agent rund um Feiertage: jedes Konto seinen Traditionen zuordnen, get_holidays aufrufen, calendar_notes lesen und den Vorabend sperren.

Ein Agent, der für viele Konten postet, sollte jeden geplanten Zeitpunkt mit den Feiertagen der jeweiligen Zielgruppe abgleichen, nicht mit einem einzigen nationalen Kalender. In Shager heißt das zwei Prüfungen: vor der Planung get_holidays für die relevanten Traditionen aufrufen und danach die calendar_notes lesen, die bei jedem geplanten Beitrag mitkommen. Was kein Tool dem Agenten abnehmen kann, ist die Entscheidung, welche Traditionen für welches Konto gelten. Das muss pro Kunde schriftlich festgehalten werden.

Der Kalender ist einfach. Die Zuordnung ist das Schwierige.

Die meisten Feiertagspannen entstehen nicht durch fehlende Daten, sondern durch die Annahme, alle Zielgruppen teilten denselben Kalender.

Stell dir eine Agentur vor, die diese Konten aus einem Workspace betreut:

  1. Ein Familienrestaurant in einem drusischen Dorf in Galiläa.
  2. Eine Kette von Zahnarztpraxen, deren Patienten überwiegend arabische Staatsbürger Israels sind.
  3. Ein Haushaltswarengeschäft mit ultraorthodoxer Kundschaft.
  4. Ein Gemeindezentrum für Russischsprachige, in dem ein Teil der Zielgruppe dem orthodoxen Kirchenkalender folgt.
  5. Eine E-Commerce-Marke, die nach Europa und Nordamerika liefert.

Ein fröhlicher Rabattbeitrag an einem Dienstag kann für vier davon passen und für den fünften denkbar schlecht getimt sein. Ein Agent weiß nur, was in seinen Anweisungen steht. Bevor dir also irgendeines der folgenden Werkzeuge hilft, braucht jedes Kundenprofil eine ausdrückliche Zeile: die Traditionen, die diese Zielgruppe begeht. Wenn du schon einen Agenten für viele Kunden einsetzt, gehört diese Zeile genau in dieses Profil.

Kalenderdiagramm: Jeder Feiertag einer Tradition trägt eine Empfehlung: keine Werbeinhalte, mit Feingefühl posten oder die Chance für einen Gruß nutzen.
Vor dem Planen prüft der Agent die Feiertage der Zielgruppe jedes Kontos. (Beispiele)

Was deckt der Feiertagskalender von Shager ab?

Der Kalender enthält jüdische und israelische, muslimische, westlich-christliche, orthodox-christliche, drusische, Bahá'í-, hinduistische, buddhistische, Sikh-, jainistische, chinesische und persische Feiertage. Dazu kommen internationale und kommerzielle Tage: Valentinstag, Internationaler Frauentag, Muttertag und Vatertag in den USA, Halloween, Singles' Day, Thanksgiving, Black Friday, Cyber Monday und Neujahr.

Jeder Tag trägt eine von vier Posting-Empfehlungen:

Empfehlung Was der Agent tun sollte Beispiele
avoid Keine Werbeinhalte an diese Zielgruppe Jom Kippur; Holocaust-Gedenktag und Gedenktag für die Gefallenen in Israel
sensitive Nur respektvolle Inhalte, kein harter Verkauf, keine Witze Fastentage, Karfreitag, Aschura, Tag von Arafat, Laylat al-Qadr
opportunity Ein Gruß oder ein Themenbeitrag passt Eid al-Fitr, Weihnachten, Diwali, Chinesisches Neujahr, Black Friday
normal Nichts zu ändern Alles andere

Der Kalender in der App zeigt dieselben Daten für Menschen an, mit einem Filter nach Tradition und einer Farbe pro Empfehlung.

get_holidays aufrufen

Die Funktion gibt es als MCP-Tool get_holidays und als REST-Operation, dokumentiert in der OpenAPI-Spezifikation:

curl -s "https://app.shager.ai/api/v1/holidays?from=2026-11-20&to=2026-12-05&traditions=jewish,muslim&language=en" \
  -H "Authorization: Bearer $SHAGER_API_KEY"

Ohne from und to umfasst der Zeitraum heute plus 60 Tage, maximal sind es 400 Tage. traditions filtert auf die genannten Traditionen, und language liefert die Namen auf Englisch oder Hebräisch. Die Antwort sieht so aus:

{
  "data": {
    "from": "2026-11-20",
    "to": "2026-12-05",
    "note": "...",
    "holidays": [
      {
        "date": "YYYY-MM-DD",
        "tradition": "...",
        "name": "...",
        "key": "...",
        "advice": "opportunity",
        "guidance": "...",
        "approximate": true
      }
    ]
  }
}

Gib guidance an die Person weiter, die prüft: Das Feld erklärt in einem Satz, warum ein Beitrag verschoben wurde.

Die Aufrufkette von Anfang bis Ende

Das ist die Reihenfolge, die ich für einen wöchentlichen Lauf verwende. Nehmen wir Ende November 2026 als Beispiel: Thanksgiving fällt auf Donnerstag, den 26., Black Friday auf den 27. und Cyber Monday auf den 30. Für die E-Commerce-Marke ist das eine Reihe von opportunity-Tagen. Für das ultraorthodoxe Geschäft oder das drusische Restaurant sind diese Tage womöglich einfach normal und keinen Themenbeitrag wert.

get_holidays  { from: "2026-11-20", to: "2026-12-05", traditions: <union of all profiles in this run> }

create_post   { workspace_id: "ws_retail",
                channel_ids: ["ch_shop_eu_ig", "ch_shop_us_fb"],
                caption: "...",
                per_channel: [
                  { channel_id: "ch_shop_eu_ig", caption: "..." },
                  { channel_id: "ch_shop_us_fb", caption: "..." }
                ],
                media_ids: ["med_19ae"] }

schedule_post { workspace_id: "ws_retail", post_id: "pst_5d2c",
                schedule_at: "2026-11-27T09:00:00-05:00" }

read calendar_notes on the returned post
  if any entry is avoid or sensitive for a tradition in this account's profile:
    cancel_post, pick a new time, schedule again, and log why

Erstens: Mit per_channel bekommt ein Beitrag pro Konto einen anderen Text. Die US-Seite kann also das Thanksgiving-Wochenende erwähnen, während die EU-Seite über Black Friday spricht, ohne den amerikanischen Bezug. Mehr dazu habe ich in Texte pro Konto variieren geschrieben.

Zweitens: Ein Beitrag hat genau einen geplanten Zeitpunkt. Sind sich zwei Zielgruppen in derselben Gruppe über einen Tag uneins, helfen unterschiedliche Texte nicht weiter. Teile sie in getrennte Beiträge mit getrennten Zeitpunkten auf.

calendar_notes kommt bei jedem Beitrag mit, den create_post, get_post und schedule_post zurückgeben, und listet die Feiertage am geplanten Tag samt Empfehlung auf. So fällt auf, was bei der Planung übersehen wurde, auch eine Uhrzeit, die jemand von Hand geändert hat.

Zeitleiste: Beiträge an verschiedene Konten verteilen sich über Minuten, mit einer eigenen Spur pro Netzwerk, statt alle in derselben Sekunde rauszugehen.
Die Staffelung hält das Tempo jedes Netzwerks ein und wirkt nicht wie Spam. Standard: 30 bis 90 Sekunden zwischen Konten im selben Netzwerk.

Warum „beginnt am Vorabend“ naive Datumsprüfungen aushebelt

Jüdische Feiertage beginnen bei Sonnenuntergang am Abend vor dem Datum, das im Kalender steht. Die Erklärung der Reformbewegung führt das auf die Schöpfungsgeschichte zurück, in der der Abend vor dem Morgen kommt. Auch der islamische Tag beginnt mit dem Sonnenuntergang.

Ein Agent, der nur Daten vergleicht, liegt hier auf vorhersehbare Weise falsch. Der Kalender führt Jom Kippur an einem Datum. Der Agent prüft eine Aktion, die für 19:00 Uhr am Vortag geplant ist, findet keinen Treffer und veröffentlicht mitten in den Beginn des Fastens hinein.

In Israel steht an den beiden Gedenktagen noch mehr auf dem Spiel. Der Gedenktag für die gefallenen Soldaten beginnt bei Sonnenuntergang am Vorabend, und tagsüber sind Unterhaltungsstätten gesetzlich geschlossen. Am Holocaust-Gedenktag sind öffentliche Unterhaltungsstätten gesetzlich geschlossen, am Vorabend und am Tag selbst. Eine Marke, die an diesem Abend einen verspielten Sale postet, verstößt gegen kein Gesetz, aber die Zielgruppe merkt es.

Meine Regel in den Anweisungen für Agenten ist einfach: Bei avoid- und sensitive-Tagen zählen Nachmittag und Abend des Vortags zum Tag dazu. Bei opportunity-Tagen hilft dir der Beginn am Vorabend sogar, denn ein Gruß, der vor Beginn des Feiertags erscheint, kommt pünktlich an.

Warum sind islamische Daten als ungefähr markiert?

Shager berechnet islamische Daten nach dem Umm-al-Qura-Kalender und markiert sie mit approximate: true. Umm al-Qura ist der offizielle Kalender Saudi-Arabiens und wird im Voraus berechnet, während der Beginn der religiösen Monate von der Sichtung der Mondsichel abhängt. The New Arab zitiert die frühere Website des Kalenders selbst mit dem Hinweis, dass er nicht unbedingt mit der tatsächlichen Sichtbarkeit der Mondsichel übereinstimmt. Außerdem wenden Länder unterschiedliche Kriterien für die Sichtung an, sodass Eid in verschiedenen Ländern auf verschiedene Tage fallen kann.

Die Abweichung beträgt etwa einen Tag. Für die Zahnarztkette heißt das: Den Gruß zu Eid al-Fitr früh als Entwurf vorbereiten und erst nach der lokalen Bekanntgabe planen, oder ihn so formulieren, dass er auch einen Tag zu früh noch gut klingt. Bei einem ungefähren sensitive-Tag lässt du auf beiden Seiten einen Puffertag. Und bei Zielgruppen, die über mehrere Länder verteilt sind, gehst du nicht davon aus, dass ein Datum für alle passt.

Ein Prompt zum Anpassen

Before scheduling anything this week:
1. Read each client's audience profile and list its traditions. If a profile has none, stop and ask me.
2. Call get_holidays once for the whole week, with the union of those traditions.
3. avoid: no promotional posts to that audience, including the afternoon and evening before.
4. sensitive: respectful tone only. No discounts, no humour, no countdowns.
5. opportunity: propose a greeting or themed post, written separately per account with per_channel.
6. approximate=true: keep a one day buffer, or wait for the local announcement.
7. After schedule_post, read calendar_notes. On a conflict, cancel, reschedule and tell me what changed.

Kombiniere das mit den Timing-Regeln aus Planungsstrategie für Agenten, damit Zeitzonen-Offsets und Feiertage im selben Durchgang erledigt werden.

Checkliste vor jedem geplanten Lauf

  1. Jedes Konto hat ein Zielgruppenprofil mit einer ausdrücklichen Liste von Traditionen.
  2. Ein einziger get_holidays-Aufruf deckt den gesamten Zeitraum des Laufs ab.
  3. Ein avoid-Tag sperrt auch den Abend davor.
  4. Ein sensitive-Tag ändert den Ton, nicht nur die Uhrzeit.
  5. opportunity-Beiträge werden pro Zielgruppe geschrieben, nie als ein generischer Gruß für alle.
  6. Ungefähre Daten bekommen einen Puffertag.
  7. Gemischte Zielgruppen an einem umstrittenen Tag werden auf getrennte Beiträge verteilt.
  8. Nach der Planung liest der Agent calendar_notes und meldet jede Änderung, die er vorgenommen hat.

Wöchentliche Ruhetage wie der Schabbat sind eine feste Regel und kein Kalendereintrag. Trag sie deshalb als gesperrte Zeitfenster ins Zielgruppenprofil ein.

Ist dein Agent noch nicht verbunden, führt dich die Einstiegsseite für Agenten durch die Einrichtung. Danach ist der erste sinnvolle Job klein: Ergänze jedes Kundenprofil um die Zeile mit den Traditionen und lass get_holidays über die nächsten zwei Monate laufen, um zu sehen, was ansteht.

FAQ

Blockiert Shager die Planung an einem avoid-Tag?

Nein. Die Empfehlung ist eine Information, die get_holidays und die calendar_notes jedes Beitrags liefern. Die Entscheidung bleibt beim Agenten und bei der Person, die seine Arbeit freigibt, denn derselbe Tag kann für eine Zielgruppe feierlich und für eine andere ganz gewöhnlich sein.

Woher weiß der Agent, welche Traditionen für ein Konto gelten?

Raten sollte er das nicht, weder anhand eines Firmennamens noch anhand einer Stadt. Schreib die Traditionen in das Zielgruppenprofil jedes Kunden und weise den Agenten an, anzuhalten und nachzufragen, wenn diese Zeile fehlt.

Muss sich eine globale E-Commerce-Marke überhaupt um religiöse Feiertage kümmern?

Ja, vor allem in ihren größeren Märkten. Gruppiere ihre Konten nach Markt, gleiche jede Gruppe mit den kommerziellen Tagen und den in diesem Markt verbreiteten Traditionen ab und schreib die Grüße pro Gruppe. Ein Weihnachtsbeitrag ist in einem Markt eine Chance und in einem anderen belanglos oder unpassend.

Probier’s aus – mit deinen eigenen Konten.

Kostenlos in der Launch-Phase, ohne Karte. Verbinden, einmal schreiben, und Shager veröffentlicht und misst.