LITAU

Коротко

Lunelo — это AI-планировщик задач, где ты голосом наговариваешь день, а Claude Haiku разбивает поток в структурированные задачи с приоритетом, дедлайном и подзадачами. Haiku я взял за скорость и цену: разбор идёт за секунды и стоит копейки. Работает как iOS-приложение и как PWA, без ручного набора.

Я три года делаю сайты и веб-приложения в одиночку под брендом Litau Labs, и Lunelo — мой собственный продукт, а не клиентский заказ. Начал я его не с фичи «добавить ИИ», а с личной боли: планировщики требуют, чтобы ты сначала сам разложил хаос в голове по полочкам, а потом уже занёс это в приложение. Разработка AI-планировщика задач началась ровно с этой мысли: пусть машина разбирает хаос, а не я.

В этом разборе покажу, как устроен Lunelo изнутри. Где живёт голос, почему из всех моделей я выбрал именно Claude Haiku, что оказалось по-настоящему сложным в цепочке «голос → структура» и как это собрано под iOS и PWA одновременно. Живой продукт можно потрогать в кейсе Lunelo — AI-планировщик на Claude Haiku.

Какую проблему решает AI-планировщик задач

Обычный таск-менеджер молчит и ждёт. Ты открываешь пустое поле «Название задачи» и должен сам:

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

Я хотел убрать ввод целиком. Не «удобное поле», а вообще отсутствие набора текста. Ты говоришь так, как думаешь: «сегодня надо дописать оффер клиенту, забрать посылку, вечером созвон с Ромой по проекту, и не забыть заплатить за хостинг». Это не задачи, это поток. Задача Lunelo — превратить поток в план.

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

Как работает связка «голос → Claude Haiku → задачи»

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

  1. Захват голоса. На вебе (PWA) я использую OpenAI Whisper для транскрипции, на iOS — нативное распознавание речи через Capacitor. Движки разные, потому что нативный на телефоне быстрее и не жрёт трафик, а на десктопе Whisper даёт лучшую точность.
  2. Транскрипт в текст. Получаю сырую расшифровку: сплошной поток без пунктуации и границ задач.
  3. Разбор через Claude Haiku. Отправляю текст в модель с жёстким системным промптом: сегментируй поток на отдельные задачи, убери дубли, для каждой определи приоритет, категорию, дедлайн и, если дело крупное, разбей на подзадачи.
  4. Структурированный ответ. Haiku возвращает не прозу, а строгий JSON: массив задач с полями. Я валидирую схему и подставляю дефолты, если модель что-то пропустила.
  5. Карточки на экране. Задачи раскладываются по Today / Week, первая маленькая подзадача подсвечивается, чтобы было с чего начать.

Ключевой момент: модель не «пишет ответ пользователю». Она работает как парсер. На входе человеческий хаос, на выходе данные, которые приложение раскладывает по своим экранам. Это меняет требования к модели: важна не красота текста, а надёжность структуры и скорость.

Почему Claude Haiku, а не GPT-4 или Sonnet

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

Критерий Claude Haiku Claude Sonnet GPT-4 класс
Задержка на разбор секунды, ощущается мгновенно заметно дольше заметно дольше
Цена за разбор копейки, не жалко на каждый ввод в разы дороже в разы дороже
Дисциплина JSON стабильно держит схему стабильно стабильно
Нужна ли глубина рассуждений нет, задача механическая избыточна избыточна
Итог для этой задачи оптимум переплата переплата

Логика такая: если пользователь наговаривает день по несколько раз в сутки, каждый разбор должен быть дешёвым и быстрым, иначе продукт либо тормозит, либо разоряет меня на API. Haiku закрывает оба требования. Разбор потока в задачи — это классификация и сегментация, а не сочинение эссе. Брать сюда тяжёлую модель всё равно что возить продукты на грузовике: доедешь, но дорого и медленно.

Про сам подход к выбору и интеграции моделей я подробнее писал в гайде Adding AI Features (Claude/GPT) to Your Product: там про то, как встроить ИИ в существующий продукт без переписывания всего.

Что оказалось сложным в цепочке «голос → структура»

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

Границы задач в сплошной речи

Люди не говорят пунктами. Они говорят: «надо купить молока и ещё позвонить в банк насчёт карты которую заблокировали». Где здесь одна задача, а где две? «Позвонить в банк» и «разобраться с картой» — это одно дело или два шага одного? Я решал это через промпт-инструкции с примерами: модель учится не дробить связанное и не склеивать разное. Идеала нет, но экран подтверждения (о нём ниже) закрывает промахи.

Дубли и повторы

В потоке мысли человек возвращается к одному и тому же: «надо позвонить Роме… ну и с Ромой созвониться по проекту». Это одна задача, сказанная дважды. Haiku дедуплицирует, но грань между «это дубль» и «это два разных созвона» тонкая. Здесь помогает категория и контекст: если оба упоминания про один проект, склеиваем.

Дедлайны из разговорной речи

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

Экран подтверждения вместо слепого доверия

Главный урок: нельзя молча применять то, что вернул ИИ. Пользователь должен видеть, как его слова превратились в задачи, и иметь возможность поправить одним касанием. В Lunelo после разбора показывается подтверждение: вот что я услышал, вот как разбил, согласен? По интерфейсу это дёшево, а доверие поднимает резко. Тот же принцип «ИИ предлагает, человек утверждает» я использую и в других AI-продуктах.

Почему iOS и PWA одновременно

Lunelo живёт в двух формах из одной кодовой базы: React 18 + Vite, обёрнутый в Capacitor 8 для нативного iOS. Это осознанный выбор соло-разработчика: не плодить два проекта.

iOS (нативный) PWA (веб)
Голос нативное распознавание, быстрее Whisper, точнее на десктопе
Установка из App Store ярлык на экран, без стора
Уведомления нативные пуши браузерные, где поддерживаются
Кодовая база общая: React + Vite, обёртка Capacitor

Смысл в охвате. Кто-то не хочет ставить приложение и открывает PWA по ссылке. Кто-то живёт в App Store и ставит нативную версию с пушами. Я пишу логику один раз, а отличаются только слой захвата голоса и способ доставки уведомлений. Для соло-разработчика это разница между «поддерживаю один продукт» и «разрываюсь между двумя».

Что это дало и чему научило

Lunelo подтвердил мой рабочий принцип на клиентских проектах: ИИ надо ставить точечно, туда, где он снимает конкретное трение, а не «чтобы было». В планировщике трение — это ручной ввод. Убрали ввод, получили продукт, которым пользуешься, потому что это быстрее, чем печатать.

Тот же подход я переношу в заказную разработку. Например, в подписочной йога-школе Клуб 365 при миграции с Tilda на WordPress я сохранил рабочий квиз и оплату без даунтайма, и конверсия выросла на 46%, потому что убрал трение в пути пользователя, а не добавил модных фич. AI-планировщик — та же философия, просто инструмент другой.

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

Хотите обсудить AI-фичу или продукт под ключ — напишите мне через форму, я работаю напрямую, без агентства и посредников.

Частые вопросы

Сколько стоит разработка AI-планировщика задач?

Стоимость зависит от объёма: MVP с одним AI-сценарием (голос или текст → структура) собирается быстрее и дешевле, чем полноценное приложение с iOS, PWA, уведомлениями и премиум-тарифом. Сама AI-интеграция обычно не самая дорогая часть — больше времени уходит на экраны, состояния и отладку цепочки «голос → структура». Точную оценку даю после короткого созвона про ваш сценарий.

Почему для Lunelo выбрана Claude Haiku, а не более мощная модель?

Разбор потока речи в задачи — это сегментация и классификация, а не глубокие рассуждения. Здесь важнее скорость и цена, чем «интеллект» модели. Haiku отвечает за секунды и стоит копейки на разбор, поэтому пользователь может наговаривать день сколько угодно раз без задержек и без разорения на API. Тяжёлая модель была бы переплатой без выигрыша в качестве.

Нужен ли программист, чтобы добавить голосовой AI-ввод в приложение?

Да, потому что сложность не в вызове модели, а в цепочке вокруг: захват голоса, транскрипция, жёсткий промпт под структурный вывод, валидация JSON, экран подтверждения и обработка ошибок. Готовые no-code решения ломаются на границах задач и дедлайнах из разговорной речи. Я собираю такую связку под конкретный сценарий, чтобы она работала стабильно, а не только на демо.

Можно ли встроить похожий голосовой разбор в существующий продукт?

Да. Связка «голос → ИИ → структурированные данные» переносится на любой домен: заметки, заявки, CRM, отчёты. Логика та же — Whisper или нативное распознавание для голоса, Claude или GPT для превращения текста в поля, экран подтверждения перед сохранением. Я встраиваю это в готовый продукт без переписывания всего, точечно в нужное место.

Работает ли Lunelo без интернета?

Разбор через ИИ требует сети, потому что модель работает на сервере. Само приложение как PWA и нативный iOS открывается и показывает уже созданные задачи офлайн, но новый голосовой ввод отправляется на разбор при появлении связи. Это компромисс: локальные модели пока не дают такого качества структуризации на телефоне при разумном расходе батареи.

Нужен похожий проект?

Разработаю сайт, лендинг, веб-приложение или AI-фичу под ключ — напрямую, без агентства.

Обсудить проект Смотреть кейсы