Jev Telegram Channel Router
Multi-user Telegram bot that judges every new post in public channels with Jev templates and routes matches to your DM or channels.
Overview
Jev Telegram Channel Router lets users subscribe to any public Telegram channel, filter each new post with Jev judgments and route matches to a private chat or channels they manage. Use cases include receiving only high-importance posts from a noisy finance channel, sorting crypto and macro posts into separate channels, or aggregating AI posts from several sources into one DM.
Users describe in natural language what deserves attention; this is compiled once (optionally with an LLM) into a reusable Jev template of Noul, Score and Choice questions, which can be dry-run and adjusted. Each source channel is polled on a 60-second schedule, and the questions of all active templates on that channel are merged and cached so each post costs one Jev call no matter how many subscribers watch it. A 24-hour near-duplicate check runs per destination. It is multi-user with per-user token metering, an admin console with quotas and blocking, and a bilingual English and Chinese UI. It uses only the official Bot API and public channel previews, with no userbot.
What the decision model decides
| Type | Question | Answers |
|---|---|---|
| Yes / no | Does this post match what the user described as worth attention?(inferred) | — |
| Score | How important is this post?(inferred) | — |
| Choice | Which category (and destination) does this post belong to?(inferred) | — |
How it works
- User describes a filter; it compiles into a Jev template
- Poll each source channel every 60 s for new posts
- One merged Jev call per post shared across subscriptions
- Per-template match, near-duplicate check, then route to DM or channels
Strengths
- One Jev call per post regardless of subscriber count
- Natural-language setup with dry-run
- Per-user metering, quotas and admin controls
- CI and an open licence badge
Caveats
- Public channels only
- Requires a Telegram bot token and TypeSafe key
Getting started
git clone, pip install -e ".[dev]", cp .env.example .env (set BOT_TOKEN and TYPESAFE_API_KEY), then run the module.At a glance
- Type
- Project
- Status
- beta
- Language
- Python
- Runtime
- Telegram bot
- Has code
- yes
- Has tests
- yes
Use cases and integrations
How curated lists describe it
Jev as a channel message router | Jev频道消息路由.
hellogumbo/awesome-jev
Frequently asked questions
How does it keep costs down?
Questions from all templates on a channel are merged so each post needs one Jev call, with a 7-day match cache.
Can it read private channels?
No. It uses the official Bot API and public t.me/s previews only.
Do I need to write Jev questions?
No. You describe what you want in natural language and it is compiled into a template you can dry-run.
Related projects
Chinese-language Zotero AI reading assistant that uses Jev judgments to classify papers in your library.
LibraryproductionJavaScriptTelegram channel X-ray: Jev judges up to 1,500 public posts for kind, paid ads, clickbait and pressure, producing a shareable card.
ProjectbetaJavaScriptLocal Telegram filter that batches channel messages to Jev or a local Laya model and keeps only those matching your conditions.
ProjectbetaPythonDaily pipeline that reads Spain's official gazette with Jev, scoring relevance, tagging categories and picking a summary paragraph.
AppprototypeTypeScriptReal-time global intelligence dashboard; per the lists, it batches Jev questions to score headline severity and classify event domains.
AppproductionTypeScriptLocal-first feed that merges arXiv, GitHub, Hacker News and Bilibili results, with optional Jev title-relevance scores as a filter.
ProjectbetaTypeScript