vielhuber / wahelper
Lightweight whatsapp integration layer.
1.5.6
2026-04-01 09:19 UTC
Requires
- php: >=8.1
- monolog/monolog: ^3.9
- php-mcp/server: ^3.3
- dev-main
- 1.5.6
- 1.5.5
- 1.5.4
- 1.5.3
- 1.5.2
- 1.5.1
- 1.5.0
- 1.4.9
- 1.4.8
- 1.4.7
- 1.4.6
- 1.4.5
- 1.4.4
- 1.4.3
- 1.4.2
- 1.4.1
- 1.4.0
- 1.3.9
- 1.3.8
- 1.3.7
- 1.3.6
- 1.3.5
- 1.3.4
- 1.3.3
- 1.3.2
- 1.3.1
- 1.3.0
- 1.2.9
- 1.2.8
- 1.2.7
- 1.2.6
- 1.2.5
- 1.2.4
- 1.2.3
- 1.2.2
- 1.2.1
- 1.2.0
- 1.1.9
- 1.1.8
- 1.1.7
- 1.1.6
- 1.1.5
- 1.1.4
- 1.1.3
- 1.1.2
- 1.1.1
- 1.1.0
- 1.0.9
- 1.0.8
- 1.0.7
This package is auto-updated.
Last update: 2026-04-01 09:20:11 UTC
README
🍸 wahelper 🍸
wahelper is a lightweight whatsapp integration layer built on top of baileys that provides a simple cli, php wrapper, and mcp server for fetching messages, sending direct and group messages, and wiring whatsapp into existing tooling (wordpress, node, mcp clients) without having to deal with the full session lifecycle yourself.
requirements
- node >= 22
- php >= 8.1
installation
js
npm install @vielhuber/wahelper
php
composer require vielhuber/wahelper
.gitignore
/whatsapp_data/
usage
start daemon
npx wahelper-daemon --device "xxxxxxxxxxxx"
cli
npx wahelper \
--device "xxxxxxxxxxxx" \
...
# fetch messages
--action "fetch_messages" \
--limit 42
# send message to user
--action "send_user" \
--number "xxxxxxxxxxxx" \
--message "This is a test! 🚀"
--attachments "/full/path/to/file.pdf,/full/path/to/image.png"
# send message to group
--action "send_group" \
--name "Group name" \
--message "This is a test! 🚀"
--attachments "/full/path/to/file.pdf,/full/path/to/image.png"
php
require_once __DIR__ . '/vendor/autoload.php'; use vielhuber\wahelper\wahelper; $wahelper = new wahelper(); // fetch messages $wahelper->fetchMessages(device: 'xxxxxxxxxxxx', limit: 42); // send message to user $wahelper->sendUser( device: 'xxxxxxxxxxxx', number: 'xxxxxxxxxxxx', message: 'This is a test! 🚀', attachments: ['/full/path/to/file.pdf', '/full/path/to/image.png'] ); // send message to group $wahelper->sendGroup( device: 'xxxxxxxxxxxx', name: 'Group name', message: 'This is a test! 🚀', attachments: ['/full/path/to/file.pdf', '/full/path/to/image.png'] );
mcp
{
"mcpServers": {
"whatsapp": {
"command": "/usr/bin/php8.1",
"args": ["/var/www/wahelper/vendor/bin/mcp-server.php"]
}
}
}
daemon
# install pm2 npm install -g pm2 # start daemon (linux) pm2 start npx --name wahelper-xxxxxxxxxxxx --cwd /var/www/wahelper -- wahelper-daemon --device xxxxxxxxxxxx # start daemon (windows) pm2 start node --name wahelper-xxxxxxxxxxxx --cwd "C:\path\to\project" -- node_modules/@vielhuber/wahelper/wahelper-daemon.js --device xxxxxxxxxxxx ## autostart (linux) pm2 save pm2 startup ## autostart (windows) pm2 save Windows Task Scheduler > Create Task > Triggers: At startup → Actions: Start a program → Program: "C:\Users\<user>\AppData\Roaming\npm\pm2.cmd", Arguments: "resurrect" # more commands pm2 unstartup # remove autostart pm2 status # show status of all processes pm2 resurrect # restore saved process list pm2 save # save current process list for resurrect pm2 start wahelper-xxxxxxxxxxxx # start a stopped process pm2 stop wahelper-xxxxxxxxxxxx # stop a running process pm2 restart wahelper-xxxxxxxxxxxx # restart a process pm2 logs wahelper-xxxxxxxxxxxx # tail live logs pm2 delete wahelper-xxxxxxxxxxxx # remove process