СЕРЕЖА РИС

Статьиtelegram

Telegram skills для Claude Code и Codex: библиотека для бота

Содержание

telegram-skills это моя открытая библиотека из семи скиллов для Claude Code, Codex и Cursor. У каждого скилла своя задача: один учит агента собирать сообщение-документ, другой дайджест, третий опрос, четвёртый маленькую программу прямо в чате. Все они опираются на Bot API с 10.1 по 10.3 и бету виджетов. Bot API это интерфейс, через который программа управляет ботом.

Каждый скилл для телеграм бота здесь работает с любым ботом, на чём бы тот ни был написан.

Что такое telegram-skills

Скилл это папка с инструкцией SKILL.md. Агент читает её перед задачей и дальше работает по ней. Формат общий, стандарт Agent Skills, поэтому одна и та же папка подходит Claude Code, Codex CLI, Cursor и любому агенту, который его понимает.

11 июня 2026 года вышел Bot API 10.1 с Rich Messages. Rich message это сообщение-документ: заголовки, таблицы, свёрнутые блоки, галереи и карта в одном пузыре чата. Без инструкции агент выдумывал разметку, которой у Telegram нет.

На следующий день, 12 июня, я попросил агента собрать первые четыре скилла по документации Telegram. В сентябре в чате вайбкодеров я назвал это так: скилл по документации Телеграма, чтобы агент писал посты.

Лист библиотеки telegram-skills: семь скиллов для Telegram-бота и задача каждого из них

Семь скиллов библиотеки на одном листе.

Дальше я просил агента дописывать скиллы под новые версии Telegram. В июле добавились медиа из Bot API 10.2. В сентябре пришли кнопки из 10.3. Осенью появились опросы, переписывание ответов и виджеты. Лицензия MIT разрешает брать и менять код бесплатно.

Страница репозитория telegram-skills на GitHub: папка skills, README и 32 звезды, открытая библиотека скиллов для Telegram-бота

Репозиторий на GitHub 7 ноября 2026: 32 звезды и 4 копии у других людей.

tg-rich-messages: сообщение-документ из бота

Скилл учит агента собирать rich message и отправлять его из бота. Остальные скиллы библиотеки на него ссылаются. В нём разметка, все виды блоков, медиа и лимиты. Запросы идут прямо в Bot API, поэтому подходит любой бот. Блоки такие: заголовки, таблицы, свёрнутый хвост под кнопкой раскрытия, коллаж и слайдшоу из фото, карта, формулы. С 10.3 к ним добавились кнопки прямо в сообщении и компактные таблицы.

Брать, когда обычного текста мало: отчёт, статья в канале, карточка с кнопками. Отдельно скилл разбирает неудачную отправку. Если Telegram ответил ошибкой сервера или запрос завис, сообщение могло уже уйти. Агент тогда сразу не повторяет, иначе в канале выйдет два одинаковых поста.

Через библиотеку собирается каждый пост моего канала @neyrochel_daily. В выпуске 17 сентября коллаж роликов с подписями. В выпуске 30 сентября наш ролик стоит первым, а превью заканчивается до кнопки “Читать полную версию”. В соседнем посте того же дня ролики сеткой и слайдшоу карточек.

Лист скилла tg-rich-messages: из каких блоков Telegram-бот собирает сообщение-документ с таблицами, свёрнутыми блоками и кнопками

tg-rich-messages: блоки сообщения-документа.

До и после tg-rich-messages: отчёт агента в Telegram простым текстом с разметкой Markdown и тот же отчёт сообщением-документом с таблицей

Один отчёт агента до и после скилла. Вёрстка по виду Telegram для iPhone.

tg-markdown-to-rich: отчёт из Markdown в Telegram

Скилл превращает отчёт в Markdown в rich message вместе с картинками. Markdown это простая текстовая разметка с решётками для заголовков, в ней агенты обычно и пишут отчёты. Картинку можно указать по file_id, это номер уже загруженного в Telegram файла, по ссылке или приложить с диска.

Брать, когда отчёт уже лежит в Markdown и его надо показать в Telegram. Просишь агента отправить файл боту, и он приходит сообщением-документом. Перед отправкой скилл проверяет лимиты Telegram: до 32 768 знаков и до 500 блоков. Если отчёт не влезает или для картинки из текста нет файла, агент ничего не отправляет.

Лист скилла tg-markdown-to-rich: как отчёт из Markdown превращается в сообщение Telegram с заголовками, таблицей и картинками

tg-markdown-to-rich: из Markdown в сообщение бота.

tg-rich-digest: дайджест одним сообщением

Скилл собирает дайджест в одно сообщение вместо стены текста. Видов два. Плоский годится для короткой сводки, где всё видно сразу. Для длинного выпуска агент делает превью и свёрнутую полную версию под одной кнопкой.

Превью скилл держит коротким, примерно 500 видимых знаков до кнопки. Тогда лента показывает аккуратную карточку, и Telegram сам не режет текст на середине фразы. Медиа в дайджесте служат доказательством: скриншот того, о чём пункт. Перед публикацией агент прогоняет проверку из скилла: длина превью, все ссылки открываются, выпуск не повторяет прошлый.

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

Лист скилла tg-rich-digest: дайджест в Telegram одним сообщением, короткое превью и свёрнутая полная версия

tg-rich-digest: превью и полная версия под кнопкой.

До и после tg-rich-digest: дайджест блога одной строкой и тот же дайджест с превью и кнопкой «Читать полную версию» в Telegram

Дайджест до и после скилла. Вёрстка по виду Telegram для iPhone.

tg-rich-streaming: ответ модели печатается на глазах

Скилл учит бота показывать ответ модели по мере генерации, слово за словом, как в ChatGPT. Такой режим называют стримингом.

Брать, когда в боте сидит языковая модель и ответ занимает секунды. Скилл описывает весь цикл. Бот открывает черновик с блоком “думаю”, обновляет его по мере ответа и в конце обязательно отправляет готовое сообщение. Если пропустить последний шаг, черновик исчезнет примерно через 30 секунд. Живая анимация работает в личке с ботом. Для групп и каналов в скилле запасной путь: заглушка, которую бот потом заменяет готовым ответом.

Лист скилла tg-rich-streaming: ответ модели в Telegram-боте печатается на глазах, от блока думаю до готового сообщения

tg-rich-streaming: от черновика до готового ответа.

tg-polls: пост и опрос в одном сообщении

Скилл собирает опрос или викторину, где текст поста стоит в описании. У опроса в Telegram описание до 1024 знаков с картинкой или видео. Читатель видит текст и варианты ответа в одной карточке.

Отправить опрос можно от бота или от личного аккаунта. Вариантов до 12, у вариантов тоже бывают картинки. В скилле все настройки: несколько ответов сразу, викторина с несколькими верными вариантами, скрытые результаты до закрытия. Текст длиннее 1024 знаков скилл предлагает отправить отдельным сообщением перед опросом.

Мои опросы тоже идут через библиотеку.

Лист скилла tg-polls: пост и опрос в одном сообщении Telegram, описание до 1024 знаков и до 12 вариантов

tg-polls: текст поста живёт в описании опроса.

До и после tg-polls: пост и опрос двумя сообщениями в Telegram и тот же пост в описании опроса одним сообщением

Пост с опросом до и после скилла. Вёрстка по виду Telegram для iPhone.

tg-reply-rewrite: ответ бота, понятный не-инженеру

Скилл переписывает сырой ответ агента для читателя без технического фона. Агент на сервере пишет отчёты языком логов. Человек открывает такое сообщение на телефоне и не понимает, что случилось и надо ли бежать.

Первая строка говорит, что случилось и насколько это срочно, она читается даже в уведомлении. На каждую находку есть готовая фраза, которую можно скопировать и отправить агенту в ответ. Все факты, числа и ссылки остаются как были. Секреты вроде токенов скилл вырезает и пишет, что вырезал.

Брать, когда отчёты бота читает не инженер. Скилл правит только текст. Отправляет его tg-rich-messages.

Лист скилла tg-reply-rewrite: сырой ответ агента и он же, переписанный для не-инженера на телефоне

tg-reply-rewrite: те же факты, понятные с телефона.

До и после tg-reply-rewrite: сырой лог деплоя от агента в Telegram и тот же отчёт, переписанный для человека

Отчёт агента до и после скилла. Вёрстка по виду Telegram для iPhone.

tg-widgets: игра или панель прямо в сообщении

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

Виджеты пока в бете Bot API. Лимит 4 КБ после сжатия, и сегодня виджет доходит только в личку с ботом. Брать, когда хочется квиз, игру или живую панель в одном сообщении.

Лист скилла tg-widgets: игра или панель прямо в сообщении Telegram, лимит 4 КБ, работает в личке с ботом

tg-widgets: программа в пузыре чата.

6 ноября в чате вайбкодеров я показал аквариум и игру-выживач в виджете. Собрал их Клод. Посмотреть можно у моего бота: он пришлёт оба в личку. В том посте я советовал: дайте агенту мою библиотеку скиллов для Телеграма и попросите виджет.

Снимок экрана iPhone: пиксельный аквариум с рыбами в сообщении Telegram, виджет от бота, собранный агентом со скиллом tg-widgets

Аквариум в личке с ботом, снято на моём iPhone.

Как поставить библиотеку своему агенту

Вся библиотека ставится командой npx skills add serejaris/telegram-skills. Один скилл: та же команда с ключом --skill tg-rich-messages. В Claude Code есть свой магазин плагинов: /plugin marketplace add serejaris/telegram-skills, потом /plugin install telegram-skills@telegram-skills. Подробнее о том, как установить скилл в Claude Code, я писал раньше, а как делиться скиллами, в отдельном посте.

Нужен свой бот и его токен, секретный ключ от бота. Проще всего начать с отчёта:

Поставь библиотеку скиллов https://github.com/serejaris/telegram-skills и прочитай README.

Возьми мой последний отчёт в Markdown и отправь его в личку моему боту как rich message: заголовки, таблица, длинный хвост в свёрнутом блоке. Перед отправкой проверь сообщение по лимитам из скилла.

Токен я задам сам в переменной TELEGRAM_BOT_TOKEN, в чат его не проси. Номер чата спроси у меня. После отправки спроси, как сообщение выглядит у меня на телефоне.

Как выглядят Rich Messages живьём, показывает демо-бот Telegram @RichTextDemoBot.

Когда отчёт дошёл, подключите следующий скилл под свою задачу: опрос, дайджест или виджет. Что получилось, покажите в чате вайбкодеров.