MCP HubMCP Hub
SKILL·27BC33

whatsapp

sanjay3290
Mis à jour 5 days ago
347
37
347
Voir sur GitHub
Développementaiapi

À propos

Cette compétence permet d'envoyer et de recevoir des messages WhatsApp via le client Python non officiel pywhats, qui agit comme un appareil compagnon lié, similaire à WhatsApp Web. Elle prend en charge l'appariement par code QR, l'envoi de texte et d'images, les discussions de groupe, et fournit un flux d'événements JSON pour des mises à jour en temps réel. Utilisez-la lorsque vous avez besoin d'automatiser des interactions WhatsApp à partir de scripts Python, et non pour des intégrations officielles avec l'API WhatsApp Business.

Installation rapide

Claude Code

Recommandé
Principal
npx skills add sanjay3290/ai-skills -a claude-code
Commande PluginAlternatif
/plugin add https://github.com/sanjay3290/ai-skills
Git CloneAlternatif
git clone https://github.com/sanjay3290/ai-skills.git ~/.claude/skills/whatsapp

Copiez et collez cette commande dans Claude Code pour installer cette compétence

Documentation

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 pair shows 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[email protected]; groups use [email protected].
  • Events are how you receive. wa.py listen prints 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

scripts/wa.py pair                                          # one-time QR pair
scripts/wa.py send-text 15550001234 "hello"                 # 1:1 text
scripts/wa.py send-image 15550001234 photo.jpg --caption hi # 1:1 image
scripts/wa.py group-info [email protected]            # group metadata JSON
scripts/wa.py group-send [email protected] "hi all"   # group text
scripts/wa.py mark-read 15550001234 MSGID [--sender JID]    # blue ticks
scripts/wa.py presence available                            # global presence
scripts/wa.py typing 15550001234 composing [--media audio]  # typing indicator
scripts/wa.py listen --read --events message,receipt        # JSONL event stream
scripts/wa.py --session work send-text 15550001234 "hi"     # named session
CommandBehavior
pairFresh 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
listenLong-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

$PYWHATS_HOME/                 # default: ~/.pywhats
  venv/                        # managed Python + pywhats
  default.session              # --session default
  default.session.signal.db
  work.session                 # --session work

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.

Dépôt GitHub

sanjay3290/ai-skills
Chemin: skills/whatsapp
0
agent-skillsai-skillsatlassianazure-devopsclaude-codeclaude-skills
FAQ

Frequently asked questions

What is the whatsapp skill?

whatsapp is a Claude Skill by sanjay3290. Skills package instructions and resources that Claude loads on demand, so Claude can perform whatsapp-related tasks without extra prompting.

How do I install whatsapp?

Use the install commands on this page: add whatsapp to Claude Code as a plugin, or clone its repository into your skills directory, then restart Claude so it picks up the skill.

What category does whatsapp belong to?

whatsapp is in the Development category, tagged ai and api.

Is whatsapp free to use?

Yes. whatsapp is listed on AIMCP and free to install. It runs inside Claude, so no separate service account is required to use the skill itself.

Compétences associées

qmd
Développement

qmd est un outil CLI de recherche et d'indexation locale qui permet aux développeurs d'indexer et de rechercher dans des fichiers locaux en utilisant une recherche hybride combinant BM25, des embeddings vectoriels et du reranking. Il prend en charge à la fois une utilisation en ligne de commande et un mode MCP (Model Context Protocol) pour l'intégration avec Claude. L'outil utilise Ollama pour les embeddings et stocke les index localement, ce qui le rend idéal pour rechercher dans de la documentation ou des bases de code directement depuis le terminal.

Voir la compétence
subagent-driven-development
Développement

Cette compétence exécute des plans de mise en œuvre en déployant un nouveau sous-agent pour chaque tâche indépendante, avec une revue de code entre les tâches. Elle permet une itération rapide tout en maintenant des contrôles de qualité grâce à ce processus de revue. Utilisez-la lorsque vous travaillez sur des tâches principalement indépendantes au sein d'une même session pour assurer une progression continue avec des vérifications de qualité intégrées.

Voir la compétence
mcporter
Développement

La compétence mcporter permet aux développeurs de gérer et d'appeler des serveurs Model Context Protocol (MCP) directement depuis Claude. Elle fournit des commandes pour lister les serveurs disponibles, appeler leurs outils avec des arguments, et gérer l'authentification ainsi que le cycle de vie du démon. Utilisez cette compétence pour intégrer et tester les fonctionnalités des serveurs MCP dans votre flux de travail de développement.

Voir la compétence
adk-deployment-specialist
Développement

Cette compétence déploie et orchestre des agents Vertex AI ADK en utilisant le protocole A2A, gérant la découverte d'AgentCard, la soumission de tâches, et prenant en charge des outils tels que le bac à sable d'exécution de code et la banque de mémoire. Elle permet de construire des systèmes multi-agents avec des modèles d'orchestration séquentiels, parallèles ou en boucle en Python, Java ou Go. Utilisez-la lorsqu'on vous demande de déployer des agents ADK ou d'orchestrer des flux de travail d'agents sur Google Cloud.

Voir la compétence