sanjay3290/ai-skills/whatsapp
Claude Code and agent skill by sanjay3290/ai-skills
- community
Checking that the SKILL.md file is still in the repository.
Send and receive WhatsApp messages via the unofficial linked-device client pywhats (pip install pywhats) — pair with QR, send text/images, group chat, read receipts, presence/typing, and a long-running JSON event stream. Use when the user wants to script WhatsApp as a linked companion device (like WhatsApp Web), pair a device, send a WhatsApp from Python, or listen for inbound messages. Triggers: 'whatsapp', 'send whatsapp', 'pair whatsapp', 'pywhats', 'linked device', 'whatsapp web client'. NOT the official WhatsApp Business/Cloud API.
Install
npx vskill@latest install sanjay3290/ai-skills/whatsappSKILL.md
WhatsApp (pywhats)
Drive a WhatsApp account as a linked companion device (like WhatsApp Web) from async Python via `pywhats` (pre-alpha, text/image only). This is an unofficial multi-device client — not the official WhatsApp Business / Cloud API.
CLI entrypoint: scripts/wa.py (auto-bootstraps a managed venv on first run).
Mental model
- Pairing = one-time QR scan.
wa.py pairshows an ASCII QR; scan it in
WhatsApp → Linked Devices. Credentials persist to $PYWHATS_HOME/<session>.session (+ .signal.db).
- Resuming = silent. Later commands reconnect with the same session — no QR.
- JIDs address chats. Bare phone
15550001234→15550001234@s.whatsapp.net;
groups use ...@g.us.
- Events are how you receive.
wa.py listenprints one JSON object per event.
⚠️ Never bare-await Client calls inside a handler
Event handlers run inline on the receive loop. Awaiting send_*, mark_read, get_group_info, download_media, etc. inside a handler deadlocks the connection. Always asyncio.create_task(...). The listen subcommand already does this for --read.
Commands
| Command | Behavior | ||
|---|---|---|---|
pair | Fresh link via ASCII QR; idempotent if already paired | ||
send-text <to> <text> | Send 1:1 text; print message id | ||
send-image <to> <path> [--caption C] | Send image (jpg/png/webp, ≤16MB); print id | ||
group-info <gid> | Print group JSON (subject, owner, participants, …) | ||
group-send <gid> <text> | Resolve members then send group text; print id | ||
mark-read <chat> <ids...> | Blue-tick; --sender for groups | ||
| `presence <available\ | unavailable>` | Global presence | |
| `typing <to> <composing\ | paused>` | Chat presence; optional --media audio | |
listen | Long-running JSON lines; --read, --events, --subscribe JID (required for presence events) |
Global: --session NAME (default default, or env PYWHATS_SESSION) — goes before the subcommand: wa.py --session work pair.
Sessions / multi-account
Override home with PYWHATS_HOME. Unpaired / logged-out sessions print a clear message to re-run wa.py --session <name> pair.
If pair reports the device was logged out right after scanning, that is WhatsApp device-churn reaping, not a failure of the skill — the dead session is deleted automatically; follow the recovery steps it prints (remove linked devices, wait 15–20 min, pair once).
Full reference
references/api.md — every Client method, every event payload, JID construction, and the download_media note.
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/whatsapp/SKILL.md
Popularity
- Repository stars
- 426
- Repository forks
- 45
- 7-day trend score
- 30
Stars and forks are for the whole GitHub repository, not this skill alone. Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/sanjay3290/ai-skills/whatsapp)