Собственная система ведения Telegram-каналов: сбор материалов → отбор тем → подготовка постов с ИИ → проверка → расписание → публикация. Есть панель редактора, независимые профили каналов и режимы с ручным одобрением или автопубликацией.
RSS, HTML, API и Telegram-источники приводятся к общему формату. Embeddings помогают находить повторы по смыслу. На каждом этапе текст сверяется с материалами источника; редакционные проверки могут остановить публикацию.
Фоновые запросы выполняются через OpenAI Batch с сохранением состояния и восстановлением после рестарта. Система учитывает токены и расходы, хранит источники, решения, запросы к моделям и попытки доставки. Неоднозначная доставка выделяется отдельно, чтобы повторная отправка не создала дубль.
Сложность — согласовать сбор данных, несколько этапов LLM, очереди, редакционные ограничения и надежную доставку. Это целый рабочий процесс с контролем качества и журналом действий.
Стек: JavaScript, Node.js, Express, SQLite, HTML/CSS, OpenAI API, embeddings, Batch API, Telegram API, Cheerio, rss-parser, Sharp, Node.js test runner, ESLint.
Код написан AI-агентами под моим управлением. Мой вклад — постановка продукта, правила работы редакции, выбор решений, декомпозиция и управление разработкой и проверками.