"Angelic Angel/Hello, Hoshi wo Kazoete" is a single by μ's released on July 1, 2015 from Lantis. The song is an insert song for the film Love Live! The School Idol Movie.
A CLI tool that receives Twitter/X notifications in real time via Mozilla's Web Push infrastructure. Stream tweets from users you follow and have tweet notifications enabled for.
Angelic Angel emulates a browser's Web Push client to receive Twitter/X push notifications. It connects to Mozilla AutoPush via WebSocket, decrypts incoming notifications using ECE (Encrypted Content-Encoding), and forwards the decrypted payloads to a configured webhook endpoint.
You will receive notifications for tweets from users that you follow and have tweet notifications turned on for on Twitter/X.
Twitter/X ──push──▶ Mozilla AutoPush Server ◀──WebSocket── Angelic Angel ──HTTP POST──▶ Webhook
- Angelic Angel registers as a Web Push subscriber with Mozilla's AutoPush server.
- The push subscription endpoint is registered with Twitter's notification settings API.
- When Twitter sends a push notification, it goes through Mozilla's AutoPush server — the same infrastructure used by Firefox.
- Angelic Angel receives and decrypts the notification via WebSocket, then forwards the payload to your webhook.
- Data source: All notification data is received from Mozilla's Web Push server (
push.services.mozilla.com). Angelic Angel does not access Twitter/X directly for notification data. - Minimal API usage: The Twitter/X API is only called during the initial push subscription registration (
registercommand). No API calls are made while listening for notifications. - No scraping: This tool does not perform any web scraping. It uses the standard W3C Push API flow, the same mechanism browsers use to deliver push notifications.
- Rust (edition 2024)
- Twitter/X account credentials (
auth_tokenandct0cookies)
- Open x.com in your web browser and log in.
- Open Developer Tools (F12) and go to the Application (or Storage) tab.
- Under Cookies →
https://x.com, find the values forauth_tokenandct0.
cargo install --path .# Interactive mode
angelic-angel init
# Or with arguments
angelic-angel init --auth-token YOUR_AUTH_TOKEN --ct0 YOUR_CT0This creates angelic-angel.toml with your Twitter credentials.
angelic-angel registerThis registers a new push subscription with Mozilla AutoPush and then registers the endpoint with Twitter's push notification API.
WEBHOOK_ENDPOINT=https://your-webhook.example.com/endpoint angelic-angel listenThe WEBHOOK_ENDPOINT environment variable specifies where decrypted notification payloads are sent via HTTP POST.
# Check current configuration and registration status
angelic-angel status
# Remove push subscription
angelic-angel unregister| Flag | Description |
|---|---|
-c, --config <PATH> |
Configuration file path (default: angelic-angel.toml) |
-v, --verbose |
Enable debug logging |
Angelic Angel implements a Firefox-compatible reconnection strategy:
- Exponential backoff: 5s × 2^n, capped at 5 minutes
- Automatic re-registration on UAID invalidation
- Server backoff (close code 4774): 30-minute delay
- Infinite retries with counter reset on successful connection
MIT