---
title: "A Telegram Bot That Watches a Website and Pings You on Changes"
description: "Watch any webpage and get a Telegram ping only when something meaningful changes — Hermes on AgentRoost, AI included. No cron, no server, no API key."
canonical: https://agentroost.app/en/blog/telegram-website-change-monitor-bot
date: 2026-05-26T12:00:00Z
---

[Canonical URL](https://agentroost.app/en/blog/telegram-website-change-monitor-bot)

You refresh a competitor's pricing page manually. You keep a browser tab open for a product that's been out of stock for weeks. You check a government tender board every morning hoping something new appeared. All of that is work a bot should be doing.

This guide shows you how to set up a Telegram bot that watches any public webpage on a schedule, uses an AI to decide whether a change is actually worth your attention, and sends you a Telegram message only when it is. The whole thing runs 24/7 on AgentRoost — no cron job, no VPS, no API keys to manage.

---

## Why Most Website Monitors Are Annoying

The basic idea — fetch a page, diff it, alert — sounds simple. The problem is that modern web pages are full of noise: timestamps, ad slots, session tokens baked into the HTML, rotating banners, cookie consent text. A naive differ fires on all of it. Within a day you've trained yourself to ignore the alerts, which defeats the purpose.

The fix is a layer of judgment: fetch the page, extract the meaningful content, compare it to last time, then ask an LLM "does this diff represent a real change the user would care about?" If yes, ping. If no, stay quiet. That middle step is what makes the difference between a useful monitor and a notification firehose.

---

## What Hermes Does Here

Hermes is AgentRoost's persistent AI assistant framework. It runs continuously on dedicated hardware, remembers context across days, can execute scheduled tasks on a timer, and communicates through a Telegram bot that's auto-provisioned for you the moment you start an instance.

For a website monitor, Hermes does three things on each scheduled run:

1. **Fetches the target URL** and extracts the text content (stripping scripts, styles, and layout noise).
2. **Compares it to the stored snapshot** from the previous run.
3. **Asks the included LLM** whether the diff is meaningful, then sends a Telegram message only if the answer is yes.

Because AI credits are included in the AgentRoost subscription, that third step costs you nothing extra. Every alternative in this space — homegrown monitoring scripts, generic alerting services, or AI-powered automation tools like n8n Cloud — requires you to bring your own OpenAI or Anthropic key and pay for every LLM call separately. On AgentRoost it's already in the price.

---

## The Monitoring Logic, Step by Step

Here's how to think about what Hermes does on each scheduled tick:

### Step 1 — Fetch and Extract

Hermes makes an HTTP GET to your target URL. You tell it which part of the page matters: the full body text, a specific CSS selector, or just the content of a known element like a price `<span>` or a `<table>` with a known ID.

Example target configuration:

```
URL: https://example.com/product/widget-pro
Extract: the text of the element matching #product-price
Schedule: every 30 minutes
```

If the page uses server-side rendering and delivers plain HTML, extraction is straightforward. JavaScript-heavy SPAs that render entirely client-side are harder — Hermes works best with pages that deliver meaningful content in the raw HTML response.

### Step 2 — Compare to Last Snapshot

Hermes stores the previous extracted text. On each run it computes a diff. If nothing changed, the task exits immediately — no LLM call, no alert. This keeps cost and noise low.

If there's a diff, it passes the old content, the new content, and the diff itself to the next step.

### Step 3 — AI Significance Check

This is the key step. Hermes sends a prompt to the included LLM roughly like:

```
You are a change-significance judge.

Previous content:
"""
Price: $149.00
Status: In stock
"""

New content:
"""
Price: $129.00
Status: In stock
"""

Diff:
- Price: $149.00
+ Price: $129.00

Question: Is this a meaningful change the user should know about?
User's interest: price drops on this product.

Reply with YES or NO and one sentence explaining why.
```

If the LLM returns YES, Hermes formats a clean Telegram message and sends it to your bot. If NO, it logs the non-event and waits for the next tick.

### Step 4 — Telegram Alert

Your Telegram message looks something like:

> **Price drop detected on Widget Pro**
> Was: $149.00 → Now: $129.00
> [View page](https://example.com/product/widget-pro)

That's the whole loop. It runs on the schedule you set, forever, without you touching anything.

---

## Practical Use Cases

**Competitor pricing.** Set Hermes to watch a competitor's pricing page. Ask the LLM to flag any plan-level price change or new tier appearing. You'll know within the hour.

**Product restock.** Target the stock status text. The LLM prompt: "Flag if the status changes from 'Out of stock' to anything else." No more manual refreshing.

**Job board / tender board.** Watch a filtered search page. Ask the LLM to flag if the number of listings changes or if a new result appears that matches a keyword.

**SaaS changelog.** Point Hermes at a product's `/changelog` or `/releases` page. Get a Telegram ping each time a new version drops, with a one-line summary of what changed.

**Content freshness.** Monitor a news page or research publication and get alerted when new material appears — useful for staying on top of a specific topic without subscribing to every newsletter.

---

## How to Set This Up on AgentRoost

The whole setup takes about two minutes:

1. **Create an account** at [agentroost.app](/en/agents/hermes) — email/password, or sign in with Google, Microsoft, or Discord.
2. **Pick the Hermes framework** from the agent list and give your instance a name (e.g., `price-watcher`).
3. **Open the AgentRoost manager bot on Telegram** and send `/start` to your new Hermes agent. Your private bot is live.
4. **Configure the monitoring task** in the Hermes setup: paste the target URL, describe what you want to track, set the check interval, and write a one-sentence description of what counts as a meaningful change.
5. Done. Hermes starts its first check immediately and then runs on schedule.

No Docker. No server. No SSL certificate. No OpenAI key. All you need is the URL you want to watch and a Telegram account.

Pricing starts at **$19.99/mo**, which bundles the compute, the Hermes runtime, and the AI credits for the significance checks. The Plus and Pro tiers add more credits and compute for setups that check many pages frequently. Every plan comes with a **14-day money-back guarantee**.

[See what's included in each plan](/en/pricing) or [go straight to Hermes](/en/agents/hermes).

---

## Tips and Pitfalls

**Be specific in your significance prompt.** "Alert me to any change" will still produce noise. "Alert me only if the price drops by more than $5 or the stock status changes" produces useful alerts.

**Check your extraction selector first.** Before setting the schedule, manually verify that the extracted text actually contains the information you care about. A quick manual run of the fetch step saves you a day of wondering why alerts aren't firing.

**Respect the target site.** A check every minute on a small site is borderline abusive. Every 15–30 minutes is reasonable for most use cases. If the site has an RSS feed or an official change API, use that instead — it's more reliable and less aggressive.

**Pages with login walls won't work out of the box.** Hermes fetches public URLs. If your target requires authentication, you'll need to find a public equivalent (many e-commerce sites have public product pages even when the cart requires login).

**Snapshot persistence is automatic.** Hermes is designed with persistent state in mind, so the previous snapshot is saved automatically between scheduled runs. You don't need to set up a database or worry about state expiring between ticks.
