Jawaban langsung: Hermes AgentAgent AIProgram AI yang mengerjakan langkah pekerjaan sendiri, misalnya membaca pesan, menyiapkan balasan, lalu mencatat hasilnya.Buka glosarium menyambung ke WhatsApp lewat 2 jalur. Jalur pertama, perintah hermes whatsapp, memakai bridge Baileys: Anda memindai QR dari nomor khusus bot, tanpa akun Meta Business dan tanpa URL publik. Jalur kedua, hermes whatsapp-cloud, memakai WhatsApp Business Cloud APIAPIPintu resmi yang dipakai 2 sistem untuk saling mengirim data, tanpa orang menyalin data secara manual.Buka glosarium resmi dari Meta: butuh akun Meta Business, Phone Number ID, token System User, dan webhookWebhookPesan otomatis yang sebuah sistem kirim ke sistem lain tepat saat sesuatu terjadi, misalnya pesan WhatsApp masuk.Buka glosarium HTTPS publik. Untuk uji internal dan tim kecil, mulai dari Baileys. Untuk bot yang melayani pelanggan, pakai Cloud API.

Kondisi utama: kedua jalur hanya menjawab nomor yang ada di allowlist atau yang sudah pairing. Tanpa allowlist, gateway menolak semua pesan masuk. Batas: Baileys tidak resmi dari Meta dan membawa risiko pembatasan akun, jadi jangan pakai nomor pribadi. Cloud API mengikuti aturan jendela 24 jam Meta: balasan bebas hanya dalam 24 jam setelah pesan terakhir pelanggan, dan Hermes belum mendukung template pesan untuk di luar jendela itu per 19 September 2026.

Kami membaca halaman WhatsApp dan WhatsApp Business Cloud API pada dokumentasi Hermes Agent tanggal 19 September 2026. Pada hari yang sama kami menjalankan wizard hermes whatsapp pada Hermes Agent v0.21.3 di container Ubuntu 24.04: memilih mode, mengisi allowlist dengan nomor dummy, membiarkan wizard memasang bridge, dan menangkap layar QR. Kami tidak memindai QR itu. Nomor pada gambar disamarkan.

Masalah: tim Anda hidup di WhatsApp, bot Anda tidak

Di Indonesia, keputusan bisnis kecil lewat WhatsApp: admin bertanya stok, pemilik minta laporan, supplier mengirim harga. Chat AI di browser tidak ikut di percakapan itu. Hermes Agent bisa ikut, tetapi WhatsApp bukan Telegram. Telegram memberi bot token resmi dalam 1 menit. WhatsApp memberi 2 pilihan yang masing-masing punya harga: jalur tidak resmi yang cepat, atau jalur resmi yang butuh akun bisnis dan server publik.

Artikel ini menutup pertanyaan "hermes agent whatsapp" yang pada Search Console kami muncul tanpa halaman yang menjawab langkah demi langkah. Gambaran gateway untuk semua platform kami tulis pada artikel Hermes Agent untuk Telegram, Discord, Slack, dan WhatsApp. Bila Anda belum memasang Hermes, baca dulu penjelasan apa itu Hermes Agent.

Cara kerja 2 jalur WhatsApp

Diagram 2 jalur WhatsApp di Hermes Agent: Baileys lewat QR dan bridge Node.js, Cloud API lewat akun Meta Business dan webhook publik
Jalur A memakai QR dan bridge Node.js di server Anda. Jalur B memakai Meta Cloud API dan webhook HTTPS. (1) sampai (4) adalah urutan tiap jalur. Pil di bawah tiap jalur menyebut batasnya.

Jalur A: bridge Baileys meniru WhatsApp Web

Bridge ini meniru sesi WhatsApp Web, bukan memakai WhatsApp Business APIWABAAkun WhatsApp resmi untuk usaha. Akun ini mengirim pesan lewat program, bukan lewat aplikasi di ponsel.Buka glosarium. Ia berjalan sebagai proses Node.js yang dikelola gateway Hermes. Sesi tersimpan di ~/.hermes/platforms/whatsapp/session dan bertahan setelah restart, jadi QR hanya dipindai 1 kali sampai sesi putus. Dokumentasi memberi 3 peringatan: pakai nomor khusus, jangan kirim pesan massal, dan jangan mengirim pesan keluar ke orang yang belum menghubungi bot. WhatsApp memperbarui protokol Web secara berkala, jadi update Hermes dan pindai ulang bila bot berhenti. Sumber: dokumentasi WhatsApp Setup, 19 September 2026.

Jalur B: Cloud API resmi lewat webhook

Adapter whatsapp_cloud menerima pesan masuk lewat HTTPS POST dari Meta dan membalas lewat Graph API. Wizard hermes whatsapp-cloud meminta Phone Number ID, Access Token, dan App Secret, lalu memvalidasi tiap nilai. Kesalahan nomor 1 menurut dokumentasi: menempel nomor telepon pada kolom Phone Number ID, padahal ID itu angka 15 sampai 17 digit di bawah dropdown From pada halaman API Setup. Token sementara kadaluwarsa 24 jam; produksi memakai token System User tanpa kadaluwarsa. Sumber: dokumentasi WhatsApp Business Cloud API.

Kontrol akses: allowlist, pairing, dan diam

Gateway menolak semua pengguna yang tidak ada di allowlist. Variabel WHATSAPP_ALLOWED_USERS memuat nomor dengan kode negara tanpa tanda plus, dipisah koma. Nilai * mengizinkan semua orang, dan dokumentasi tidak menyarankannya untuk bot dengan akses terminal. Alternatifnya DM pairing: orang asing menerima kode 1 kali, dan Anda menyetujuinya dengan hermes pairing approve whatsapp KODE. Kode kadaluwarsa 1 jam. Bila nomor bot harus diam terhadap orang asing, set whatsapp.unauthorized_dm_behavior: ignore. Sumber: dokumentasi Messaging Gateway.

Bentuk pesan: potongan 4.096 karakter dan markdown

Jawaban panjang dipotong otomatis per 4.096 karakter. Markdown **tebal** diubah ke *tebal* versi WhatsApp, heading menjadi teks tebal, dan tautan menjadi teks plus URL. Pesan suara masuk ditranskripsi bila provider STT diatur; jawaban TTS dikirim sebagai MP3. Pada mode bot, agent juga bisa mengirim poll asli WhatsApp untuk pertanyaan pilihan ganda. Sumber: halaman WhatsApp Setup yang sama.

Tabel: Baileys dibandingkan Cloud API

Tabel ini merangkum tabel perbandingan pada dokumentasi Hermes Agent tanggal 19 September 2026.

HalBaileys (hermes whatsapp)Cloud API (hermes whatsapp-cloud)
Jenis akunPribadi atau WhatsApp Business appMeta Business dengan WABA
Cara sambungPindai QRApp Meta, WABA, token, webhook
URL publikTidak perluWajib HTTPS
Risiko blokir akunAda, API tidak resmiTidak, jalur resmi
GrupDidukung penuhHanya DM pada v1
Jendela 24 jamTidak adaBerlaku, template diperlukan sesudahnya
Tanda baca dibaca dan mengetikTidakYa
Tombol interaktifFallback teksNative untuk clarify dan approval
Pemakaian produksiBerisikoDirancang untuk itu

Prasyarat

  • Hermes Agent terpasang di server yang hidup 24 jam. Urutan pasangnya ada pada panduan install Hermes Agent di Ubuntu VPS.
  • Node.js 18 atau lebih baru dan npm. Installer Hermes sudah menyiapkannya.
  • 1 nomor khusus untuk bot: SIM prabayar, dual-SIM, atau nomor WhatsApp Business. Bukan nomor pribadi Anda.
  • 1 HP dengan WhatsApp atau WhatsApp Business untuk memindai QR.
  • Daftar nomor yang boleh mengobrol dengan bot, dengan kode negara.
  • Untuk jalur Cloud API: akun Meta Business, app WhatsApp, dan cara mengekspos port ke internet, misalnya Cloudflare Tunnel.

Langkah 1: Siapkan nomor bot dan tentukan mode

Pilih mode Separate bot number (nomor bot terpisah). Orang mengirim pesan ke nomor itu, dan risiko akun terisolasi dari nomor pribadi. Mode Personal self-chat hanya untuk uji 1 orang: Anda mengirim pesan ke diri sendiri. Dokumentasi menyebut 3 sumber nomor: Google Voice (hanya AS), SIM prabayar $5 sampai $15 sekali beli, dan layanan VoIP. Di Indonesia, SIM prabayar pada slot SIM kedua adalah jalur yang kami pakai untuk uji. Nomor harus tetap aktif menurut aturan operator.

Terminal wizard hermes whatsapp menampilkan 2 pilihan mode dan kotak saran cara mendapat nomor kedua
Wizard hermes whatsapp pada uji kami. (1) Pilihan 1: nomor bot terpisah, direkomendasikan. (2) Pilihan 2: nomor pribadi self-chat. (3) Kotak saran: WhatsApp Business dengan SIM kedua berjalan berdampingan dengan WhatsApp pribadi tanpa HP kedua.

Verifikasi: nomor bot sudah terdaftar di WhatsApp pada HP yang akan memindai. Nomor itu belum pernah dipakai untuk pesan massal.

Langkah 2: Jalankan wizard dan isi allowlist

Di server, jalankan:

hermes whatsapp

Wizard bertanya mode, lalu bertanya siapa yang boleh mengirim pesan ke bot. Isi nomor dengan kode negara tanpa tanda plus, dipisah koma. Jangan isi *. Wizard menyimpan jawaban ke ~/.hermes/.env, memasang dependensi bridge, lalu menampilkan QR. Pada uji kami, prompt allowlist memakai prompt_toolkit dan butuh terminal interaktif nyata; pipa stdin membuatnya keluar dengan EOFError. Jalankan wizard dari sesi SSH biasa, bukan dari skrip.

Terminal menampilkan Allowed users set, instalasi dependensi bridge, instruksi Settings Linked Devices Link a Device, dan kode QR
Lanjutan wizard pada uji kami. (1) Allowlist tersimpan, nomor disamarkan. (2) Dependensi bridge terpasang. (3) Instruksi pindai: Settings, Linked Devices, Link a Device. (4) QR yang berganti tiap sekitar 20 detik. QR ini sudah kadaluwarsa.

Verifikasi: baris Allowed users set memuat nomor Anda dan baris Dependencies installed muncul sebelum QR.

Langkah 3: Pindai QR dari HP bot

Buka WhatsApp pada HP dengan nomor bot. Buka Settings › Linked Devices › Link a Device dan arahkan kamera ke QR di terminal. QR berganti tiap sekitar 20 detik; bila habis, jalankan hermes whatsapp lagi. Terminal harus lebar 60 kolom atau lebih supaya QR tidak rusak. Setelah terhubung, wizard menyimpan sesi dan keluar. Dokumentasi menyebut jalur ~/.hermes/platforms/whatsapp/session; pada uji kami dengan v0.21.3, wizard mencetak ~/.hermes/whatsapp/session. Pakai jalur yang dicetak wizard Anda. Sumber: dokumentasi WhatsApp Setup, bagian Step 1.

Terminal menampilkan hermes pairing list dengan pesan No pairing data found
hermes pairing list pada uji kami sebelum ada orang yang pairing. (1) Daftar kosong adalah kondisi yang benar sebelum bot dibuka. Setelah bot hidup, kode pairing dari orang asing muncul di sini.

Verifikasi: jalankan chmod 700 pada folder sesi yang dicetak wizard. Folder ini berisi kunci enkripsi dan kredensial perangkat. Jangan salin ke repositori atau chat.

Langkah 4: Periksa .env dan config.yaml

Buka ~/.hermes/.env dan pastikan 3 baris ini ada. Wizard menulisnya, tetapi periksa sebelum gateway hidup.

# ~/.hermes/.env
WHATSAPP_ENABLED=true
WHATSAPP_MODE=bot                    # "bot" atau "self-chat"
WHATSAPP_ALLOWED_USERS=628XXXXXXXXX  # nomor dengan kode negara, tanpa +

Tambahkan pengaturan opsional di ~/.hermes/config.yaml bila nomor bot harus diam terhadap orang asing dan tanpa header "Hermes Agent" pada tiap balasan.

# ~/.hermes/config.yaml
whatsapp:
  unauthorized_dm_behavior: ignore   # diam pada nomor di luar allowlist
  reply_prefix: ""                   # kosongkan header "Hermes Agent"
  send_read_receipts: false
Terminal menampilkan hermes config get approvals.mode dengan nilai smart dan terminal.backend dengan nilai local
Nilai bawaan pada uji kami. (1) approvals.mode = smart. (2) terminal.backend = local. Bot WhatsApp dengan akses terminal memakai nilai ini, jadi allowlist adalah pagar pertama.

Verifikasi: hermes config get whatsapp.unauthorized_dm_behavior mengembalikan ignore bila Anda mengaturnya. Sumber: bagian Security pada dokumentasi WhatsApp Setup.

Langkah 5: Jalankan gateway

Untuk uji, jalankan di latar depan: hermes gateway. Untuk layanan, pakai hermes gateway install pada laptop atau sudo hermes gateway install --system pada VPS. Gateway memulai bridge WhatsApp dengan sesi tersimpan. Dokumentasi menyebut gateway menangani putus sambung sementara secara otomatis; sesi yang rusak butuh pindai ulang.

Terminal menampilkan kotak Hermes Gateway Starting dengan catatan messaging platforms dan cron scheduler, lalu peringatan No messaging platforms enabled
hermes gateway run pada uji kami sebelum pairing selesai. (1) Kotak Gateway Starting menyebut messaging dan cron berjalan bersama. (2) Peringatan No messaging platforms enabled muncul karena WHATSAPP_ENABLED belum bernilai true. Setelah pairing dan .env terisi, baris ini hilang.

Verifikasi: log gateway menampilkan platform WhatsApp aktif, bukan peringatan No messaging platforms enabled.

Langkah 6: Uji dari 2 nomor

Kirim 1 pesan dari nomor di allowlist, misalnya "Sebutkan 3 file terbaru di folder laporan". Bot harus membalas dengan indikator tool berjalan, lalu jawaban. Kirim 1 pesan dari nomor di luar allowlist. Bot harus diam (mode ignore) atau mengirim kode pairing (mode pair), bukan menjawab isi.

Terminal menampilkan hermes gateway status dengan pesan Gateway is not running dan 3 perintah untuk memulainya
hermes gateway status pada uji kami sebelum gateway dipasang sebagai layanan. (1) Status not running. (2) 3 cara memulai: run, install, atau install --system. Setelah Langkah 5, baris pertama berubah menjadi running.

Verifikasi: hermes gateway status menampilkan running, dan hermes pairing list menampilkan nomor asing sebagai pending bila mode pair aktif. Pesan yang tidak diterima biasanya karena nomor pada allowlist masih memuat tanda plus atau spasi. Set WHATSAPP_DEBUG=true dan baca bridge.log bila perlu.

Simulasi 1 hari bot WhatsApp di toko bahan bangunan fiktif

Tabel ini simulasi dengan data dummy. Toko Bangun Jaya memakai jalur Baileys dengan nomor bot khusus, allowlist 3 admin, dan unauthorized_dm_behavior: ignore.

WaktuKejadianYang dicatat HermesBalasan
08.05Admin A: "harga semen hari ini dari 3 supplier?"Tool web dan berkas harga dibaca1 tabel 3 baris
08.06Jawaban 5.100 karakterDipotong menjadi 2 pesanPesan 1 dan pesan 2 berurutan
10.30Nomor asing mengirim "halo"Ditolak, mode ignoreTidak ada balasan
13.15Admin B mengirim pesan suara 40 detikDitranskripsi oleh provider STTJawaban teks
15.00Admin A: "hapus folder arsip 2024"approvals smart naik ke prompt manualBot menunggu persetujuan pemilik server
17.45HP bot kehabisan baterai 30 menitBridge mencoba sambung ulangPesan tertunda, sesi tetap

Angka pada tabel ini ilustrasi. Polanya yang perlu ditiru: 1 nomor khusus, 1 allowlist, 1 mode diam, dan 1 orang yang menjawab prompt approvals.

Checklist sebelum bot menerima pesan

  1. Nomor bot bukan nomor pribadi. Pemilik: pemilik bisnis. Bukti: kartu SIM atau akun WhatsApp Business terpisah.
  2. WHATSAPP_ALLOWED_USERS berisi nomor dengan kode negara, tanpa *. Pemilik: pemilik server. Bukti: isi .env tanpa nilai rahasia lain.
  3. Folder sesi ber-permission 700. Pemilik: pemilik server. Bukti: keluaran ls -ld.
  4. unauthorized_dm_behavior diputuskan: ignore untuk nomor privat, pair untuk tim yang bertambah. Pemilik: pemilik proses. Bukti: hermes config get.
  5. Gateway terpasang sebagai layanan dan hidup setelah reboot. Pemilik: pemilik server. Bukti: hermes gateway status.
  6. Uji 2 nomor lulus: allowlist dijawab, nomor asing diam. Pemilik: pemilik proses. Bukti: 2 tangkapan layar chat.
  7. Rencana update bulanan ada, karena protokol WhatsApp Web berubah. Pemilik: pemilik server. Bukti: 1 baris di kalender.
  8. Kriteria berhenti: bila bot melayani pelanggan luar, bukan tim internal, hentikan Baileys dan pindah ke Cloud API.

Posisi: Hermes Baileys, Hermes Cloud API, dan OpenClaw

Tabel ini memakai halaman resmi tiap produk pada 19 September 2026. Rama Digital sendiri menjalankan asisten WhatsApp untuk pelanggan di jalur Cloud API resmi, jadi kami tahu biaya administrasinya nyata.

Hal yang bisa diverifikasiHermes Agent BaileysHermes Agent Cloud APIOpenClaw WhatsApp
Dasar teknisBaileys, meniru WhatsApp WebMeta Cloud API resmiBaileys lewat plugin @openclaw/whatsapp
Cara sambungQR dari wizardWizard meminta Phone Number ID, token, App SecretQR dari openclaw channels login
Akun Meta BusinessTidakWajibTidak
Kebijakan DM bawaanTolak semua tanpa allowlist, opsi pairingSamaPairing untuk pengirim tak dikenal
GrupYaTidak pada v1Ya, dengan groupPolicy allowlist
Risiko blokirAdaTidakAda

Sumber: dokumentasi WhatsApp Hermes, dokumentasi Cloud API Hermes, dan dokumentasi WhatsApp OpenClaw. Rekomendasi Rama Digital: pakai Baileys bila bot hanya dipakai tim internal dengan nomor khusus dan Anda menerima risiko pindai ulang. Pakai Cloud API bila pelanggan luar mengirim pesan, karena reputasi nomor bisnis lebih mahal daripada biaya administrasi Meta.

Pertanyaan yang sering diajukan

Apakah nomor WhatsApp saya bisa diblokir karena Hermes Agent? Dokumentasi Hermes menyebut risiko pembatasan akun pada jalur Baileys karena WhatsApp tidak mendukung bot pihak ketiga di luar Business API. Pakai nomor khusus, jangan kirim pesan massal, dan jangan kirim pesan keluar ke orang yang belum menghubungi bot.

Apakah saya harus memindai QR setiap kali server restart? Tidak. Sesi tersimpan di ~/.hermes/platforms/whatsapp/session dan bertahan setelah restart. Pindai ulang hanya bila sesi putus: HP direset, perangkat dilepas dari Linked Devices, atau protokol WhatsApp berubah.

Bisakah 1 nomor WhatsApp melayani beberapa agent Hermes? Tidak pada bridge Baileys. FAQ resmi menyebut 1 sesi terautentikasi per nomor, jadi tiap profil butuh nomornya sendiri. Solusi lain: 1 profil dengan personality berbeda per chat, atau pakai Telegram yang mendukung beberapa bot token.

Kenapa bot tidak membalas pesan saya? Penyebab paling umum menurut dokumentasi: nomor pada WHATSAPP_ALLOWED_USERS masih memuat tanda plus atau spasi. Perbaiki formatnya, restart gateway, dan baca bridge.log dengan WHATSAPP_DEBUG=true.

Apakah Cloud API bisa mengirim pengingat cron ke pelanggan? Hanya dalam 24 jam sejak pesan terakhir pelanggan. Di luar jendela itu Meta menolak dengan error 131047 dan hanya menerima template. Hermes belum mendukung template per 19 September 2026.

Apakah pesan suara didukung? Ya. Pesan suara masuk ditranskripsi lewat faster-whisper lokal, Groq Whisper, atau OpenAI Whisper sesuai konfigurasi. Jawaban TTS dikirim sebagai lampiran MP3 pada Baileys dan sebagai voice note pada Cloud API bila ffmpeg tersedia.

Langkah berikutnya

Setelah 6 langkah ini, bot menjawab tim Anda dan diam terhadap orang asing. Batas yang tetap berlaku: Baileys bergantung pada protokol WhatsApp Web yang bisa berubah, dan Cloud API bergantung pada aturan template Meta. Bila Anda ingin kami memasang Hermes Agent lengkap dengan gateway WhatsApp, allowlist, approvals, dan SOP di VPS Anda, layanan Jasa Install Hermes Agent menyelesaikannya dalam 2 sampai 5 hari kerja. Bila Anda belum yakin jalur mana yang tepat untuk nomor bisnis Anda, jadwalkan Sesi Scoping Teknis 60 menit dan bawa daftar siapa saja yang akan mengobrol dengan bot.

Sumber