Один разработчик, ИИ-агенты и 3790 коммитов: как форк FreeTube живёт без команды
OpenTubeX — форк FreeTube с приватным доступом к YouTube на Windows, macOS, Linux и Android — развивается силами одного человека и ИИ-агентов. За десять месяцев проект набрал около 3790 коммитов, 1826 принятых pull request'ов, 68 релизов и 3100 автотестов.
Разработчик не скрывает, что большая часть кода написана ИИ, и выставляет это как аргумент: при правильных правилах и жёстком тестировании один человек с агентами держит проект, который иначе потребовал бы команды.
Слово «вибкодинг» за последний год прочно обросло иронией: мол, собери приложение на обещаниях, а через месяц получишь груду кода, которую никто не может поддержать. Пример OpenTubeX из этой серии не вписывается — или, по крайней мере, делает вид, что не вписывается. Это не игрушка на вечер, а живой форк с расписанием релизов, собственной базой тестов и письменными правилами для машин.
Что вообще за приложение
OpenTubeX — открытый клиент YouTube с упором на приватность. Работает на Windows, macOS, Linux и Android, сборки для iOS существуют в экспериментальном статусе. Смотреть видео можно без рекламы и без учётной записи Google, а подписки, плейлисты и история хранятся локально — синхронизацию нужно включать отдельно.
Проект стартовал 30 декабря 2025 года как форк FreeTube, и с тех пор его ведёт один человек. Для категории «Телефоны» это, разумеется, лишь часть картины: клиент кроссплатформенный, но именно Android-версия делает его альтернативой мобильным обёрткам над YouTube, где реклама и трекинг считаются нормой.
Цифры, которые всё-таки впечатляют
На 29 октября 2026 года, то есть за десять месяцев после форка:
- около 3790 коммитов поверх upstream-версии;
- 1826 принятых pull request'ов;
- 68 релизов;
- примерно 3100 end-to-end-тестов в 400 spec-файлах, и они гоняются не по мокам, а против собранного Electron-приложения.
Разложим на человеческий темп. 1826 PR за десять месяцев — это примерно шесть штук в день, включая выходные. Один программист вручную такой график не удержит, а вот программа, где человек ставит задачу и проверяет результат, а машина пишет и оформляет изменения, — вполне.
Тут честно надо оговориться: это самоподсчёты автора проекта, и ни один независимый инструмент их не перепроверял. Коммит и pull request — единица работы, а не единица качества. Но объём как объём: сравнивать есть с чем даже у зрелых open-source-проектов.
Правила живут в файле
Главный организационный приём — файл AGENTS.md в корне репозитория. Каждый агент читает его перед стартом. Сейчас это 87 строк, и файл менялся 63 раза. Логика простая: агент что-то напутал — добавляем правило, чтобы следующий не наступил на те же грабли.
Файл покрывает тесты, pull request'ы, переводы, проверки интерфейса и обновления зависимостей. Два правила из него стоит привести — они лучше любых презентаций показывают, где ИИ спотыкается.
Покажи результат. За любое визуальное изменение агент обязан приложить скриншот, а если речь про анимацию или взаимодействие — короткую запись. Зелёные тесты не отвечают на вопрос, выглядит ли интерфейс прилично. Простое наблюдение, но это ровно та дыра, в которую проваливаются все «сделал задачу, тесты прошли» отчёты.
Тестируй в нескольких масштабах интерфейса. Настройка UI Scale меняет zoom-фактор Electron, поэтому координаты и смещения прокрутки легко становятся дробными. Агенты упорно принимали дробные значения за ошибку и писали вёрстку, которая работала только при 100%. Теперь тесты раскладки и прокрутки помечаются тегом @scale, а CI прогоняет их ещё и на 95% и 125%.
Второй пример особенно показателен: это не про «ИИ плохо кодит», а про то, что машину надо научить видеть ограничения среды. Один раз поймал — и правило спасает все последующие сессии.
Тесты тянут основную нагрузку
Проверить тысячи дифов глазами один человек физически не может. Значит, проверять должна машина. На каждый pull request CI запускает всю end-to-end-батарею против собранного приложения. А тесты, изменённые в конкретном PR, прогоняются пять раз подряд без повторных попыток на падение — так вылавливаются нестабильные тесты до того, как они попадут в основную ветку.
Схема логичная и, заметьте, вполне «человеческая»: её годами используют команды, которые боятся флаки-тестов. Разница лишь в масштабе — для одного разработчика такой уровень автоматизации не роскошь, а условие выживания.
Переводы: люди важнее машин
Локализацию собирают живые переводчики через Weblate. Для языков, которые ещё не готовы, приложение показывает машинный перевод, и он тут же выбрасывается, как только появляется человеческая версия. Агент, добавляющий новую строку интерфейса, пишет английский и немецкий варианты плюс автодополнения для остальных активных локалей.
Иерархия здесь расставлена правильно: ИИ закрывает дыры временно, а не претендует на финальный текст. Это, кстати, редкий случай, когда про ИИ-переводы договорились заранее, а не стали разгребать потом.
Чего в отчёте нет
Доклад — это пост разработчика, а не исследование. Он объясняет устройство процесса, но не отвечает на неудобные вопросы. Сколько багов дошло до релизов? Какова доля правок, которую приходится откатывать? Сколько времени уходит на ревью одного PR и не съедает ли проверка всё сэкономленное время? Как проект живёт с постоянными изменениями API YouTube — главной головной болью любого неофициального клиента?
Без этих цифр история остаётся впечатляющей демонстрацией метода, но не доказательством его эффективности. И всё же ключевая деталь здесь не в цифрах, а в архитектуре процесса: тесты как единственный независимый судья, письменные правила вместо устных договорённостей, обязательные скриншоты и человеческий приоритет в переводах.
Посмотреть самому
OpenTubeX находится в бета-версии. Сайт и сборки — на opentubex.org, исходники — в репозитории OpenTubeX на GitHub. Автор открыто призывает присылать баг-репорты и пожелания: для проекта, который развивается в одиночку, это не формальность, а основной канал обратной связи.
Ирония на закуску: сам пост о работе с ИИ-агентами написан при участии ИИ-ассистента и отредактирован вручную. Круг замкнулся — но, судя по количеству релизов и тестов, хотя бы не развалился.