Cuhi Bot is a self-hosted Telegram bot and Mini App for archiving media from Instagram, TikTok, Facebook, and X (Twitter) — delivered directly to your Telegram channels with a premium iOS-inspired control panel.
v2.0.2 · Stable Release · Production Hardened
Most downloaders are black boxes. You don’t know who has your cookies or where your data goes. Cuhi is different:
The Cuhi Mini App is a full-featured dashboard that runs natively inside Telegram. Built with an iOS-inspired design language.
| Feature | Description |
|---|---|
| Dashboard | Real-time stats — sources, files sent, data used, history count, and disk usage |
| Account Page | View your Telegram profile photo, name, username, ID, and premium status |
| Sources Manager | Add and remove profiles across all platforms with one tap |
| Download Control | Choose media type, toggle stories/highlights/force refresh, start/stop downloads |
| History | Browse recent downloads with clear-all support |
| Settings | Configure output channel, schedule, cookies, and appearance |
| Theme System | Dark, Light, and Auto (follows your Telegram theme) |
| Animations | Spring-physics transitions, staggered content entrance, animated counters |
backdrop-filter blur/link <url> for one-off downloadsWe recommend Railway for the easiest setup, but it runs anywhere with Python 3.11+.
/app/dataBOT_TOKEN — from @BotFatherALLOWED_USERS — comma-separated Telegram user IDsADMIN_IDS — your Telegram IDgit clone https://github.com/Copyright-News/cuhibot.git
cd cuhibot
pip install -r requirements.txt
export BOT_TOKEN="your-token-here"
python bot.py
| Variable | Description | Default |
|---|---|---|
BOT_TOKEN |
Telegram bot token from @BotFather | Required |
ALLOWED_USERS |
Comma-separated list of allowed user IDs | All users |
ADMIN_IDS |
Admin user IDs for /admin panel |
None |
DATA_ROOT |
Path for archives, history, and user data | ./data |
COOKIES_ROOT |
Path for cookie storage | ./cookies |
RAILWAY_PUBLIC_DOMAIN |
Auto-set by Railway for Mini App hosting | Auto |
bot.py — Main bot: handlers, download engine, scheduler, persistence
server.py — FastAPI backend for Mini App (runs in daemon thread)
app.html — Mini App frontend (single-file, zero dependencies)
Key internals:
ThreadPoolExecutor for non-blocking file I/Oasyncio.Queue for Mini App → Bot download communicationPTB JobQueue with post_init recovery for scheduled tasksinitData authentication for all Mini App API callsWe are a small group of developers passionate about open-source tools.
ebnycuhie & sayfalse
Lead Maintainers @ Copyright News
Copyright News
Open Source for Content Archival
📧 mintdmca@gmail.com
Made with ❤️ for the Open Source Community