# Bagaimana Agen AI Menyikapi Hari Raya Saat Memposting untuk Banyak Audiens Berbeda?

_2026-10-13 · Cara agen AI menjadwalkan di sekitar hari raya: petakan setiap akun ke tradisinya, panggil get_holidays, baca calendar_notes, dan blokir malam sebelumnya._

Agen yang memposting untuk banyak akun harus mencocokkan setiap waktu terjadwal dengan hari raya audiens masing-masing akun, bukan dengan satu kalender nasional. Di Shager, artinya ada dua pemeriksaan: panggil `get_holidays` untuk tradisi yang relevan sebelum membuat rencana, lalu baca `calendar_notes` yang dikembalikan di setiap postingan terjadwal. Bagian yang tidak bisa dikerjakan tool mana pun untuk agen adalah menentukan tradisi mana yang berlaku untuk akun mana, jadi hal itu harus dituliskan per klien.

## Kalendernya mudah. Pemetaannya yang sulit.

Kebanyakan kesalahan seputar hari raya muncul karena menganggap semua audiens memakai satu kalender yang sama, bukan karena datanya kurang.

Bayangkan sebuah agensi yang mengelola akun-akun berikut dari satu workspace:

1. Restoran keluarga di sebuah desa Druze di Galilea.
2. Jaringan klinik gigi yang sebagian besar pasiennya warga Arab di Israel.
3. Toko perlengkapan rumah tangga yang menyasar audiens Haredi.
4. Pusat komunitas untuk penutur bahasa Rusia, yang sebagian audiensnya mengikuti kalender Gereja Ortodoks.
5. Brand e-commerce yang mengirim ke Eropa dan Amerika Utara.

Postingan diskon yang ceria di hari Selasa bisa saja pas untuk empat di antaranya, tetapi waktunya buruk untuk yang kelima. Agen hanya tahu apa yang ada di instruksinya. Jadi sebelum tool mana pun di bawah ini bisa membantu, setiap profil klien perlu satu baris yang eksplisit: tradisi yang dijalankan audiens ini. Jika Anda sudah menjalankan [satu agen untuk banyak klien](/en/blog/one-agent-many-clients), di profil itulah baris tersebut seharusnya berada.

## Apa saja yang dicakup kalender hari raya Shager?

Kalendernya mencakup hari raya Yahudi dan Israel, Islam, Kristen Barat, Kristen Ortodoks, Druze, Bahá'í, Hindu, Buddha, Sikh, Jain, Tionghoa, dan Persia. Ada juga hari internasional dan komersial: Hari Valentine, Hari Perempuan Internasional, Hari Ibu dan Hari Ayah versi Amerika Serikat, Halloween, Singles' Day, Thanksgiving, Black Friday, Cyber Monday, dan Tahun Baru.

Setiap hari membawa salah satu dari empat saran posting:

| Saran | Yang sebaiknya dilakukan agen | Contoh |
| --- | --- | --- |
| `avoid` | Tidak ada konten promosi untuk audiens itu | Yom Kippur; Hari Peringatan Holocaust dan Hari Peringatan Pahlawan di Israel |
| `sensitive` | Hanya konten yang penuh hormat, tanpa jualan agresif, tanpa candaan | Hari puasa, Jumat Agung, Asyura, Hari Arafah, Lailatul Qadar |
| `opportunity` | Ucapan selamat atau postingan bertema cocok | Idulfitri, Natal, Diwali, Imlek, Black Friday |
| `normal` | Tidak ada yang perlu diubah | Selain yang di atas |

Kalender di aplikasi menampilkan data yang sama untuk manusia, dengan filter tradisi dan warna untuk setiap jenis saran.

## Memanggil get_holidays

Fitur ini tersedia sebagai tool MCP `get_holidays` dan sebagai operasi REST yang didokumentasikan di [spesifikasi OpenAPI](https://app.shager.ai/api/v1/openapi.json):

```bash
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"
```

Tanpa `from` dan `to`, rentangnya adalah hari ini ditambah 60 hari. Maksimalnya 400 hari. `traditions` menyaring hanya tradisi yang Anda sebutkan, dan `language` mengembalikan nama dalam bahasa Inggris atau Ibrani. Bentuk responsnya seperti ini:

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

Teruskan `guidance` ke peninjau manusia; isinya menjelaskan dalam satu kalimat mengapa sebuah postingan dipindahkan.

## Urutan panggilan, dari awal sampai akhir

Berikut urutan yang saya pakai untuk putaran mingguan. Ambil akhir November 2026 sebagai contoh: Thanksgiving jatuh pada Kamis 26 November, Black Friday pada tanggal 27, dan Cyber Monday pada tanggal 30. Untuk brand e-commerce, itu adalah rangkaian hari `opportunity`. Untuk toko Haredi atau restoran Druze, hari-hari itu mungkin sekadar `normal` dan tidak layak dibuatkan postingan bertema sama sekali.

```text
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
```

Pertama, `per_channel` memungkinkan satu postingan membawa caption berbeda untuk setiap akun, sehingga halaman untuk Amerika Serikat bisa menyebut akhir pekan Thanksgiving, sementara halaman untuk Eropa membahas Black Friday tanpa nuansa Amerika. Saya menulis lebih banyak soal itu di [variasi caption per akun](/en/blog/caption-variation-per-account-with-ai).

Kedua, satu postingan hanya punya satu waktu jadwal. Jika dua audiens dalam grup yang sama punya pandangan berbeda tentang satu hari, caption tidak bisa menyelesaikannya. Pisahkan menjadi postingan terpisah dengan waktu terpisah.

`calendar_notes` dikembalikan di setiap postingan dari `create_post`, `get_post`, dan `schedule_post`, berisi daftar hari raya pada hari jadwal postingan tersebut beserta sarannya. Ini menangkap apa yang terlewat saat perencanaan, termasuk waktu yang diubah seseorang secara manual.

## Mengapa "dimulai malam sebelumnya" mengacaukan pengecekan tanggal yang naif

Hari raya Yahudi dimulai saat matahari terbenam pada malam sebelum tanggal yang tertera di kalender. [Penjelasan dari gerakan Reform](https://reformjudaism.org/learning/answers-jewish-questions/why-do-jewish-holidays-begin-night) menelusurinya ke kisah penciptaan, di mana malam datang sebelum pagi. Dalam Islam pun hari dimulai saat matahari terbenam, sama seperti malam takbiran yang datang sebelum Idulfitri.

Agen yang hanya membandingkan tanggal akan keliru dengan cara yang bisa ditebak. Kalender mencantumkan Yom Kippur di satu tanggal. Agen memeriksa promo yang dijadwalkan pukul 19.00 pada tanggal sebelumnya, tidak menemukan kecocokan, lalu memublikasikannya tepat saat puasa dimulai.

Di Israel, taruhannya lebih besar pada dua hari peringatan. Hari Peringatan bagi prajurit yang gugur dimulai saat matahari terbenam pada malam sebelumnya, dan [tempat hiburan ditutup berdasarkan undang-undang](https://www.jewishvirtuallibrary.org/yom-hazikaron-israeli-memorial-day) sepanjang hari itu. Pada Hari Peringatan Holocaust, [tempat hiburan umum ditutup berdasarkan undang-undang](https://en.wikipedia.org/wiki/Yom_HaShoah) pada malam sebelumnya dan pada hari itu sendiri. Brand yang memposting promo jenaka di malam itu memang tidak melanggar hukum, tetapi audiensnya akan memperhatikan.

Aturan saya di instruksi agen sederhana: untuk hari `avoid` dan `sensitive`, sore dan malam sehari sebelumnya dihitung sebagai bagian dari hari itu. Untuk hari `opportunity`, awal yang dimulai malam hari justru menguntungkan, karena ucapan yang tiba sebelum hari raya dimulai berarti datang tepat waktu.

## Mengapa tanggal Islam ditandai sebagai perkiraan?

Shager menghitung tanggal Islam dari kalender Umm al-Qura dan menandainya `approximate: true`. Umm al-Qura adalah kalender resmi Arab Saudi dan dihitung jauh-jauh hari, sementara awal bulan-bulan keagamaan bergantung pada rukyat hilal. [The New Arab mengutip situs web lama kalender itu sendiri](https://www.newarab.com/news/will-saudi-arabia-announce-wrong-date-ramadan) yang menyatakan bahwa kalender tersebut bisa saja tidak sesuai dengan terlihatnya hilal yang sebenarnya. Negara-negara juga menerapkan kriteria rukyat yang berbeda, sehingga [Idulfitri bisa jatuh pada hari yang berbeda di negara yang berbeda](https://www.aljazeera.com/news/2023/3/16/infographic-when-is-ramadan-2023), seperti yang sudah akrab bagi pembaca di Indonesia yang menunggu hasil sidang isbat.

Selisihnya sekitar satu hari. Bagi jaringan klinik tadi, artinya: siapkan ucapan Idulfitri sebagai draf jauh-jauh hari dan jadwalkan setelah ada pengumuman resmi setempat, atau tulis sedemikian rupa sehingga tetap enak dibaca jika terbit sehari lebih awal. Untuk hari `sensitive` yang bersifat perkiraan, sisakan satu hari cadangan di kedua sisinya. Untuk audiens yang tersebar di beberapa negara, jangan menganggap satu tanggal cocok untuk semuanya.

## Prompt yang bisa Anda sesuaikan

```text
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.
```

Padukan dengan aturan waktu dari [strategi penjadwalan untuk agen](/en/blog/scheduling-strategy-for-agents), sehingga offset zona waktu dan hari raya ditangani dalam satu putaran yang sama.

## Daftar periksa sebelum setiap putaran terjadwal

1. Setiap akun punya profil audiens dengan daftar tradisi yang eksplisit.
2. Satu panggilan `get_holidays` mencakup seluruh rentang tanggal putaran itu.
3. Hari `avoid` juga memblokir malam sebelumnya.
4. Hari `sensitive` mengubah nadanya, bukan hanya waktunya.
5. Postingan `opportunity` ditulis per audiens, tidak pernah satu ucapan generik untuk semua.
6. Tanggal perkiraan mendapat satu hari cadangan.
7. Audiens campuran pada hari yang diperdebatkan dipisah menjadi postingan terpisah.
8. Setelah menjadwalkan, agen membaca `calendar_notes` dan melaporkan setiap perubahan yang dibuatnya.

Hari istirahat mingguan seperti Sabat adalah aturan tetap, bukan entri kalender, jadi masukkan ke profil audiens sebagai rentang waktu yang diblokir.

Jika agen Anda belum terhubung, [halaman masuk untuk agen](/en/agents) memandu proses pengaturannya. Setelah terhubung, pekerjaan pertama yang berguna itu kecil saja: tambahkan baris tradisi ke setiap profil klien dan jalankan `get_holidays` untuk dua bulan ke depan agar Anda tahu apa saja yang akan datang.

## FAQ

### Apakah Shager memblokir penjadwalan di hari avoid?

Tidak. Sarannya bersifat informasi, dikembalikan oleh `get_holidays` dan di `calendar_notes` setiap postingan. Keputusannya tetap ada pada agen dan siapa pun yang menyetujui pekerjaannya, karena hari yang sama bisa khidmat bagi satu audiens dan biasa saja bagi audiens lain.

### Bagaimana agen tahu tradisi mana yang berlaku untuk sebuah akun?

Agen tidak boleh menebak dari nama usaha atau kotanya. Tuliskan tradisinya di profil audiens setiap klien dan instruksikan agen untuk berhenti dan bertanya jika baris itu tidak ada.

### Apakah brand e-commerce global perlu memedulikan hari raya keagamaan?

Ya, terutama untuk pasar-pasar utamanya. Kelompokkan akunnya berdasarkan pasar, cocokkan setiap grup dengan hari-hari komersial ditambah tradisi yang umum di pasar itu, dan tulis ucapan per grup. Postingan Natal adalah peluang di satu pasar, tetapi tidak relevan atau malah canggung di pasar lain.

---
Source: https://shager.ai/id/blog/holiday-aware-posting-for-agents
