Skip to main content

Lightweight Telegram terminal client for one chat on low-end Linux laptops.

Project description

telegram-potato-cli

Легкий Telegram-клиент в терминале для одного чата: @RooniChat. Работает в обычном Linux terminal и Termux; по умолчанию включен compact-safe режим: шапка 1 строка, ввод 2 строки, без аватарки чата сверху. Ошибки пишутся в ~/.local/share/telegram-potato-cli/telegram-potato.log.

Установка

pip install telegram-potato-cli
telegram

Web-режим отдельным процессом:

telegram web --port 4823

Открой http://127.0.0.1:4823.

На Debian 12, если pip ругается на externally-managed-environment:

python3 -m pip install --user --break-system-packages telegram-potato-cli
~/.local/bin/telegram

Возможности

  • вход через QR или телефон + код;
  • поддержка 2FA-пароля;
  • сохранение сессии, повторный вход не нужен;
  • realtime-новые и отредактированные сообщения;
  • автопрокрутка как в Telegram: если ты внизу, новые сообщения двигают ленту вниз; если читаешь историю выше, позиция сохраняется;
  • свои отправленные сообщения и файлы сразу появляются в ленте и прокручивают чат вниз;
  • реакции обновляются после установки и через realtime updates;
  • статус печатает;
  • аватарки выключены по умолчанию; F2 включает/выключает их вручную;
  • аватарка, название, username и id чата в шапке;
  • реакции, быстрые реакции 1..9, двойной Enter с настраиваемой реакцией;
  • HTML/Markdown/MarkdownV2/plain режимы отправки;
  • встроенная команда /ping отправляет в чат реальный MTProto ping до Telegram;
  • reply, search, delete, info panel;
  • закрепление и открепление выбранного сообщения;
  • админ-действия: удалить выбранное, удалить с report spam, удалить загруженную пачку, очистить историю;
  • отправка текста;
  • отправка фото/файлов/медиа по пути, включая путь, вставленный drag-and-drop в терминал;
  • скачивание и открытие выбранного медиа через xdg-open;
  • terminal mode показывает легкий ASCII-предпросмотр фото, GIF, стикеров и video thumbnail; F3 включает/выключает превью.
  • редактирование своих сообщений;
  • управление стрелками, PgUp/PgDn, Home/End.
  • web-интерфейс без Flask/FastAPI/React: чистый HTML/CSS/JS и stdlib asyncio HTTP server.
  • кастомные web-панели без alert/prompt, красивый просмотр фото/видео/файлов поверх чата.
  • быстрый web-load для больших чатов без сетевого lookup автора на каждое сообщение; поле ввода web закреплено снизу.
  • web initial load рендерит 25 последних сообщений через быстрый get_messages, без массовых avatar-запросов в ленте.
  • web-лента явно сортирует последние сообщения по id и обновляет существующие DOM-узлы без удаления, чтобы сообщения не пропадали при viewer/refresh.
  • web отправляет в режимах Auto/HTML/Markdown/Plain и отображает Telegram entities: bold, italic, code, links, blockquote и expandable blockquote.
  • web показывает ленивый предпросмотр фото, видео, GIF и webp-стикеров прямо в ленте, а медиа кэширует по message id.

Клавиши

  • Enter - отправить сообщение;
  • Up/Down - выбрать сообщение;
  • PgUp/PgDn - листать;
  • Ctrl+S - отправить файл по пути из поля ввода;
  • Ctrl+D - скачать медиа выбранного сообщения;
  • Ctrl+O - открыть/посмотреть выбранное медиа;
  • Ctrl+E - подготовить редактирование своего сообщения;
  • Ctrl+R - ответить на выбранное сообщение;
  • F2 - включить/выключить аватарки;
  • F3 - включить/выключить предпросмотр медиа;
  • 1..9 - быстрая реакция на выбранное сообщение;
  • двойной Enter на пустом вводе - реакция по умолчанию;
  • F1 - скрыть/показать помощь;
  • Esc - выйти.

Команды

:file /path/to/file
:photo /path/to/photo.jpg
:dl
:open
:edit новый текст
:reply
:react 👍
:defaultreact ❤️
:parse html
:html <b>жирный</b>
:md **жирный**
:md2 *жирный*
:search текст
:delete
:delspam
:purge yes
:clearhistory yes
:pin
:unpin
:refresh
:quit

Сессия, API-настройки и кэш аватарок лежат в ~/.local/share/telegram-potato-cli/.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

telegram_potato_cli-0.2.7.tar.gz (32.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

telegram_potato_cli-0.2.7-py3-none-any.whl (31.7 kB view details)

Uploaded Python 3

File details

Details for the file telegram_potato_cli-0.2.7.tar.gz.

File metadata

  • Download URL: telegram_potato_cli-0.2.7.tar.gz
  • Upload date:
  • Size: 32.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for telegram_potato_cli-0.2.7.tar.gz
Algorithm Hash digest
SHA256 25c3d6b311883aad8dba64bd91b09bc1e1365f0e9e59291701e796385bbf8f8b
MD5 d60d6f7c505fb9d4b42605c0930e6d72
BLAKE2b-256 f0cbc1ac76a125b9f7bb8acf5111cf73600827a6ef97a992d2902de1b91d5b37

See more details on using hashes here.

File details

Details for the file telegram_potato_cli-0.2.7-py3-none-any.whl.

File metadata

File hashes

Hashes for telegram_potato_cli-0.2.7-py3-none-any.whl
Algorithm Hash digest
SHA256 75e6832fc445eb10abaf54b6162e0acd98f1bf286fa08040d98179dd82adda3a
MD5 bbbed858055c15d64658c6c81f2ce7c6
BLAKE2b-256 f3b650466a60c39cc3e883944afcf6be0611de3adc741f489f535aadd0d7406a

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page