
whatsapp-skill
Send and receive WhatsApp messages. Use when the user asks to send WhatsApp messages, check WhatsApp chats, search messages, or manage WhatsApp contacts. Supports multiple accounts via sessions.
- Installs
- 96
- Last 24h
- —
- Trending rank
- —
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/idanbeck/claude-skills --skill whatsapp-skill- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads whatsapp-skill automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
WhatsApp Skill - Messaging Automation
Send messages, read chats, and search WhatsApp via WhatsApp Web automation.
CRITICAL: Message Confirmation Required
Before sending ANY WhatsApp message, you MUST get explicit user confirmation.
When the user asks to send a message:
- First, show them the complete message details:
- Recipient (phone number or group)
- Full message text
- Session being used
- Ask: "Do you want me to send this WhatsApp message?"
- ONLY run the send command AFTER the user explicitly confirms
- NEVER send without confirmation
First-Time Setup
cd ~/.claude/skills/whatsapp-skill
npm install
This installs:
whatsapp-web.js- WhatsApp Web automationqrcode-terminal- QR code display for authentication
Authentication
First time requires scanning a QR code with your phone:
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js auth
- QR code appears in terminal
- Open WhatsApp on your phone
- Go to Settings → Linked Devices → Link a Device
- Scan the QR code
- Session is saved for future use
Commands
Authentication & Status
# Authenticate (scan QR)
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js auth [--session NAME]
# Check status
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js status [--session NAME]
# Logout
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js logout [--session NAME]
Sending Messages (Requires Confirmation)
# Send to phone number (include country code, no + or spaces)
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js send 14155551234 "Hello!" [--session NAME]
# Send to group
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js send-group GROUP_ID "Hello group!" [--session NAME]
Reading Chats & Messages
# List recent chats
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js chats [--limit N] [--session NAME]
# Get messages from a chat
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js messages CHAT_ID [--limit N] [--session NAME]
# Search messages
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js search "query" [--session NAME]
Contacts & Groups
# List contacts
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js contacts [--session NAME]
# List groups
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js groups [--session NAME]
Multi-Account Support
Use --session flag for different WhatsApp accounts:
# Personal account
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js auth --session personal
# Work account
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js auth --session work
# Send from specific account
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js send 14155551234 "Hi" --session work
Sessions stored in ~/.claude/skills/whatsapp-skill/sessions/
Phone Number Format
Always use full international format without + or spaces:
- US:
14155551234(1 = country code) - UK:
447911123456(44 = country code) - India:
919876543210(91 = country code)
Chat IDs
Chat IDs are returned by the chats command:
- Individual chats:
14155551234@c.us - Group chats:
120363123456789012@g.us
Examples
Send a Quick Message
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js send 14155551234 "Meeting at 3pm today?"
Check Recent Chats
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js chats --limit 5
Read Messages from a Contact
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js messages 14155551234@c.us --limit 10
Search for Something
node ~/.claude/skills/whatsapp-skill/whatsapp_skill.js search "meeting agenda"
Output
All commands output JSON for easy parsing.
Requirements
- Node.js 16+
- npm
- Chrome/Chromium (installed automatically by puppeteer)
Important Notes
- One phone per session: Each WhatsApp account can only be linked to one session at a time
- Stay connected: WhatsApp may disconnect if your phone loses internet for extended periods
- Rate limits: Don't spam - WhatsApp can ban accounts for suspicious activity
- Business accounts: Works with both personal and WhatsApp Business accounts
Security Notes
- Message confirmation required - Claude must confirm before sending any message
- Session data stored in
~/.claude/skills/whatsapp-skill/sessions/ - Sessions contain authentication data - keep secure
- Logout removes session data from your computer (but device stays linked in WhatsApp until you unlink)
Troubleshooting
QR code not appearing?
- Make sure puppeteer dependencies are installed:
npx puppeteer browsers install chrome
Authentication keeps failing?
- Delete session folder and re-authenticate
- Make sure your phone has internet connection
Messages not sending?
- Verify phone number format (country code, no spaces/dashes)
- Check if contact has blocked you
- Verify WhatsApp is still connected on your phone
FAQ
What does the whatsapp-skill skill do?
Send and receive WhatsApp messages. Use when the user asks to send WhatsApp messages, check WhatsApp chats, search messages, or manage WhatsApp contacts. Supports multiple accounts via sessions.
How do I install whatsapp-skill?
Run npx skills add https://github.com/idanbeck/claude-skills --skill whatsapp-skill in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/whatsapp-skill/ (personal) or .claude/skills/whatsapp-skill/ (project).
Which AI agents can use whatsapp-skill?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is whatsapp-skill safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains whatsapp-skill?
It is published by idanbeck in idanbeck/claude-skills. It has 96 recorded installs.
More from idanbeck/claude-skills
gmail-skill
idanbeck/claude-skills
Read, search, send, and draft Gmail emails and Google contacts. Use when the user asks to check email, find emails, search messages, send emails, create drafts, look up contacts, or find someone's email/phone. Supports multiple accounts.
fal-music
idanbeck/claude-skills
Open the skill to read its SKILL.md instructions.
Popular other skills
hyperframes-cli
heygen-com/hyperframes
The HyperFrames CLI by job - scaffold, check, look at frames, edit the timeline, preview, render locally or in the cloud, publish, project history - plus reading its JSON and recovering from build or render failures.
triage
mattpocock/skills
Move issues and external PRs through a state machine of triage roles, categorise, verify, grill if needed, and write agent-ready briefs.
ask-matt
mattpocock/skills
Ask which skill or flow fits your situation. A router over the skills in this repo.
to-questionnaire
mattpocock/skills
Turn a decision you can't fully answer into a questionnaire for someone else to fill in.
loop-me
mattpocock/skills
Grill me about specs for the workflows I want to build, within this workspace.