Adopter — The Complete Guide
Instead of reading 500 posts a day — an agent that filters
Adopter is a Python service plus cron that listens to Telegram channels through Telethon (a Python client that speaks MTProto — the full Telegram user protocol, not the restricted Bot API), sends each post to Gemini 2.5 Flash with a classification schema (novelty × signal × actionability × risk), and stores only the top-K items in a Qdrant collection called `network_memory`. A circuit breaker caps it at 5 adoptions per day. For me it filters 500 posts a day down to 3-5 findings — for you it can point at RSS feeds, Discord channels, Reddit or Twitter forums, mailing lists, or any content firehose that needs a smart filter.
What this guide covers
What is Adopter? A personal research assistant that never stops
An automatic service that reads on your behalf, filters, and surfaces only what is truly worth your time
Adopter is an autonomous agent — a piece of software that runs in the background with no hand-holding — that I put in charge of the most tiring task in 2026 tech: tracking dozens of Telegram broadcast channels run by practitioners and deciding, for me, what is worth an hour and what is noise. It is written in Python, triggered by cron (the operating system's job scheduler — essentially a clock that fires it on the hour, every hour), sends every post to Gemini Flash (Google's fast, free LLM) which grades it across four criteria, and stores only the best items inside a Qdrant collection — a semantic database that remembers by meaning rather than by keyword.
The full flow — the six steps from channel to memory
The journey of a Telegram post, from the moment it is written to the moment it reaches you as an insight
This flow is a pipeline — a sequence of stages that every post passes through, one after another, until it either lands in long-term memory or is discarded. Each stage is simple on its own; the magic is in the chain. Let's walk through it end to end.
The classifier — how Adopter decides what is truly 'interesting'
The craft of prompt engineering combined with learning from your own feedback
The classifier is the beating heart of Adopter. It is the written instruction that Gemini Flash receives for every post. Classification is the technical term for automatically sorting content into predefined buckets — the same way email services sort your inbox into primary, social, or promotions. This prompt is dynamic — it improves over time because you are teaching it what counts as a miss and what counts as a hit.
Circuit Breaker — the gatekeeper that prevents overflow
Five adoptions a day is the ceiling — and that is what keeps the system sane
A circuit breaker is a metaphor borrowed from electricity — the automatic switch in your fuse box that trips under load and prevents a fire. We adopted the same principle in software: a hard ceiling that kicks in the moment something crosses the allowed threshold. In Adopter the ceiling is five adoptions per day. Without it, a single 'noisy' day on one channel could dump 50 items into memory and bury you.
Dedup — recognising a story you have already seen
A semantic search before every adoption — so information never duplicates itself
Dedup (short for deduplication) is arguably Adopter's best-kept secret. In a world where 20 Telegram channels cover the same news cycle, any new tool will show up in 6 different places within two hours. Without this step you would see the same insight six times. With it, you see it once — and it is linked to every source that mentioned it.
Advanced tips — lessons from three months of continuous operation
The nuances that separate a demo project from a system that lives for the long haul
After three months of 24/7 operation, more than 45,000 scanned posts, and hundreds of tiny adjustments to the prompt and thresholds — these are the things I wish I had known before I started. Every line here is worth hours of trial and error.

