Introducing the HookTap CLI: Send iPhone Webhook Notifications from Your Terminal
HookTap CLI
The HookTap CLI brings HookTap directly into your terminal.
With one command, you can send push notifications to your iPhone from local scripts, CI jobs, deploy commands, cron jobs, monitoring checks, and automation workflows.
If something happens in your terminal, HookTap can notify you when it matters.
Install the CLI
macOS and Linux
Install HookTap using the curl installer:
curl -fsSL https://hooktap.me/install.sh | sh
macOS (Homebrew)
brew install HookTap/tap/hooktap
Windows (Scoop)
scoop bucket add hooktap https://github.com/HookTap/scoop-bucket
scoop install hooktap
Pair it with your iPhone
The easiest way to connect the CLI is through the HookTap iPhone app.
Open the CLI pairing screen in the app, generate a one-time code, then run:
hooktap setup --code 123456
The CLI stores your webhook profile and sends a test event so you can confirm everything is working.
You can also configure it manually:
hooktap setup
or:
hooktap config set hook_id YOUR_HOOK_ID
Send your first notification
Once setup is complete, sending an event is simple:
hooktap send "Build finished"
Add more context with a body:
hooktap send "Deploy complete" --body "Staging is live"
Choose how HookTap should handle the event:
hooktap send "Nightly report ready" --type feed
hooktap send "Widget updated" --type widget
The default type is push, which sends an iPhone push notification.
Pipe command output to your phone
The CLI works well with Unix pipes.
For example, send deployment output as the notification body:
make deploy | hooktap send "Deploy finished"
Or send a report:
cat report.txt | hooktap send "Nightly report"
This makes HookTap useful for long-running commands, background scripts, and local development workflows.
Get notified when commands finish
The watch command runs another command and sends a notification when it exits.
hooktap watch -- npm run build
Use a custom title:
hooktap watch --title "Production deploy" -- make deploy
The wrapped command streams output normally, and hooktap watch exits with the same exit code as the command it ran.
That means you can use it without breaking scripts or CI behavior.
Send raw JSON payloads
If your webhook uses field mapping, you can send complete JSON payloads directly.
generate-payload.sh | hooktap send --raw
HookTap receives the JSON as-is and applies the mapping configured in the app.
This is useful when testing payloads from services like GitHub, Stripe, Vercel, Zapier, Make, n8n, or custom internal tools.
Use named profiles
If you work with multiple webhooks, profiles keep them separate.
hooktap config set hook_id abc123 --profile ci
hooktap config set type feed --profile ci
hooktap config use ci
hooktap config list
Profiles are useful for separating personal alerts, CI notifications, production deploys, staging deploys, and team workflows.
Open the terminal UI
The CLI also includes an interactive terminal UI:
hooktap
or:
hooktap tui
From the terminal UI, you can compose events, inspect profiles, copy snippets, and run basic diagnostics.
Check service health
Use ping to check whether the HookTap service is reachable:
hooktap ping
This is useful for debugging local setup or verifying connectivity from a machine.
Built for developer workflows
The HookTap CLI is designed to behave like a normal command-line tool.
It supports:
- stdin
- profiles
- raw JSON
- machine-readable output
- shell completions
- meaningful exit codes
- simple setup
Use it for:
- Local builds
- Deployments
- CI jobs
- Cron jobs
- Monitoring checks
- Automation scripts
- JSON payload testing
- Personal developer notifications
HookTap already turns webhooks into iPhone notifications. The CLI makes that available everywhere your terminal can run.