---
title: "Telegram Post Editor — Mini App"
description: "Создавайте красиво отформатированные посты Telegram прямо внутри Telegram. Mini App-версия Telegram Post Editor с точным превью, черновиками, синхронизируемыми через Telegram CloudStorage, и одним нажатием на отправку …"
canonical: https://giglabo.com/ru/heretic/applications/telegram-post-editor/miniapp
locale: ru
---

# Telegram Post Editor — Mini App

> Markdown twin of https://giglabo.com/ru/heretic/applications/telegram-post-editor/miniapp
> Fetch this instead of the HTML page: same content, a fraction of the bytes.
> Site structure and the full page list for agents: https://giglabo.com/llms.txt

Создавайте красиво отформатированные посты Telegram прямо внутри Telegram. Mini App-версия Telegram Post Editor с точным превью, черновиками, синхронизируемыми через Telegram CloudStorage, и одним нажатием на отправку …

Создавайте красиво отформатированные посты Telegram прямо внутри Telegram.
  Точное превью, черновики, синхронизируемые через Telegram CloudStorage, и
  публикация одним нажатием — каждый элемент форматирования (жирный, курсив,
  ссылки, цитаты) сохраняется.

Mini App — лёгкий компаньон для [десктопного Telegram Post Editor](https://giglabo.com/ru/heretic/applications/telegram-post-editor). Тот же движок форматирования, то же превью, но доступно с любого устройства, где есть Telegram.

---

## Как открыть

Mini App живёт внутри **[@tgpe_editor_bot](https://t.me/tgpe_editor_bot)** — откройте бота в Telegram и отправьте `/app`, чтобы запустить Mini App. Работает на iOS, Android, Telegram Desktop и Telegram Web.

[Открыть @tgpe_editor_bot в Telegram →](https://t.me/tgpe_editor_bot)

  После нажатия **Start** отправьте `/app`, чтобы
  запустить Mini App.

### Два способа запуска

1. **Открыть бота** — нажмите [@tgpe_editor_bot](https://t.me/tgpe_editor_bot), нажмите **Start**, затем отправьте `/app`
2. **Меню команд бота** — `/start` (приветствие), `/help` (полный список функций), `/app` (запуск Mini App)

> **Note: Нажмите /start перед первой загрузкой медиа**
>
>
> Telegram требует, чтобы у бота был открытый чат с вами — иначе он не сможет временно сохранить загруженный файл. Если пропустить `/start`, первая загрузка фото или аудио завершится ошибкой **«Tap Start in @tgpe_editor_bot first, then try again.»** Откройте чат с ботом, нажмите **Start** и повторите попытку.
>

---

## Первый запуск

При открытии Mini App вы увидите приветственный экран с вашим именем из Telegram, короткий слоган и ссылку «Получить Telegram Post Editor для десктопа» в правом верхнем углу.

### Тема и язык — автоматически

- **Тема** — берётся из `Telegram.WebApp.themeParams` и переносится в CSS-переменные. Переключите тему в Telegram — Mini App обновится мгновенно.
- **Язык** — определяется по `language_code` из Telegram. Русский для `ru*`, английский — в остальных случаях. Сейчас поддерживаются только английский и русский.
- **Безопасные отступы** — учитывается челка / Dynamic Island на iOS.

### Раскладка

| Размер экрана     | Раскладка                                                                                 |
| ----------------- | ----------------------------------------------------------------------------------------- |
| Узкий (< 768px)   | Две вкладки: **Редактор** / **Превью**. Состояние редактора сохраняется при переключении. |
| Широкий (≥ 768px) | Бок о бок: редактор слева (60%), превью справа (40%).                                     |

---

## Форматирование

Тулбар поддерживает те типы форматирования, которые Telegram действительно отображает.

| Кнопка | Действие                                                           | Сочетание        |
| ------ | ------------------------------------------------------------------ | ---------------- |
| **B**  | Жирный                                                             | Cmd/Ctrl + B     |
| **I**  | Курсив                                                             | Cmd/Ctrl + I     |
| **U**  | Подчёркнутый                                                       | Cmd/Ctrl + U     |
| **S**  | Зачёркнутый                                                        | —                |
| Ссылка | Вставка / переключение ссылки                                      | Cmd/Ctrl + K     |
| Фото   | Выбор фото или видео                                               | (файловый пикер) |
| Аудио  | Выбор аудиофайла                                                   | (файловый пикер) |
| ⋯ Ещё  | Списки, цитата, блок кода, удалить ссылку, очистить форматирование | —                |

**Поддерживаемые узлы:** жирный, курсив, подчёркнутый, зачёркнутый, ссылка, абзац, заголовок, нумерованный и маркированный списки, цитата, блок кода.

**Отличия от десктопа:** нет галереи в тулбаре (отдельные кнопки «Фото» и «Аудио»), нет управления каналами, упрощённый диалог ссылки, пока нет UI для спойлера и пикера эмодзи.

### Сочетания клавиш

| Сочетание    | Действие                                  |
| ------------ | ----------------------------------------- |
| Cmd/Ctrl + B | Жирный                                    |
| Cmd/Ctrl + I | Курсив                                    |
| Cmd/Ctrl + U | Подчёркнутый                              |
| Cmd/Ctrl + K | Диалог ссылки                             |
| Enter        | Новая строка                              |
| Escape       | Закрыть модалку / отменить переименование |
| Tab          | Переход по фокусу                         |
| Space        | Активация выбранной кнопки                |

---

## Медиа

Нажмите **Фото** или **Аудио** — откроется системный пикер.

### Лимиты

| Тип   | Форматы              | Максимальный размер |
| ----- | -------------------- | ------------------- |
| Фото  | JPEG, PNG, WebP, GIF | 10 МБ               |
| Видео | MP4, MOV, WebM       | 50 МБ               |
| Аудио | MP3, M4A, AAC        | 50 МБ               |

Сейчас — **один медиафайл на пост**. Повторный выбор заменяет предыдущий. Альбомы в планах.

### Процесс загрузки

1. Выбираете файл — сразу появляется локальный 256-пиксельный thumbnail
2. Mini App в фоне загружает файл боту, в слоте крутится спиннер
3. Бот возвращает `file_id` и серверный thumbnail
4. В слоте отображается финальное превью; основная кнопка переключается на **«Поделиться в Telegram»**
5. Временные ошибки автоматически повторяются до трёх раз с экспоненциальной задержкой (500 мс → 1 с → 2 с + jitter)

### Особенности платформ

| Платформа        | Пикер                                   | Заметка                                                                                                                |
| ---------------- | --------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
| iOS              | Document picker (Фото / Файлы / iCloud) | `blob:`-URL работают надёжно                                                                                           |
| Android          | Системный файловый пикер                | `blob:`-URL ненадёжны в WebView — используются `data:`-URL и серверный thumbnail-fallback при сбое `createImageBitmap` |
| Telegram Desktop | Системное диалоговое окно               | Наследует тему десктопа                                                                                                |
| Telegram Web     | HTML5-инпут                             | Только localStorage / IndexedDB — без CloudStorage-синхронизации                                                       |

---

## Превью и лимиты длины

Превью показывает Telegram-стилизованный пузырёк с отформатированным текстом плюс прикреплённое медиа (если есть) и опциональную карточку предпросмотра ссылки.

### Пороги длины

| Режим             | Максимум символов |
| ----------------- | ----------------- |
| Только текст      | 4096              |
| С медиа (подпись) | 1024              |

Счётчик символов обновляется с задержкой 120 мс (дружелюбно к Android). Цвет меняется на 80%, 95% и 100%: синий → жёлтый → красный, и жирный красный после превышения. При прикреплении/удалении медиа режим подписи переключается автоматически.

---

## Публикация

Большая кнопка внизу — триггер публикации. Активна, когда пост содержит хотя бы один символ или прикреплённое медиа; недоступна во время загрузки или при превышении лимита.

### Современный Telegram (Bot API ≥ 8.0)

1. Нажмите **«Поделиться в Telegram»**
2. Mini App дожидается завершения загрузки и просит бэкенд подготовить инлайн-сообщение
3. Бэкенд формирует сообщение и возвращает `prepared_message_id`, действительный ~5 минут
4. Mini App вызывает `Telegram.WebApp.shareMessage(prepared_message_id)`
5. Telegram открывает системный шеринг — выберите чат или канал
6. Telegram отправляет сообщение; Mini App показывает **«Опубликовано! Сообщение в пути.»**

### Старый Telegram (без shareMessage)

Кнопка переключается на **«Скопировать как MarkdownV2»**. Mini App сериализует пост в Telegram-Markdown, копирует в буфер обмена и показывает тост: «Скопировано! Вставьте в любой чат Telegram.»

### Метка «via @bot»

Mini App публикует через инлайн-механизм Telegram, поэтому в постах канала появляется подпись **«via @tgpe_editor_bot»**. Чтобы публиковать от имени канала без метки, используйте [десктопное приложение](https://giglabo.com/ru/heretic/applications/telegram-post-editor) с ботом, добавленным как администратор канала (право **Post Messages**).

---

## Черновики

### Автосохранение

Каждое нажатие клавиши (с дебаунсом) сохраняет:

1. **`localStorage.tgpe:current`** — локальный кэш для восстановления
2. **Telegram CloudStorage** под id активного черновика (если CloudStorage доступен)

При перезагрузке Mini App восстанавливает в порядке: активный черновик из CloudStorage → бэкап в localStorage → пустой редактор.

### Экран черновиков

Иконка папки в шапке открывает список черновиков: заголовок, дата изменения, превью первой строки. Нажмите, чтобы открыть, карандаш — чтобы переименовать (до 60 символов; Enter — сохранить, Esc — отменить), корзина — чтобы удалить (с подтверждением).

### Лимиты хранилища

| Хранилище             | Лимит                                                                           |
| --------------------- | ------------------------------------------------------------------------------- |
| `localStorage`        | ~5–10 МБ (браузер) — около 50 КБ на черновик                                    |
| Telegram CloudStorage | 1024 ключа на пользователя (ограничение Telegram) — каждый черновик = один ключ |

### Оффлайн

Черновики работают полностью оффлайн — изменения сохраняются локально. **Публикация** требует соединения и показывает «Не удалось связаться с сервером.» до восстановления связи.

### CloudStorage недоступен

В Telegram Web и очень старых клиентах CloudStorage не поддерживается. Mini App покажет баннер — черновики сохраняются локально, но не синхронизируются между устройствами.

---

## Публикация в каналы

Управление каналами — в десктопном приложении. Mini App опирается на системный шеринг Telegram, который позволяет выбрать любой чат или канал, где у вас есть права на публикацию.

Для чистых постов в канал без метки **«via @tgpe_editor_bot»** используйте [десктопное приложение](https://giglabo.com/ru/heretic/applications/telegram-post-editor) с ботом, добавленным как администратор канала с правом **Post Messages**.

---

## Ошибки и пустые состояния

### Ошибки загрузки

| Ошибка                 | Сообщение                                              | Действие                            |
| ---------------------- | ------------------------------------------------------ | ----------------------------------- |
| Пустой файл            | «Файл пустой.»                                         | Выберите другой                     |
| Слишком большой        | «Файл слишком большой. Лимит N МБ.»                    | Сожмите и попробуйте ещё раз        |
| Неподдерживаемый MIME  | «Этот тип файла не поддерживается.»                    | Используйте фото / видео / аудио    |
| Чат с ботом недоступен | «Tap Start in @tgpe_editor_bot first, then try again.» | Откройте чат с ботом, нажмите Start |
| Сеть / 5xx             | (автоматически 3 попытки, затем «Загрузка не удалась») | Подождите или повторите вручную     |

### Ошибки публикации

| Код                          | Сообщение                                                                                    |
| ---------------------------- | -------------------------------------------------------------------------------------------- |
| empty_post                   | Напишите что-нибудь перед отправкой.                                                         |
| too_long                     | Пост слишком длинный. Telegram допускает до 4096 символов.                                   |
| invalid_state                | Что-то не так с этим черновиком. Скопируйте текст вручную.                                   |
| telegram_api                 | У Telegram временные проблемы. Попробуйте ещё раз.                                           |
| auth_required / auth_invalid | Не удалось аутентифицироваться. Перезапустите Mini App.                                      |
| network_error                | Не удалось связаться с сервером. Проверьте соединение.                                       |
| unsupported                  | Обновите Telegram, чтобы публиковать напрямую. Или используйте «Скопировать как MarkdownV2». |

---

## Решение проблем

| Проблема                                         | Решение                                                                                                            |
| ------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------ |
| «Mini App is not running in Telegram»            | Откройте [@tgpe_editor_bot](https://t.me/tgpe_editor_bot) изнутри Telegram и отправьте `/app`                      |
| Черновики не синхронизируются между устройствами | CloudStorage недоступен в этом клиенте (Web / старый клиент). Используйте десктопное приложение для синхронизации. |
| При загрузке медиа: «Tap Start in @bot first»    | Откройте чат с ботом, нажмите **Start**, затем повторите загрузку                                                  |
| На Android фото пустые                           | Сработает серверный thumbnail-fallback. Если нет — пришлите лог консоли в поддержку.                               |
| «Пост слишком длинный» при < 4096 символов       | Прикреплено медиа — лимит подписи 1024. Удалите медиа или сократите подпись.                                       |
| Не могу найти чат в шеринг-листе                 | Введите имя чата в поиск шеринг-листа Telegram.                                                                    |
| Метка «via @bot» в постах канала                 | Это ожидаемое поведение Mini App. Для постов от имени канала используйте десктопное приложение с ботом-админом.    |

---

## FAQ

### Где работает Mini App?

Внутри Telegram на iOS, Android, Telegram Desktop (macOS/Windows/Linux) и Telegram Web. Откройте [@tgpe_editor_bot](https://t.me/tgpe_editor_bot) и отправьте `/app`, чтобы запустить.

### Нужно ли что-то устанавливать?

Нет. Mini App открывается прямо в Telegram. Также есть [десктопная версия](https://giglabo.com/ru/heretic/applications/telegram-post-editor) для продвинутых сценариев — управление каналами, интеграция с MCP, серверный режим.

### Почему у поста в канале метка «via @bot»?

Mini App публикует посты через инлайн-механизм Telegram, поэтому в подписи появляется **«via @bot»**. Чтобы публиковать от имени канала без метки, используйте десктопное приложение с ботом, добавленным как администратор канала.

### Синхронизируются ли черновики между устройствами?

Да — черновики сохраняются в Telegram CloudStorage и восстанавливаются при открытии Mini App на другом устройстве. В Telegram Web и очень старых клиентах без CloudStorage используется локальное хранилище браузера.

### Какой лимит по символам?

**4096 символов** для текстовых постов. С прикреплённым фото или видео **лимит подписи — 1024**.

### Есть ли спойлер или пикер эмодзи?

Пока нет. Спойлер существует в editor-core, но не выведен в тулбар Mini App. Встроенного пикера эмодзи нет — используйте системный пикер Telegram или вставку из ОС.

### Можно ли отправлять альбомы (несколько фото)?

Пока нет, один медиафайл на пост. Альбомы в планах.

---

Создано по методологии [VibeCoder Heretic](https://giglabo.com/ru/about) — автономные ИИ-агенты делают тяжёлую работу, разработчик фокусируется на главном.

## Related

- HTML version of this page: https://giglabo.com/ru/heretic/applications/telegram-post-editor/miniapp
- Site map for agents: https://giglabo.com/llms.txt
