Skip to main content

WhatsApp Personal

This is a shipped plugin-backed bridge surface. Loong owns the stable send and reply-loop contract, while a bundled local bridge owns WhatsApp Web QR login, reconnects, and session persistence.

At A Glance

Minimal Config

First-Time Pairing

Start the bundled bridge in one terminal. On the first run it will install its Node dependencies if needed, print a QR code by default, and keep the personal account session alive. If you cannot scan, the same helper can also request a pairing code fallback for your phone number.
After the QR-linked bridge is live, run the normal Loong reply loop in another terminal:

Smoke Test

Stable Target Contract

Grouped commands also accept the short form <kind>:<id> when one configured account is already selected.

Pairing-Code Fallback

QR remains the primary pairing path. If scanning is not possible, request a pairing code for the phone number that should own the linked personal session:
Notes:
  • The number can be entered in E.164 form or digits only; the helper normalizes it before calling Baileys.
  • Baileys expects the country code to be included.
  • The bridge still prints the QR first, then requests the pairing code fallback a few seconds later.
  • --custom-pairing-code ABCD1234 is available when you need to request one exact 8-character code.

Command Surface

Required Fields For Send

Required Fields For Serve

Operator Notes

  • This surface is for QR-linked personal WhatsApp Web access. Keep it separate from the shipped WhatsApp Cloud API business-account lane.
  • runtime_plugins.roots must include ./runtime-plugins (or another root that contains the whatsapp-personal-baileys-bridge manifest) so loong doctor, loong channels, and grouped send/serve can discover the bundled bridge contract.
  • The bridge binds to 127.0.0.1 only. If you change bridge_url, keep it on a local-only interface.
  • allowed_chat_ids = ["*"] keeps the bridge open to every chat the linked personal account can see. Replace that wildcard with a narrow allowlist once the route ids you care about are stable.
  • The bridge helper owns QR login and session persistence. The grouped channels serve whatsapp-personal loop owns only Loong’s reply-loop runtime.
  • The bundled bridge currently supports text sends and text-first inbound relaying. If you need richer media semantics, add them in the bridge package instead of overloading the existing Cloud API lane.