GitHunt
UL

X Activity Notifier (Alerts + Reply Drafts)

X Activity Notifier watches selected X accounts and sends instant notifications when they post new content, so you never miss time-sensitive updates. It can also prepare photo+caption reply drafts from a batch you provide, keeping engagement fast while staying human-approved.

Appilot Banner

Telegram Gmail Website Appilot Discord

Created by Appilot, built to showcase our approach to Automation!
If you are looking for custom , you've just found your team β€” Let’s Chat.πŸ‘† πŸ‘†

Introduction

This project monitors activity from a list of target X accounts and triggers notifications to your preferred channels (Telegram, Discord, Slack, email, or webhook).
It solves the β€œmissed moment” problem by detecting new posts quickly, then optionally generating ready-to-send reply drafts (including media + captions) from your preloaded batch.

Real-Time Monitoring & Assisted Engagement

  • Tracks new posts from specific accounts you care about
  • Sends notifications with post link, author, and excerpt
  • Prepares reply drafts using your caption library and image batch
  • Enforces rate limits and deduplication to avoid noisy alerts
  • Keeps posting actions manual/approved by default

Features

Feature Description
Account watchlist Monitor a configurable list of X accounts
Near real-time alerts Trigger notifications when a new post is detected
Multi-channel notifications Send alerts to Telegram/Discord/Slack/email/webhook
Draft reply generator Suggest captions and attach images from your batch for quick replies
Deduplication Prevent duplicate alerts for the same post
Audit logging Record detections, notifications, and draft suggestions

What Data This Scraper Extracts

Field Name Field Description
author_handle Handle of the monitored account
tweet_id ID of the detected post
tweet_url Direct link to the post
created_at Timestamp of the post
detected_at Timestamp when the system detected it
notification_targets Channels/users that received the alert
draft_caption Suggested caption selected/generated from your batch
draft_image_path Local/hosted path for the suggested image
status detected, notified, draft_generated

Example Output

[
    {
        "author_handle": "target_account",
        "tweet_id": "1899988776655443322",
        "tweet_url": "https://x.com/target_account/status/1899988776655443322",
        "created_at": "2025-12-18T08:21:10Z",
        "detected_at": "2025-12-18T08:21:18Z",
        "notification_targets": ["telegram:my_channel", "discord:#alerts"],
        "draft_caption": "Big moment πŸ”₯ Here’s the highlight β€” what do you think?",
        "draft_image_path": "batches/images/img_014.jpg",
        "status": "draft_generated"
    }
]

Directory Structure Tree

X Activity Notifier/
β”œβ”€β”€ src/
β”‚   β”œβ”€β”€ main.py
β”‚   β”œβ”€β”€ watchers/
β”‚   β”‚   β”œβ”€β”€ timeline_watcher.py
β”‚   β”‚   β”œβ”€β”€ dedupe_store.py
β”‚   β”‚   └── rate_limiter.py
β”‚   β”œβ”€β”€ notifiers/
β”‚   β”‚   β”œβ”€β”€ telegram_notifier.py
β”‚   β”‚   β”œβ”€β”€ discord_notifier.py
β”‚   β”‚   β”œβ”€β”€ slack_notifier.py
β”‚   β”‚   └── webhook_notifier.py
β”‚   β”œβ”€β”€ drafts/
β”‚   β”‚   β”œβ”€β”€ caption_pool.py
β”‚   β”‚   β”œβ”€β”€ image_picker.py
β”‚   β”‚   └── draft_builder.py
β”‚   β”œβ”€β”€ storage/
β”‚   β”‚   β”œβ”€β”€ sqlite_store.py
β”‚   β”‚   └── models.py
β”‚   └── utils/
β”‚       β”œβ”€β”€ time.py
β”‚       └── logging.py
β”œβ”€β”€ batches/
β”‚   β”œβ”€β”€ captions/
β”‚   β”‚   └── captions.sample.txt
β”‚   └── images/
β”‚       β”œβ”€β”€ img_001.jpg
β”‚       └── img_014.jpg
β”œβ”€β”€ config/
β”‚   β”œβ”€β”€ settings.example.json
β”‚   └── watchlist.example.json
β”œβ”€β”€ data/
β”‚   β”œβ”€β”€ logs/
β”‚   β”‚   └── app.log
β”‚   └── state/
β”‚       └── dedupe.sqlite
β”œβ”€β”€ requirements.txt
└── README.md

Use Cases

  • Traders use it to get alerts from specific accounts, so they can react quickly to market-moving posts.
  • Community managers use it to monitor partner accounts, so they can engage at the right moment.
  • Brands use it to track competitor announcements, so they can respond with prepared content faster.
  • Content teams use it to generate reply drafts, so approvals and posting are quick and consistent.
  • Operators use it to route alerts to multiple channels, so teams stay aligned in real time.

FAQs

Can this automatically comment with a photo and caption?
This repository is designed to generate reply drafts and notify you instantly. Automated commenting is intentionally not enabled by default because it can create policy and account-risk issues; the safer workflow is human approval + one-click posting.

How fast are notifications?
With short polling intervals and deduplication, alerts can arrive within seconds to a couple of minutes depending on rate limits and network conditions.

How do I provide the batch of captions and photos?
Add captions to batches/captions/ and images to batches/images/. The draft engine can rotate, randomize, or select by keyword rules.

Can I filter which posts trigger alerts?
Yes. You can filter by author, keywords, reposts vs originals, or other rules inside the watcher module.


Performance Benchmarks and Results

Primary Metric: Detects new posts and triggers notifications typically within 15–60 seconds under stable conditions.

Reliability Metric: Deduplication prevents repeat alerts for the same post, maintaining consistent signal quality across long runtimes.

Efficiency Metric: Runs lightweight monitoring with low idle CPU usage; burst work occurs only when new posts appear.

Quality Metric: Draft replies stay consistent and on-brand by selecting from your curated caption and image batches.

Book a Call Watch on YouTube