Skip to main content

Quick Start

Set up your bot and receive your first curated deals in minutes.

How it works

Understand the two-layer filter pipeline that powers Steam Deals AI.

Configuration

Tune filter thresholds, scheduler times, and API settings.

Bot Commands

Reference for all Telegram commands your subscribers can use.

What is Steam Deals AI?

Steam Deals AI is a self-hosted Telegram bot that monitors Steam for discounted games and delivers a daily curated selection directly to your subscribers. Instead of flooding users with every sale, it applies a two-layer hybrid filter to surface only the games that genuinely matter:
  1. Layer 1 — Deterministic rules: Every deal is checked against configurable thresholds for discount percentage, Metacritic score, Steam rating, and maximum price. Deals that don’t clear the bar are rejected instantly, with no API cost.
  2. Layer 2 — AI curation (GPT-4o-mini): Candidates that pass the rules filter are sent to GPT-4o-mini, which selects up to 10 games with recognized community standing — AAA titles, celebrated indies, franchise entries, and viral hits. The AI adds a short reason for each pick.
The AI is never the sole judge. Rules guarantee a quality floor; the AI only decides among candidates that already meet objective criteria.

Key features

Smart caching

Snapshot caching skips GPT calls when the candidate list hasn’t changed, minimizing OpenAI costs.

Deduplication

Games already notified recently are excluded automatically for a configurable number of days.

Daily broadcasts

A cron scheduler sends curated deals to all subscribers every morning at a configurable time.

AI fallback

If OpenAI is unavailable, the bot falls back to the last valid daily snapshot instead of sending an error.

Rate limiting

The /deals command enforces a per-chat cooldown to prevent abuse.

Fully configurable

All filter thresholds, schedule, and model settings are controlled via environment variables.

How the pipeline works

CheapShark API  →  Rules Filter (Layer 1)  →  GPT-4o-mini (Layer 2)  →  Telegram Broadcast
The bot fetches up to 60 Steam deals from CheapShark, applies hard filters (discount ≥ 50%, price ≤ $60, Metacritic ≥ 70 OR Steam rating ≥ 70%), then passes candidates to GPT-4o-mini for the final curation. Results are cached as a daily snapshot so repeated /deals requests within the same day are served instantly.
On a typical day, only one GPT call is made — the rest is served from cache. If candidates don’t change between days, even that call is skipped.

Get started

1

Create a Telegram bot

Talk to @BotFather on Telegram to create a new bot and obtain your BOT_TOKEN.
2

Get an OpenAI API key

Sign up at platform.openai.com and create an API key for GPT-4o-mini access.
3

Clone and configure

Clone the repository, copy .env.example to .env, and fill in your credentials and filter preferences.
4

Run the bot

Install dependencies with npm install and start with npm run dev (development) or npm start (production).
Ready to go deeper? Read the full quickstart guide.

Build docs developers (and LLMs) love