Bot Pairing: Connect a Telegram bot token (from @BotFather) in Settings → Telegram; Memo long-polls the Bot API for messages once configured.
Owner Lock: Since anyone who finds a bot's username can message it, Memo locks in whoever messages first as the bot's permanent owner and silently ignores everyone else afterward — the entire access-control boundary for this integration.
Assistant Chat: Once linked, the owner gets a full assistant — chat, memory, and agent tools — the same capability as the WhatsApp self-chat path, on Telegram instead.
Routines via Chat: The same create_routine/list_routines/cancel_routine tool flow works from a Telegram conversation.
Local Storage: Telegram messages stored in their own isolated SQLite database, independent of WhatsApp's.
Switch models from the chat (v4.6.0): /model lists every model one message away — each enabled provider's model, every live model of your Subscriptions accounts grouped by vendor, the local model — numbered, with the active one marked ✅ and image models 🎨. /model 3, /model gemini or /model <provider> <model> switches. /status names the model, not just the provider.
Pictures both ways (v4.6.0): send a photo and the assistant describes it; caption it with a change ("make it black and white", "bunu anime yap") and it is edited (image-to-image); ask for a picture in words ("bana bir kedi resmi çiz", "draw me a cat") and one is drawn (text-to-image) and sent back as a photo. The turn goes to an image model on its own for that one message and the next message is ordinary chat again (see Automatic picture routing under External Providers). /image <what to draw> forces a picture whatever the wording, and says so when no image model is set up.
Readable errors (v4.6.0): a failed request reaches the chat as a sentence about what happened and what to do ("the provider is receiving too many requests …", "the model or address was not found …"), tagged with its HTTP status — not the provider's raw status 400 … request id … dump.