For YouTrending This WeekAI AgentsAI Tools & ReviewsMachine LearningLarge Language ModelsTutorialsIndustry NewsGeneral
General

I Built an AI Agent That Monitors Websites. Here’s What It Caught in One Hour.

I Built an AI Agent That Monitors Websites. Here’s What It Caught in One Hour.

I Built an AI Agent That Monitors Websites. Here’s What It Caught in One Hour.

An AI website monitoring agent powered by an LLM that decides whether website changes are worth your attention β€” built by an AI agent, measured for cost, and tested on live sites.

The meta angle: You’re reading an article about an AI agent, written by an AI agent, that was built by an AI agent. DeepSeek wrote the code, and now DeepSeek powers the brain of the finished tool. The recursion is the point.

The Problem With Website Change Alerts

Every website change monitor I’ve tried is useless within 48 hours. Ad rotations, timestamps, version bumps, cookie banners β€” each is technically a “change” and each is noise you don’t care about.

What you actually want to know: Did a competitor change pricing? Did that job board get a new listing? Did the government update a policy? Did Bitcoin drop below $50,000?

The difference between “the bytes changed” and “something meaningful happened” is exactly the kind of judgment LLMs are surprisingly good at.

Real test: I pointed the agent at httpbin.org/anything β€” a page that returns a unique trace ID on every request. DeepSeek’s verdict: “TRIVIAL β€” This is just a trace ID update, a routine identifier change with no impact on content.” Perfect.

Building the AI Website Monitoring Agent: One Prompt, 513 Lines

I gave OpenClaw one prompt: “Build an AI website monitoring agent.” 41 minutes later, 513 lines of Python across 5 files.

The Architecture

  1. Scraper β€” requests + BeautifulSoup
  2. Hasher β€” SHA-256 comparison
  3. Differ β€” difflib-based diff
  4. Classifier β€” DeepSeek with custom watch instructions
  5. Notifier β€” Telegram alerts per user
  6. Logger β€” structured JSON log
sentinel.py     195 lines
scraper.py      103 lines
classifier.py    93 lines
user_manager.py 300+ lines
storage.py       62 lines
notifier.py      60 lines

The Cost: Less Than Your Morning Coffee β€” Per Year

Every classification call averages ~260 tokens. At DeepSeek pricing: $0.00005 per call.

ScenarioMonthly Cost
5 URLs, every 15 min$0.05
10 URLs, every 5 min$0.43
20 URLs, every 2 min$2.16

Live Test: Three High-Churn Sites

I pointed the agent at HN, CoinMarketCap, and NYT every 10 minutes for an hour, plus ainskills.com (which I was editing). 51 monitoring cycles, 17 SIGNIFICANT detections, 17 Telegram alerts.

What DeepSeek Actually Said: Real Classifier Outputs

Here’s the part that makes this system different from a regular diff tool β€” the LLM’s reasoning. I captured these examples live from the running daemon:

Hacker News: New Stories Detected

What changed (diff):
REMOVED: 163 points, by nopg, 15 hours ago, 227 comments
ADDED: 34 points, 44 min ago, 22 comments, 73 points, 39 comments, 66 points, 59 comments, 1647 points, 1143 points, "High Density Living, 2000 Years Ago: Inside the Roman Apartment Building"

DeepSeek verdict: SIGNIFICANT
"The page content has changed substantially with the removal of old comments and points and addition of new discussion items and a new article title, indicating a major content update."

CoinMarketCap: Financial Data Shifted

What changed (diff):
REMOVED: 13.85%, $85.31B, 102.45%, 59.53%, 0.13, 0.41%, $83.27B, 18.63%, 59.5%, 0.63
ADDED: $146.98, 0.02%, 0.48%, 5.46%, $14.75M, $14,754,188, $1,810,615, 12.31K, $72,801.46, 0.30%

DeepSeek verdict: SIGNIFICANT
"The removal and addition of financial figures like percentages, dollar amounts, and market data indicates a major update to financial metrics or stock data."

New York Times: Timestamp Update (Correctly Ignored)

What changed (diff):
REMOVED: May 29, 2026, 10:13 a.m. ET, "In the Iran-U.S. Standoff at Sea, a Test of Who Blinks First"
ADDED: May 29, 2026, 10:16 a.m. ET, same article

DeepSeek verdict: TRIVIAL
"Only the timestamp changed from 10:13 to 10:16, with no substantive content difference."

Notice the NYT example β€” that’s a real case where a standard monitor would fire an alert for a timestamp bump. The LLM layer correctly suppressed it. This is exactly why the classifier exists.

{"url":"https://news.ycombinator.com/","verdict":"SIGNIFICANT","reason":"New stories and discussion items appeared on the front page"}
{"url":"https://coinmarketcap.com/","verdict":"SIGNIFICANT","reason":"Financial metrics updated β€” new dollar amounts and percentages"}
{"url":"https://news.ycombinator.com/","verdict":"TRIVIAL","reason":"Only user engagement metrics (points, comments) refreshed"}
{"url":"https://www.nytimes.com/","verdict":"TRIVIAL","reason":"Timestamp updated from 10:13 to 10:16, no content change"}
{"url":"https://news.ycombinator.com/","verdict":"SIGNIFICANT","reason":"Page content changed substantially with new article titles"}
{"url":"https://coinmarketcap.com/","verdict":"SIGNIFICANT","reason":"Major update to financial data and market metrics"}
{"url":"https://ainskills.com/","verdict":"SIGNIFICANT","reason":"New content added β€” article edits in progress"}
Honest take: DeepSeek called HN’s story rotation SIGNIFICANT and NYT’s timestamp TRIVIAL β€” both correct. But the judgment is only as good as the prompt. If you tell it “I’m watching for BTC price changes,” it will ignore UI layout shifts and cookie banners and only flag actual market movements.

Multi-User Mode: Tell It What Matters to You

The agent supports user-defined watches with custom instructions. Each user registers, adds URLs with labels, and tells the agent exactly what to watch for:

$ python user_manager.py watch add <user_id> <url> –watch-for “description”


watch add alice “https://coinmarketcap.com/currencies/bitcoin/” –label “BTC Price” –watch-for “Alert if BTC drops below $50K”

watch add bob “https://example.com/jobs” –label “Tech Jobs” –watch-for “Alert if a new senior Python dev position appears”

Use CaseWatch Instruction
Crypto Arbitrage“Alert if BTC drops below $48K”
Job Hunting“Alert if a new remote AI/ML job paying $150k+ appears”
E-Commerce“Alert if price drops below $29.99 or if in stock appears”
Competitor Intel“Alert on any pricing tier changes or removed features”
Government Policy“Alert if any policy document is added or updated”

Where It Breaks

1. JavaScript-Rendered Pages β€” CoinMarketCap returned 14K chars but prices are JS-loaded. You need Playwright.

2. Paywalls β€” NYT served 7K chars dominated by paywall overlay.

3. First-Visit Overhead β€” ~260 tokens wasted per new URL.

requests + BeautifulSoup isn’t enough for modern websites. A production version needs headless browser rendering as a fallback.

Would I Actually Run This?

Yes β€” this AI website monitoring agent is ideal for competitor pricing, job boards, government pages, product restocks, client websites, and crypto arbitrage. No β€” for news sites (you have RSS) and JS-heavy SPAs without headless browser support.

At $0.05/month for 5 URLs checked every 15 minutes, the cost is irrelevant.

The Meta Story

DeepSeek built the tool (wrote the code in 41 minutes), and DeepSeek powers the tool (classifies changes). This is what “agents building agents” actually looks like.

For $0.05/month, you can replace brittle rule-based filters with natural language reasoning. After one hour of runtime and 17 real alerts, the answer is “more than I expected.”

How to Extend It

  • Web UI for registration (Flask/FastAPI)
  • Headless browser scraper (Playwright/Selenium)
  • Auth support (cookie/session management)
  • Smart diff threshold (skip first-visit classification)
  • Alert preferences per user (Telegram, email, SMS, webhook)
  • Historical trends (hash history over time)

The Code

git clone https://github.com/Yitzkak/multi-agent-ai-research.git
cd website-sentinel
pip install -r requirements.txt
python user_manager.py users add myname --telegram 123456789
python sentinel.py --daemon

GitHub: Yitzkak/multi-agent-ai-research β†’

FAQ

How is this different from a regular monitor?

Regular monitors alert on every byte change. This AI website monitoring agent uses an LLM to reason about whether the change matters to you specifically β€” cutting out noise entirely.

Do I need a GPU?

No. The heavy lifting happens on DeepSeek’s servers. All you need is an API key.

Can multiple users share one instance?

Yes. The user_manager.py supports multiple users with their own watch lists and Telegram chat IDs.

What’s the catch?

JS-heavy pages need a headless browser. First-visit overhead costs ~$0.00005 per URL. The LLM occasionally calls something TRIVIAL you’d consider significant. But at $0.05/month, the cost is zero.

Related: When Multi-Agent AI Actually Helps Β· MCP Protocol Explained Β· Prompt Engineering Guide

Share: 𝕏 Twitter in LinkedIn

Yitzkak Agu

AI & ML Writer

AI and machine learning writer at AI 'n Skills. I cover LLMs, AI tools, and developer workflows β€” breaking down complex concepts for developers and curious minds.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top