| extensions | ||
| .gitignore | ||
| CHANGELOG.md | ||
| LICENSE | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
PI-WhatsApp
Extensión/paquete para Pi Agent que añade herramientas de WhatsApp usando Baileys como dispositivo vinculado de WhatsApp Web.
Aviso: esto no es la API oficial de Meta/WhatsApp. Úsalo para uso personal o pruebas internas. WhatsApp puede bloquear sesiones/números por automatización abusiva. No lo uses para spam.
Qué hace
- Vincula tu WhatsApp con QR o pairing code.
- Guarda localmente chats/mensajes que llegan por sync o mientras Pi está conectado.
- Permite al agente buscar personas/chats con fuzzy search, guardar y borrar alias decididos por la IA en cualquier idioma, listar chats compactos, leer grupos con nombres de participantes, leer los últimos 50 mensajes por defecto, buscar mensajes, analizar tu estilo con mensajes enviados por ti y enviar texto.
- Permite enviar texto desde el agente sin confirmación interactiva.
Instalar dependencias
cd PI-WhatsApp
npm install
npm run typecheck
Cargar en Pi
Prueba temporal:
pi -e ./PI-WhatsApp
O instálala como paquete local:
pi install ./PI-WhatsApp
pi
También puedes copiarla a .pi/extensions/ o ~/.pi/agent/extensions/, pero al tener dependencias npm es más cómodo cargarla como paquete/directorio.
Primer login
- Arranca Pi con la extensión.
- Si este Pi todavía no está vinculado, WhatsApp no inicia login automáticamente.
- Ejecuta
/whatsapp-loginpara empezar el login. - La extensión mostrará un QR de texto directamente en el chat de Pi como mensaje morado de extensión.
- En el móvil: WhatsApp > Dispositivos vinculados > Vincular dispositivo.
- Escanea el QR mostrado en Pi.
Después de vincularlo una vez, Pi sí puede iniciar WhatsApp automáticamente al arrancar usando las credenciales guardadas.
Alternativa: el agente puede llamar whatsapp_session con action="pairingCode" y tu número internacional sin +.
Comandos
/whatsapp-logininicia el login y muestra un QR nuevo en el chat como mensaje de extensión./whatsapp-statusmuestra estado, si está vinculado, y número de chats/mensajes guardados./whatsapp-logoutcierra la sesión y elimina las credenciales locales guardadas.
Herramientas registradas
La extensión expone 5 herramientas compactas sin perder funciones:
whatsapp_session—action=status|qr|pairingCode|checkNumber.whatsapp_find_chats— busca chats o lista recientes si no pasasquery.whatsapp_messages—action=read|search|style|unread.whatsapp_alias—action=remember|forget.whatsapp_send_message— envío de texto sin confirmación interactiva.
Datos locales
Por defecto guarda credenciales y caché en:
~/.pi/agent/pi-whatsapp/
Los alias se guardan separados y minimalistas en:
~/.pi/agent/pi-whatsapp/aliases.json
Ejemplo:
{
"version": 1,
"aliases": {
"34660220960@s.whatsapp.net": ["roger valles", "parguelini"]
}
}
Configuración:
Edita ~/.pi/agent/pi-whatsapp/config.json. Environment overrides are not supported in this development version.
Notas
La lectura de conversaciones depende de lo que WhatsApp Web entregue a Baileys: historial inicial, mensajes recibidos y mensajes enviados mientras la extensión esté conectada. No es un volcado completo garantizado de todo tu móvil.