wacrawl
Use wacrawl to snapshot local WhatsApp Desktop data into a separate SQLite archive and search it offline.
When to Use
Use this skill when the user wants to:
- inspect local WhatsApp Desktop history without opening the app
- archive chats into a local SQLite database for repeat queries
- search WhatsApp messages locally with filters
- list chats, recent messages, or archive status from a read-only import
Requirements
- local WhatsApp Desktop data on the same machine
- enough local disk for
~/.wacrawl/wacrawl.db - understand that this is read-only inspection, not message sending
Setup
- Default source:
~/Library/Group Containers/group.net.whatsapp.WhatsApp.shared - Default archive DB:
~/.wacrawl/wacrawl.db - First sanity check:
wacrawl doctor
- First import:
wacrawl import
Common Commands
- Doctor:
wacrawl doctor - Import fresh snapshot:
wacrawl import - Archive status:
wacrawl status - List chats:
wacrawl chats --limit 20 - Recent messages:
wacrawl messages --limit 20 - One chat:
wacrawl messages --chat 1234567890@s.whatsapp.net --limit 50 - Search:
wacrawl search "release notes" - Filtered search:
wacrawl --json search "invoice" --from-them --after 2026-01-01
Notes
wacrawlis read-only and does not send messages.- It copies WhatsApp SQLite files into a temp snapshot before import.
- Use
--sourceto override the WhatsApp Desktop container path. - Use
--dbto archive somewhere other than~/.wacrawl/wacrawl.db.