from __future__ import annotations import html HELP_RICH_HTML = """

Помощь по боту

Я помогаю писать и редактировать посты для социальных сетей. Генерирую посты только по явной просьбе.


Написать пост

  1. Напиши сообщение или отправь голосовое с прямой просьбой, например: «Придумай пост для Telegram про запуск нового продукта».
  2. Можешь указать площадку, аудиторию, факты, длину, цель и другие требования. Можно надиктовать подробное ТЗ или просто тему.
  3. Я распознаю речь, проверю, просишь ли ты именно написать пост, и верну три варианта отдельными сообщениями.

В сообщениях с вариантами будет только текст поста: без нумерации и вступлений, с абзацами, переносами строк и уместными эмодзи.

Настроить Tone of Voice

Пришли скриншот или галерею скриншотов своих опубликованных постов. Я распознаю текст постов и сохраню его как образцы, дополню предыдущие примеры и обновлю только правила Tone of Voice. Сами публикации не переписываю.

Попросить правку

Ответь реплаем на сообщение с вариантом и укажи, что изменить. Например: «Сделай короче и добавь призыв». Я учту оригинальный текст и верну три новых варианта отдельными сообщениями.

Подписка

У тебя есть пробный период — 3 дня бесплатно. Дальше — подписка на 30 дней за 100 звёзд.

Когда период закончится, генерация постов и идей станет недоступна — бот предложит оформить подписку. Команды /help, /balance, /subscribe, /start и /clear работают всегда.

Команды

Быстрые slash-команды только на английском: /help — эта инструкция; /start — краткое описание бота; /clear — полностью обнулить твои данные бота, кроме технических API-логов; /idea — предложить одну идею для нового поста; /balance — статус подписки; /subscribe — оплатить подписку на 30 дней. Можно попросить идею обычными словами: «предложи идею для поста», «о чём написать?», «накидай тему».

""" def rich_to_plain(rich_html: str) -> str: import re text = re.sub(r"]*)?>", "• ", rich_html, flags=re.IGNORECASE) text = re.sub(r"]*)?/?>", "\n", text, flags=re.IGNORECASE) text = re.sub(r"<[^>]+>", "", text) text = html.unescape(text) return "\n".join(line.strip() for line in text.splitlines() if line.strip())