apx-whatsapp

Manages a paired WhatsApp account with an allowlist roster and sealed replies for non-owner contacts.

6|1|Updated May 8, 2026
One-click install
npx skills add https://github.com/agentprojectcontext/apx --skill apx-whatsapp-agentprojectcontext
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: apx-whatsapp
Source: https://github.com/agentprojectcontext/apx/tree/main/src/core/runtime-skills/apx-whatsapp
Command: npx skills add https://github.com/agentprojectcontext/apx --skill apx-whatsapp-agentprojectcontext

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Running an AI agent on a personal WhatsApp account risks replying to strangers, leaking memory across conversations, or silently ignoring people the owner actually wants answered. This Skill defines exactly who gets answered, with what context, and how messages, menus, media, and repairs are handled. ## Core Features & Use Cases - Three-tier reply policy: the owner gets the full agent turn, rostered contacts get a sealed turn with no tools or memory, and everyone else gets logged silence with a coalesced report to the owner. - Roster management via whatsapp_contacts: list, find, save, and forget contacts with roles, auto-reply mutes, bios, and per-person rules; sending to a new number automatically vouches them in as pending review. - Business menu and media handling: decodes buttons, lists, nativeFlow menus, and polls, answers them by passing an option to send_whatsapp, transcribes voice notes, reads text-like files, and refuses executables and oversized downloads. - Use Case: A client messages the owner's WhatsApp while they are away; the agent answers from a sealed turn using only that conversation, while a stranger's message is logged and reported to the owner without any reply. ## Quick Start Ask the agent to list the current WhatsApp roster and answer any pending contact using the whatsapp_contacts and send_whatsapp tools.

Frequently Asked Questions about apx-whatsapp

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I control who gets answered on WhatsApp by an AI agent?▼

Manage the roster with the whatsapp_contacts tool: save a contact with a role to make them answerable, set auto_reply to false to mute them, or forget them to remove access. Anyone not on the roster receives silence, which is logged and reported to the owner.

How do I reply to WhatsApp business menus and buttons automatically?▼

Pass the option parameter to send_whatsapp with the number, exact title, or id of the choice. APX finds the last menu in that chat from the ledger and sends a real selection; for nativeFlow menus and polls it types the option label instead.

Can the agent send files and voice messages over WhatsApp?▼

Yes, pass an absolute file path as the file parameter to send_whatsapp; documents keep their name and images arrive as pictures. Inbound voice notes are transcribed, text-like files are read into the turn, and executables or files over 25 MB are refused.

Why is a WhatsApp contact not getting any reply?▼

Most often the contact is a guest or stranger on the roster, since only contacts with a role are answered. Also check that auto_reply is enabled, owner_jid is set, and whether a restart interrupted the turn; run apx whatsapp chats to list unanswered conversations.

What happens when a stranger messages the WhatsApp account?▼

Nothing runs for strangers: the message is logged, no reply is sent, and the owner receives a coalesced report every six hours per correspondent. This silence is the designed behavior, and only the owner can add the person to the roster.