Я перепробовал десятки фитнес-приложений для ведения дневника тренировок. Ни одно не прожило дольше недели. В итоге я написал свой телеграм-бот

Дневник тренировок в телеграме: пишешь «100 8», а бот говорит, что было в прошлый раз и какая цель на сегодня

<i>меню бота</i>
меню бота

Я годами вёл дневник тренировок в телеграме — в чате с самим собой под названием «training log». Записывал почти каждую тренировку — казалось, что веду дневник. На деле копился мёртвый груз из сообщений.

Вот он, этот чат, без прикрас:

<i>мой дневник тренировок до бота — чат в телеграме, куда я годами писал подходы</i>
мой дневник тренировок до бота — чат в телеграме, куда я годами писал подходы

Через месяц я сам не мог разобрать, что тут написано. А «изменено 14:26» — это я после каждого подхода открывал сообщение и дописывал цифры. Теперь три вещи, которые в таком чате просто не работают.

Прогресс не отследить. Вырос я за полгода или топчусь на месте? По куче таких сообщений это не понятно вообще никак. Чтобы как-то оценить прирост в силовых, надо сесть вечером, пролистать сотню сообщений и выписать цифры на бумажку. Надо ли тут говорить, что я не делал этого ни разу... А ведь ради этого дневник и ведут: для отслеживания прогресса на дистанции.

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

Одно упражнение — пять названий. Сегодня написал «bic alter гантели», через неделю — «бицепс попеременно», ещё через две — просто «бицепс». Это одно упражнение или три разных? Уже не восстановить. Статистика записана, а понять ничего по ней нельзя: она разбежалась по разным именам. Да и набирать текстом название упражнения с нуля каждую тренировку - сомнительное удовольствие.

Приложения из сторов проблему не решали, а меняли на другую: выбрать упражнение из списка, выбрать вес колёсиком, выбрать повторы вторым колёсиком, нажать «сохранить». Четыре тапа и три экрана на один подход, между которыми у тебя полторы минуты отдыха и руки в магнезии. Плюс регистрация, подписка за 80$ в год (с оплатой до тестирования хотя бы одной тренировки) и баннер с рекламой протеина.

А мне хотелось всего лишь, чтобы писалось так же быстро, как в тот чат в телеграм, а читалось — как настоящая аналитика в платных приложениях. И тогда я понял, что менять надо не место, а собеседника: пусть на том конце чата вместо меня сидит кто-то, кто записывает и считает. Так появился бот — он просто занял место чата «training log».

Как записать подход: «100 8»

Это весь ввод. Сто килограммов, восемь повторов. Сделал три подхода подряд — «100 8 3». Подтягивания, где вес не нужен, — просто «8». Сделал ошибку — нажал на кнопку "Удалить последний", повторил подход — отправил в чат "=". Можно вообще голосом: «сто на восемь», бот разберёт.

А когда вес для текущего подхода такой же, как на прошлом, а число повторений меняется, печатать вообще ничего не надо: над кнопками стоит ряд цифр «тот же вес, столько-то повторов» — один тап.

Никаких списков, колёсиков и экранов. Скорость того самого чата осталась, но появилась структура.

запись подходов в дневник тренировок

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

Открываешь жим — и под ним уже стоит строка: что ты сделал в прошлый раз. Никакого мотания чата вверх у стойки. Рядом — цель на сегодня: бот считает её по двойной прогрессии (пока не добрал повторы в диапазоне — добавляй повтор, добрал — прибавь вес и начинай снизу). Закрыл упражнение — сразу дельта против прошлого раза.

И вот это поменяло тренировки сильнее, чем я ожидал. Каждый подход превратился в маленькое соревнование с собой из прошлого: видишь «прошлая: 100×8» — и уже появляется азарт сделать как минимум 100×9. Причем этот азарт включается сам, его не надо подогревать. Дневник из бухгалтерии стал игрой, в которой противник — это ты двухнедельной давности, и его результаты бот держит перед глазами.

<i>бот показывает результат прошлой тренировки до подхода и цель на сегодня</i>
бот показывает результат прошлой тренировки до подхода и цель на сегодня

И названия больше не разбегаются: упражнение заводится один раз, а на тренировке ты его просто открываешь — вся история жима лежит в одном месте, а не под пятью разными именами.

Ну и то, ради чего всё затевалось: история, которая раньше лежала мёртвым грузом, здесь считается сама — тоннаж, расчётный максимум в каждом упражнении, рекорды, серии. Прогресс предсказанного повторного максимума — графиком, и по картинке сразу видно, растёшь ты или третий месяц жмёшь одно и то же, просто в разном порядке. Тот самый вопрос, под который я так и не сел с калькулятором, теперь закрыт одним экраном.

<i>график прогресса в жиме лёжа — расчётный максимум по дням</i>
график прогресса в жиме лёжа — расчётный максимум по дням

Самое неожиданное — это сработало на моих собственных результатах. Годы в старом чате я тренировался «как чувствуется»: не помнил точно, что делал в прошлый раз, вес брал на глаз, застой замечал месяца через три. Теперь каждый подход — попытка сделать чуть больше, чем в прошлый раз, потому что «прошлый раз» стоит перед глазами. А когда прогресс останавливается, я вижу это на графике через пару недель, а не через квартал. И меняю программу, пока застой не съел мотивацию.

Три фичи, которые попросили первые пользователи

Дневник решал мою боль. А потом бота начали пробовать друзья — и оказалось, что у каждого боль своя. Три следующие фичи я не придумал сам, а получил запросами в личку.

Кейс 1. «А что вообще делать в зале?» — AI-тренер

Первыми пришли начинающие атлеты — и их проблема была на шаг раньше моей. Мне нечего было анализировать в их истории, потому что истории не было: человек просто не шел в зал, потому что не знал, как построить свою тренировку. Какие упражнения? Сколько подходов? Какой вес? Мой ответ «записывай тренировки, будет виден прогресс» не работал: нечего записывать, пока не знаешь, что делать.

Так появился AI-тренер. Он собирает программу как живой тренер на первой встрече: спрашивает про зал, опыт, цель и сколько дней в неделю ты реально готов ходить — и выдаёт программу, по которой можно сразу тренироваться в боте. Открыл день — упражнения уже на месте, осталось писать «100 8». Не знаешь, что за «тяга в наклоне», — у упражнения есть описание и картинка. Закрыл тренировку — тренер комментирует, что увидел.

Скажу честно: большинство «AI-тренеров» бесполезны, и понятно почему. Это обёртка над чатом, которая не знает о тебе ничего, — и на «почему встал жим» отвечает пересказом статьи из интернета: спи больше, ешь белок, попробуй периодизацию. Тот же ответ получит любой из восьми миллиардов людей.

Мой отличается ровно одним — контекстом. Он живёт внутри дневника и видит всю твою историю: спрашиваешь «почему встал жим» — он открывает твой жим за полгода и отвечает по твоим цифрам, а не по среднему по больнице. Чем дольше ведёшь дневник, тем умнее его ответы. У новичка и у опытного атлета вопросы разные («что делать» и «почему не растёт»), а закрывает оба одна и та же пара: дневник плюс тренер.

AI-тренер собирает программу тренировок под зал, опыт и цель. Показываю только результат, так как на генерацию программы уходит какое-то время

Программой можно поделиться: бот делает «визитку» со ссылкой, её пересылаешь другу, тот открывает и забирает программу себе в один тап. Так же шарятся отдельные упражнения.

Кейс 2. «Посмотри, как я делаю» — разбор техники по видео

Следующий вопрос был такой: программа есть, а правильно ли я это делаю упражнение? В зале этот вопрос решается взглядом тренера — которого нет. В переписке — никак: «у меня спина круглится?» текстом не спросишь.

Теперь можно прислать тренеру видео подхода — прямо в чат, до 20 секунд, один подход, — и он скажет, что в технике править первым. Не «оценка 8 из 10, отличная работа 💪», а конкретно: что увидел, что не так, с чего начать. Если на видео чего-то не разглядеть, он честно говорит «не видно» и объясняет, как переснять — сбоку, целый подход от старта до фиксации.

Под капотом это две нейросети: одна молча смотрит видео и выписывает сухие наблюдения, а говорит с тобой всё тот же тренер — с твоей историей под рукой и своим характером. Первые прогоны в одну модель дали ровно то, чего я боялся: «Общая оценка: 8.5/10, продолжайте в том же духе!» — вежливый фитнес-ассистент из интернета. Пришлось разделить глаза и голос, чтобы персонаж-тренер остался один.

разбор техники упражнения по видео — что править первым

Кейс 3. «У меня всё в Hevy» — импорт истории из других приложений

Еще один друг отказался переходить в бота: у него годы истории в Hevy, и «начни с чистого листа» для человека с дневником звучит как «выброси свой прогресс». Чем больше накопил, тем крепче ты привязан к приложению — и никакие фичи против этого не работают.

Поэтому появился импорт: в Hevy жмёшь Settings → Export & Import Data, файл приходит на почту, скачиваешь и кидаешь боту — история приезжает целиком, с датами и подходами. Из Strong тоже работает: там файл отдаётся сразу из настроек, и даже вес в фунтах бот переведёт сам. Тот друг перешёл в тот же день — вместе со всей историей, и его рекорды и графики заработали сразу, будто он вёл дневник здесь с самого начала.

<i>импорт истории тренировок из Hevy — CSV-файл и итог переноса</i>
импорт истории тренировок из Hevy — CSV-файл и итог переноса

Звания, серии и рекорды — азарт на длинной дистанции

Если строка «прошлая: 100×8» разжигает азарт внутри тренировки, то между тренировками работает другой слой:

Рекорды. Каждый новый рекорд бот замечает сам и говорит об этом сразу — в момент подхода, а не в месячном отчёте.

Серии. Тренируешься без пропусков — серия растёт, и её жалко терять. Пропускаешь — бот скажет, что серия на кону.

Звания. Считаются из тренировок, тоннажа и регулярности. До следующего звания всегда видно, сколько осталось, — и «ещё две тренировки» оказывается рабочей причиной пойти в зал в четверг.

Достижения. За клубы весов, тоннаж, возвращения и прочие вехи.

«Третий день пошёл» — пуши, которые не врут

Дневник работает, только если в него возвращаются. Поэтому бот пишет сам — но не «привет, давно не заходил», а по конкретному поводу и голосом тренера:

ПРИВЕТ АТЛЕТ. Третий день без зала. Отдых или отмазки — сам разберёшься. Я просто считаю дни.

ПРИВЕТ АТЛЕТ. Серия на кону: 6 недель подряд, а на этой — пока ноль. До конца недели 2 дня. Серию строил ты — не разваливай сам.

ПРИВЕТ АТЛЕТ. Жим лёжа третью тренировку на одном весе — и каждый раз выше > 12 повторов. Это не плато, это ты придерживаешь вес. Добавь.

<i>так выглядит пуш от бота — тренер звонит, когда ты пропал</i>
так выглядит пуш от бота — тренер звонит, когда ты пропал

У этих сообщений два правила, и оба я держу тестами.

Подкалывать можно только за пропуски. За малый вес, за лёгкую тренировку, за то, что человек новичок, — никогда. Это единственное правило, которое я ввёл после живой обратной связи: пошутить про чей-то рабочий вес — самый быстрый способ, чтобы человек больше не вернулся.

Пуш обязан быть правдой. «До звания — две тренировки» уходит только тогда, когда данные это подтверждают; «среда — твой продуктивный день» — только при явном лидере в статистике. Нет данных — вариант просто выпадает из ротации, а не заполняется догадкой. Приложение, которое один раз польстило тебе неправдой, дневником быть уже не может: цифрам в нём больше нет доверия.

И у бота есть характер: тренер из подвальной качалки. На «ты», немногословный, говорит от первого лица — «Записал», «Пересчитал сам». Тексты не генерируются на лету: под каждый повод написан набор вариантов, и человек не получает один и тот же дважды, пока не увидит все.

Не только штанга

Ещё тренеру можно переслать пост из фитнес-канала — и он скажет, что там дело, а что бред. Пользуются этим чаще, чем я ждал: советов в телеграме больше, чем самих залов, и половина — уверенная чушь, изложенная убедительным тоном.

Дневник еды — тем же способом, что и подходы: пишешь «овсянка с бананом», бот разбирает и считает КБЖУ. Вес тела — туда же, на график рядом с силовыми. История за всё время и экспорт — данные твои, а не заперты в боте: раз я сам намучился с переездом, запирать чужую историю было бы лицемерием. Можно даже подключить дневник к Claude или ChatGPT через MCP и спрашивать про свои тренировки прямо там.

Что я понял про людей, а не про код

1. Приходят за дневником, остаются из-за графика прогресса. Дневник — это работа, график — награда.

2. Главная развилка — первая записанная тренировка. Кто записал одну, обычно записывает и десятую; кто не записал ни одной в первый день, не вернётся. Поэтому в воронке я считаю не установки, а именно первую запись.

3. Голосовым вводом пользуются меньше, чем я ожидал. В зале шумно, и говорить «сто на восемь» вслух посреди зала стесняются.

4. Напоминания работают, только когда они про конкретный пропуск. «Привет, давно не заходил» — мимо, «третья пропущенная — серия на кону» — работает.

Что дальше

Хочу сделать английскую версию, приложение на IOS и добавить для шаблонных упражнений видео выполнения

Ссылка

Бот: t.me/lightweight_log_bot — бесплатно, без подписки и рекламы протеина.

Если попробуете и что-то не так — в боте есть `/feedback`, отзывы приходят мне лично. Расскажите заодно, чем вы ведёте дневник сейчас: мне до сих пор интересно, сколько людей в 2026 году носят в зал бумажный блокнот.

55