chatgpt_telegram_bot is a free, open source ai interaction & interfaces project written in Python and released under MIT. It has 5,527 GitHub stars, 1,916 forks and 56 open issues, and was last pushed 3 months ago. On this registry it ranks #52 of 113 tracked projects in AI Interaction & Interfaces, with 5 head-to-head comparisons available.

What is chatgpt_telegram_bot?

chatgpt_telegram_bot is an MIT-licensed Python bot that places OpenAI's GPT models and Anthropic's Claude models inside Telegram using your own API keys, aimed at individuals and teams who want fast, uncapped model access without living in a browser tab.

What it is

chatgpt_telegram_bot is a Python application that connects a Telegram bot to OpenAI's native API and, optionally, to OpenRouter for routing Anthropic's Claude models and GPT-5.5. It is config-driven: models are declared in config/models.yml and chat modes in config/chat_modes.yml, so entries can be added or removed with no code changes. Shipped options include GPT-4o mini as the default, GPT-4o, GPT-5.5, and Claude Opus 4.8, Sonnet, and Haiku, alongside OpenAI's gpt-image-1 for image generation and Whisper for voice transcription. It belongs to the Telegram bot ecosystem and sits on top of the OpenAI and OpenRouter API surfaces.

The concrete problem it solves is the browser-based chat interface. The README describes web chatbots as laggy, rate-limited, and locked behind a browser tab. This bot replaces that client with a Telegram-native one where the operator supplies their own API keys, so requests are not capped by a daily limit and spend goes directly to the API provider rather than through an intermediary. Replies usually arrive in three to five seconds and stream into the chat word-by-word.

Key capabilities

  • Message streaming that delivers answers into Telegram word-by-word.
  • Fifteen chat modes, including General Assistant, Code Assistant, Artist, Psychologist, Elon Musk, SQL Assistant, and Movie Expert, with custom modes added in config/chat_modes.yml.
  • Vision support, so a vision-capable model such as GPT-5.5 or Claude can read a sent image.
  • Image generation through OpenAI's gpt-image-1, enabled in Artist mode.
  • Voice messages transcribed by Whisper.
  • A config-driven model list in config/models.yml, editable without code changes, including any other OpenRouter-routed model declared with provider: openrouter.
  • Access control restricting the bot to a list of allowed Telegram users, plus balance tracking via /balance and code highlighting for formatted code blocks.

Who uses it and how

  • Individuals who want a private ChatGPT or Claude client inside Telegram and are willing to hold their own OpenAI and OpenRouter API keys.
  • Group chats, supported through the /help_group_chat setup instructions.
  • Operators who need to limit access, using the allowed-user list to keep the bot closed to everyone else.
  • Cost-conscious users who track spend with /balance and pick models by price and speed, such as GPT-4o mini as the default for cheap, fast replies.
  • Self-hosters who want frontier models such as GPT-5.5 or Claude Opus 4.8 without a provider-imposed daily cap.

Getting started

Rename config/config.example.yml to config/config.yml and config/config.example.env to config/config.env, then set telegram_token from @BotFather and openai_api_key, adding openrouter_api_key for Claude and GPT-5.5, and run docker-compose --env-file config/config.env up --build. A hosted instance exists at @jadvebot and jadve.com for those who would rather not deploy their own.

How it compares

No list of paid products this project replaces is provided in the facts, and no directly comparable tool is named there either. As presented in this registry, it stands alone.

When to use it โ€” and when not to

A self-hoster must supply a Telegram bot token from @BotFather, an OpenAI API key, and optionally an OpenRouter API key, then run the service through Docker Compose while paying the API providers directly. It is a poor fit for anyone who wants a fully managed service with no keys to hold and no API spend to monitor, although the hosted @jadvebot serves that audience. The licence is unambiguous at MIT, but the README excerpt available here is partial and does not document operational details such as persistence or scaling.

project readme (upstream, from github) โ€” read inline

๐Ÿค– ChatGPT Telegram Bot

ChatGPT, re-created as a Telegram bot โ€” and it works great.

GPT-5.5 ยท Anthropic Claude (Opus / Sonnet / Haiku) ยท Vision ยท Voice ยท Image generation
Fast replies, no daily limits, message streaming and 15 special chat modes.


Web chatbots are great โ€” but they're often laggy, rate-limited, and locked behind a browser tab. This project puts the best models from OpenAI and Anthropic right inside Telegram, with your own API keys and no daily limits.

๐Ÿš€ Try the live bot: @jadvebot ยท ๐ŸŒ Web: jadve.com โ€” or deploy your own in two commands (Quick start โ†“).

โœจ Features

  • โšก Low latency โ€” replies usually take 3โ€“5 seconds.
  • ๐Ÿ” No request limits โ€” you pay your API provider directly, nothing in between.
  • ๐Ÿ“ Message streaming โ€” answers stream into Telegram word-by-word.
  • ๐Ÿง  Frontier models โ€” GPT-5.5 and Anthropic Claude (Opus 4.8 / Sonnet / Haiku) via OpenRouter, plus fast & cheap defaults out of the box.
  • ๐Ÿ‘๏ธ Vision โ€” send an image and any vision-capable model (GPT-5.5, Claude, โ€ฆ) will read it.
  • ๐ŸŽจ Image generation โ€” create images with OpenAI gpt-image-1 (switch to ๐Ÿ‘ฉโ€๐ŸŽจ Artist mode).
  • ๐ŸŽค Voice messages โ€” record a voice note and Whisper transcribes it for you.
  • ๐ŸŽญ 15 chat modes โ€” Assistant, Code Assistant, Psychologist, Elon Musk and more. Add your own in config/chat_modes.yml.
  • ๐Ÿ‘ฅ Group chat support โ€” run /help_group_chat for setup instructions.
  • ๐Ÿ’ป Code highlighting โ€” formatted, readable code blocks.
  • ๐Ÿ”’ Access control โ€” restrict the bot to a list of allowed Telegram users.
  • ๐Ÿ’ฐ Balance tracking โ€” see exactly how much you've spent on the API with /balance.

๐Ÿง  Supported models

Models are config-driven โ€” add or remove any in config/models.yml with no code changes.

Model Provider Vision Smart Fast Cheap In / Out per 1K tokens
GPT-4o mini (default) OpenAI โœ… ๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข ๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข ๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข $0.00015 / $0.0006
GPT-4o OpenAI โœ… ๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข ๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข ๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข $0.0025 / $0.01
GPT-5.5 OpenRouter โœ… ๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข ๐ŸŸข๐ŸŸข๐ŸŸข ๐ŸŸข๐ŸŸข $0.005 / $0.03
Claude Opus 4.8 OpenRouter โœ… ๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข ๐ŸŸข๐ŸŸข ๐ŸŸข๐ŸŸข $0.005 / $0.025
Claude Sonnet OpenRouter โœ… ๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข ๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข ๐ŸŸข๐ŸŸข๐ŸŸข $0.003 / $0.015
Claude Haiku OpenRouter โœ… ๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข ๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข ๐ŸŸข๐ŸŸข๐ŸŸข๐ŸŸข $0.001 / $0.005

Plus gpt-image-1 for image generation and Whisper for voice transcription.

๐Ÿ’ก OpenAI models use the native API. Claude and GPT-5.5 are routed through OpenRouter โ€” just set openrouter_api_key and pick the model in /settings. Any other OpenRouter-routed model works too: declare provider: openrouter in config/models.yml.

๐ŸŽญ Chat modes

๐Ÿ‘ฉ๐Ÿผโ€๐ŸŽ“ General Assistant ๐Ÿ‘ฉ๐Ÿผโ€๐Ÿ’ป Code Assistant ๐Ÿ‘ฉโ€๐ŸŽจ Artist
๐Ÿ‡ฌ๐Ÿ‡ง English Tutor ๐Ÿ’ก Startup Idea Generator ๐Ÿ“ Text Improver
๐Ÿง  Psychologist ๐Ÿš€ Elon Musk ๐ŸŒŸ Motivator
๐Ÿ’ฐ Money Maker ๐Ÿ“Š SQL Assistant ๐Ÿงณ Travel Guide
๐Ÿฅ’ Rick Sanchez ๐Ÿงฎ Accountant ๐ŸŽฌ Movie Expert

Create your own by editing config/chat_modes.yml.

๐Ÿš€ Quick start

1. Get an OpenAI API key.

2. (optional) Get an OpenRouter API key to use Claude and GPT-5.5.

3. Get a Telegram bot token from @BotFather.

4. Fill in your tokens and rename the config files:

mv config/config.example.yml config/config.yml
mv config/config.example.env config/config.env
# then edit config/config.yml โ€” set telegram_token, openai_api_key (and openrouter_api_key for Claude/GPT-5.5)

5. ๐Ÿ”ฅ Run it:

docker-compose --env-file config/config.env up --build

That's it โ€” message your bot on Telegram.

โš™๏ธ Configuration

Main options in config/config.yml:

Option Description
telegram_token Bot token from @BotFather
openai_api_key Your OpenAI API key
openai_api_base Custom base URL (e.g. LocalAI); leave null for default
openrouter_api_key Needed only for provider: openrouter models (Claude, GPT-5.5)
allowed_telegram_usernames Whitelist of users/IDs; empty = open to everyone
new_dialog_timeout Seconds before a new dialog starts automatically
image_size gpt-image-1 output size (1024x1024, 1536x1024, 1024x1536, auto)
enable_message_streaming Stream answers word-by-word

Per-model pricing and capabilities live in config/models.yml.

๐Ÿ’ฌ Bot commands

Command Description
/new Start a new dialog
/mode Select a chat mode
/retry Regenerate the last answer
/settings Choose model and settings
/balance Show $ spent on the API
/help Show help

๐Ÿ—‚๏ธ Project structure

bot/
  bot.py           # Telegram handlers, streaming, commands
  openai_utils.py  # model dispatch (OpenAI + OpenRouter), token counting, vision
  config.py        # loads config.yml / models.yml / chat_modes.yml
  database.py      # MongoDB storage for users & dialogs
config/
  config.yml       # your tokens & settings
  models.yml       # model catalog, pricing, capabilities
  chat_modes.yml   # chat-mode prompts

๐Ÿ› ๏ธ Tech stack

python-telegram-bot 20.x ยท OpenAI Python SDK 1.x ยท MongoDB ยท Docker ยท Python 3.12

๐Ÿ“ฐ Changelog highlights

  • Jun 2026 โ€” Switched image generation to gpt-image-1, refreshed the model menu and pricing.
  • Mar 2026 โ€” Added OpenRouter support โ†’ Claude (Opus / Sonnet / Haiku) and GPT-5.5.
  • Feb 2026 โ€” Migrated to the OpenAI Python 1.x SDK; Docker now runs on Python 3.12.
  • 2025 โ€” Config-driven model catalog: add or swap models without touching code.

See the full history in CHANGELOG.md.

โค๏ธ Top donations

You can be on this list:

  1. LilRocco โ€” $11000 (!!!)
  2. Mr V โ€” $250
  3. unexpectedsunday โ€” $150

๐Ÿ“„ License

MIT โ€” do whatever you want, just keep the notice.


โญ If this project saved you time, give it a star! โญ

Frequently asked questions

Is chatgpt_telegram_bot free to use?

chatgpt_telegram_bot is open source under the MIT licence. There is no licence fee and no seat count โ€” you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does chatgpt_telegram_bot do?

๐Ÿ’ฌ Telegram bot with ChatGPT & Claude Python-based, using OpenAI's API.

What is chatgpt_telegram_bot written in?

chatgpt_telegram_bot is primarily written in Python. Its source is publicly available at https://github.com/father-bot/chatgpt_telegram_bot, and it has 5,527 GitHub stars.