Use this guide when you want DeepScientist to continue a quest through WhatsApp.
The current open-source runtime prefers the local-session path for WhatsApp:
- no public webhook is required for the recommended path
- the local auth/session state stays on your machine
- direct messages can auto-bind to the latest active quest when enabled
DeepScientist currently supports WhatsApp through:
WhatsAppLocalSessionServicefor local session sync and inbound ingestionGenericRelayChannelfor bindings, inbox/outbox, targets, and runtime statusWhatsAppConnectorBridgefor outbound delivery
For the recommended path, outbound delivery is queued into the local-session outbox and handled by the local sidecar/session runtime.
- Open
Settings > Connectors > WhatsApp. - Enable WhatsApp.
- Keep
transport: local_session. - Keep or choose a writable
session_dir. - Save the connector.
- Complete the local login flow for the WhatsApp session.
- Send one real message from WhatsApp.
- Return to DeepScientist and verify that the target conversation has been discovered.
Main fields:
enabledtransportbot_nameauth_methodsession_dircommand_prefixdm_policyallow_fromgroup_policygroup_allow_fromgroupsauto_bind_dm_to_active_quest
For the full field reference, see 01 Settings Reference.
WhatsApp conversations are normalized into quest-aware connector ids like:
whatsapp:direct:<jid>whatsapp:group:<jid>
DeepScientist binds quests to those normalized conversation ids instead of transient browser/session state.
Important rules:
- one quest keeps local access plus at most one external connector target
- direct messages can auto-follow the latest active quest when auto-bind is enabled
- bindings can be changed later from the project settings page
The current open-source path is local-session oriented:
- runtime status is mirrored into DeepScientist under connector logs
- inbound messages are drained from the local session inbox
- outbound messages are queued into the local session outbox
This keeps the recommended WhatsApp path local-first.
By default:
- direct messages can pair with the active quest
- group behavior depends on
group_policy - group allowlists can be enforced through
groupsandgroup_allow_from
WhatsApp may be hidden by the system connector gate. Confirm that:
config.connectors.system_enabled.whatsappistrue
Check that:
transportislocal_sessionsession_dirpoints to a writable path
Check that:
- the local login/session flow has completed
- at least one real inbound message has reached the local session inbox
Check that:
- the conversation is bound to the intended quest
- or
auto_bind_dm_to_active_questis enabled for direct-message pairing
Check that:
- the local-session sidecar or local session processor is running
- the local session outbox is being drained
- the target JID is correct