Вайб-кодинг головного мозга: как я за вечер собрал ИИ-бота, который спасает Obsidian от кривых PDF
Каждый, кто ведет базу знаний в Obsidian или строит свои RAG-системы на локальных документах, знает эту боль. Ты открываешь PDF (книгу, отчет, инвойс), выделяешь текст, копируешь его в Markdown... и получаешь кровавое месиво.
Таблицы превращаются в нечитаемый поток слов, заголовки ломаются, переносы строк взрывают мозг. Стандартные конвертеры вроде Pandoc часто требуют столько ручной доработки, что проще переписать всё руками.
Я решил, что с меня хватит. За один вечер, вооружившись Claude и парой чашек кофе, я «завайбкодил» Telegram-бота, который превращает любой PDF в идеальный, вылизанный Markdown, полностью готовый к импорту.
Как это работает изнутри (без душноты)
Я принципиально не хотел разворачивать тяжелые n8n-пайплайны, а решил написать всё на чистом Node.js, чтобы полностью контролировать процесс. Весь код сгенерировал Claude по моему детальному ТЗ.
Стек получился максимально минималистичным:
- Интерфейс: telegraf (бот живет в Telegram, ведь это самый удобный карманный инструмент).
- Парсер: pdf-parse для быстрого вытаскивания сырого текста.
- Мозг: API Gemini / Qwen.
- База данных: Легкий sqlite3, чтобы отслеживать лимиты пользователей.
Самая магия — в системном промпте. Я заставил нейросеть работать как профессиональный верстальщик. Она не просто выплевывает текст, она восстанавливает иерархию заголовков (#, ##), собирает списки и — главное — упаковывает хаотичные таблицы в красивый GitHub-Flavored Markdown (| --- |).
Архитектура «на коленке»
Флоу пользователя выглядит элементарно:
- Вы кидаете боту PDF-документ.
- Бот подхватывает его, вытягивает текст и отправляет ИИ-ядру.
- Нейросеть за секунды форматирует хаос в строгий Markdown.
- Бот генерирует .md файл и отправляет его вам. Вы просто закидываете его в свой Obsidian Vault. Каждая табличка, каждый список — на своих местах.
Монетизация в духе времени (Telegram Stars)
Поскольку это пет-проект, сделанный для души и проверки гипотезы, я не стал прикручивать сложные платежные шлюзы и фиатные эквайринги.
Я внедрил Telegram Stars.
- Каждый пользователь получает 3 файла бесплатно, чтобы протестировать качество парсинга на своих самых «болевых» документах.
- Если бот экономит вам часы жизни — подписка стоит символические копейки в «звездах» прямо внутри мессенджера (никаких вводов карт, оплата в один тап). Привет, App Store, мы обошли твои комиссии.
Что в итоге?
Проект занял ровно один вечер от идеи до рабочего прототипа на сервере. Век «вайб-кодинга» прекрасен: тебе больше не нужно неделями писать бойлерплейт, ты просто управляешь архитектурой и логикой продукта, пока ИИ пишет код.
Если вы тоже устали воевать с PDF-таблицами в Obsidian, забирайте инструмент в моем профиле или протестируйте сам подход — промпты для LLM сейчас умеют творить чудеса с разметкой.
Буду рад фидбеку в комментариях: какие самые жесткие PDF-файлы вы пробовали скармливать нейросетям и как решаете проблему кривого импорта?
Потестить бота можно тут: [@PDF_2_md_bot]