Enter your API key to access the control panel
Find your API key in the .env file
Click "Connect" to generate a QR code
Connected
curl -H "X-API-Key: YOUR_KEY" \
http://localhost:8000/api/v1/messages/send \
-d '{"phone":"989...", "message":"Hello!"}'
Pick a chat on the left to view the conversation.
Bring old conversations into the message store so they show up in history, search, and the assistant's context. Supported files (auto-detected):
.txt file, or the .zip it comes in (Chat > ⋮ > More > Export chat)msgstore.db, an iOS ChatStorage.sqlite, or a .zip bundling many exported chats.zip with the DB plus the actual media files (build it with scripts/export_ios_backup_bundle.py); photos, voice notes, stickers and documents are imported with thumbnails
Encrypted .crypt14/.crypt15 files must be decrypted with your
64-digit backup key first (e.g. with wa-crypt-tools).
Re-uploading the same backup is safe — duplicates are skipped.
Auto-replies fire on incoming 1-on-1 chats. Group messages are ignored.
Rules are evaluated by priority (lowest first). The first match wins.
Per-contact context fed into the LLM. Use this to make replies sound right for specific people.
The scheduler fires every 20 seconds. During quiet hours, sends defer until the window closes.
Curate the contacts the assistant (Manus / LLM) may send WhatsApp messages to. Turn the master switch off to allow sending to anyone.
Point Manus / your agent at one of these endpoints at session start so it knows the send policy and the curated contacts.
GET /api/v1/instructions # full bootstrap (includes allow-list)
GET /api/v1/permissions/instructions # allow-list policy only
Header: X-API-Key: YOUR_KEY
Change provider/model/key in .env and restart. Supported: openai, anthropic.
Configure an MCP server or use the HTTP API directly.
# Manus reading chats
GET /api/v1/messages/chats
Header: X-API-Key: your_api_key
# Manus searching messages
POST /api/v1/messages/search
Body: {"query": "date with Masoud", "contact": "Masoud Nayebi"}
# Manus replying as assistant
POST /api/v1/assistant/reply-as-assistant
Body: {"phone": "989...", "message": "Hi, Alireza will contact you soon."}