CLI
The HookMyApp CLI is your control plane for WhatsApp and Instagram from the terminal: connect a channel, pull its credentials, stream live webhooks to your laptop, and run a test sandbox, all without leaving your shell.
Building with an AI coding agent? Hand it the agent skills and it can drive every command below for you.
Install
Requires Node.js 18 or newer.
Authenticate
If you are inside an agent that cannot open browser tabs, the CLI prints a URL for you or your operator to open manually.
Workspaces
A workspace is the tenancy boundary for every other command. Pick one before you connect channels.
Manage who has access:
Channels
Connect your own WhatsApp number or Instagram account, then run per-channel operations. Address a channel by its ID (ch_xxxxxxxx from channels list), its phone, or its @handle.
Pull the values your server needs, or check a channel's health:
Receive webhooks
There are two ways to get your own number's inbound messages, depending on where your receiver runs.
For local development, stream webhooks straight to your laptop:
For a deployed receiver, point Meta at your own public URL:
The two are mutually exclusive per channel: setting a URL while channels listen is running reclaims the tunnel.
Read the delivery history:
Sandbox
Test on WhatsApp or Instagram with no Meta setup. See Sandbox for the full flow.
The sandbox webhook URL works like a channel's:
Billing
Config
Persistent CLI settings.
Output formats
Every command takes --json for machine-clean output (notices go to stderr) and --human to force human formatting when stdout is not a TTY. In --json mode, errors use the envelope {"error":{"code":"...","message":"...","status":NNN}}.
Other global flags: --workspace <slug> overrides the active workspace for one command, and --debug logs the HTTP requests the CLI makes.
Help
Next steps
- Sandbox: Start a sandbox session and pull env values.
- Connect WhatsApp: Connect your own WhatsApp number via embedded signup.