Documentation Index Fetch the complete documentation index at: https://mintlify.com/slopus/happy/llms.txt
Use this file to discover all available pages before exploring further.
The happy notify command sends push notifications to all your registered mobile devices from the command line.
Syntax
happy notify -p < messag e > [-t < titl e > ]
Options
Notification message text (required) The main content of the notification that will be displayed on your mobile device.
Notification title (optional) Custom title for the notification. Defaults to “Happy” if not specified.
Description
The notify command lets you send push notifications from your terminal to your mobile devices. This is useful for:
Long-running task completion alerts
Build status notifications
Deployment confirmations
System monitoring alerts
Custom automation notifications
You must be authenticated with happy auth login before using notify. Notifications are sent to all devices registered to your Happy account.
Examples
Basic Notification
happy notify -p "Deployment complete!"
Output:
📱 Sending push notification...
✓ Push notification sent successfully!
Title: Happy
Message: Deployment complete!
Check your mobile device for the notification.
Your phone receives:
┌────────────────────────┐
│ Happy │
│ Deployment complete! │
└────────────────────────┘
Notification with Custom Title
happy notify -p "Database connection restored" -t "Server Status"
Output:
📱 Sending push notification...
✓ Push notification sent successfully!
Title: Server Status
Message: Database connection restored
Check your mobile device for the notification.
Your phone receives:
┌──────────────────────────────┐
│ Server Status │
│ Database connection restored │
└──────────────────────────────┘
Build Completion Alert
npm run build && happy notify -p "Build completed successfully" -t "CI/CD"
Sends a notification only if the build succeeds.
Test Failure Alert
npm test || happy notify -p "Tests failed! Check CI logs" -t "⚠️ Test Suite"
Sends a notification if tests fail.
Long-Running Task
./long-running-script.sh
happy notify -p "Script execution finished"
Get notified when a long-running task completes.
Deployment Pipeline
./deploy.sh && happy notify -p "Deployment to production succeeded" -t "✅ Deploy"
Database Backup
pg_dump mydb > backup.sql
happy notify -p "Database backup completed" -t "Backup"
System Monitoring
# In a monitoring script
if [ $( df -h / | tail -1 | awk '{print $5}' | sed 's/%//' ) -gt 90 ]; then
happy notify -p "Disk usage above 90%" -t "⚠️ System Alert"
fi
Use in Scripts
Bash Script
#!/bin/bash
# Deploy script with notifications
echo "Starting deployment..."
if ./deploy.sh ; then
happy notify -p "Deployment completed successfully" -t "Deploy"
echo "Notification sent"
else
happy notify -p "Deployment failed with errors" -t "🚨 Deploy"
echo "Error notification sent"
exit 1
fi
Makefile
.PHONY : build notify-build
build :
@ echo "Building application..."
@ npm run build
@ $( MAKE ) notify-build
notify-build :
@ happy notify -p "Build completed" -t "Build System"
GitHub Actions
name : CI/CD
on : [ push ]
jobs :
build :
runs-on : ubuntu-latest
steps :
- uses : actions/checkout@v2
- name : Build
run : npm run build
- name : Notify
if : always()
run : |
if [ ${{ job.status }} == 'success' ]; then
happy notify -p "Build succeeded on ${{ github.ref }}" -t "CI"
else
happy notify -p "Build failed on ${{ github.ref }}" -t "🚨 CI"
fi
Notifications include metadata:
{
title : "Custom Title" || "Happy" ,
message : "Your message" ,
data : {
source : "cli" ,
timestamp : 1705317000000 ,
sessionId : "abc-123" // if sent from session
}
}
The mobile app can use this metadata to:
Show notification time
Link to related sessions
Filter by source
Output
Success output:
📱 Sending push notification...
✓ Push notification sent successfully!
Title: Happy
Message: Your message here
Check your mobile device for the notification.
Error output:
✗ Failed to send push notification
Error: Not authenticated. Please run "happy auth login" first.
Troubleshooting
Not Authenticated
If you see “Not authenticated”:
Authenticate with Happy before sending notifications.
No Message Provided
If you forget the -p flag:
Output:
Error: Message is required. Use -p "your message" to specify the notification text.
Run "happy notify --help" for usage information.
Solution:
happy notify -p "Your message"
Notification Not Received
If notification doesn’t appear on your phone:
Check authentication :
Check mobile app :
Ensure Happy mobile app is installed
Check notification permissions
Verify you’re logged in
Check notification settings :
Open mobile app → Settings → Notifications
Ensure notifications are enabled
Test notification :
happy notify -p "Test notification" -t "Test"
Multiple Devices
Notifications are sent to all registered devices:
iPhone
iPad
Android phone
Any other registered devices
To see registered devices:
Open Happy mobile app
Go to Settings → Devices
View all registered machines
Rate Limiting
If sending many notifications rapidly:
There may be rate limits (implementation-dependent)
Space out notifications in loops
Consider batching updates
Best Practices
Message Content
Good - Clear and Actionable
Bad - Vague
happy notify -p "Backup completed: 2.5GB" -t "Backup"
Title Usage
Good - Descriptive Title
Good - Emoji for Quick Recognition
happy notify -p "All 127 tests passed" -t "Test Suite"
Error Notifications
# Include context in error notifications
happy notify -p "API deploy failed at v1.2.3" -t "🚨 Production"
Success Notifications
# Include relevant details
happy notify -p "Deployed v1.2.3 to production in 3m 42s" -t "✅ Deploy"
Advanced Usage
Conditional Notifications
# Only notify on errors
command 2>&1 | tee /tmp/output.log
if grep -q ERROR /tmp/output.log ; then
happy notify -p "Errors detected in command output" -t "Alert"
fi
Threshold Alerts
# Alert when CPU usage is high
CPU = $( top -l 1 | grep "CPU usage" | awk '{print $3}' | sed 's/%//' )
if (( $( echo " $CPU > 80" | bc - l ) )); then
happy notify -p "CPU usage at ${ CPU }%" -t "System"
fi
Scheduled Notifications
# Add to crontab for daily reports
0 9 * * * /path/to/generate-report.sh && happy notify -p "Daily report ready" -t "Reports"
Parallel Tasks
# Notify when all parallel tasks complete
task1 & task2 & task3 &
wait
happy notify -p "All tasks completed" -t "Tasks"
Environment Variables
Override Happy server URL for notifications HAPPY_SERVER_URL = http://localhost:3005 happy notify -p "Test"
happy auth - Required for authentication
happy - Sessions automatically send notifications
happy doctor - Troubleshoot notification issues
Notifications are sent asynchronously. The command returns immediately after queuing the notification, not after delivery to devices.