Расплата за vibe coding: GitHub внедрил ручное одобрение публикаций в npm

3 мин
Расплата за vibe coding: GitHub внедрил ручное одобрение публикаций в npm

GitHub 20 мая 2026 смержил команду npm stage в npm CLI версии 11.15.0 и обновил документацию реестра. Привычная команда npm publish теперь только отправляет пакет в очередь — чтобы он стал доступен миллионам разработчиков, мейнтейнеру нужно дополнительно подтвердить выпуск с двухфакторкой. Это первое серьезное изменение модели публикации за всю историю npm — реестра, через который ежедневно проходят миллиарды загрузок и от которого зависит почти весь современный JavaScript-стек.

Технически процесс трехшаговый. Сначала разработчик запускает npm stage publish — двухфакторка тут не нужна, и пакет уходит в очередь. Потом любой мейнтейнер смотрит, что туда улетело: через CLI командой npm stage view <id>или на вкладке Staged Packages на сайте npmjs.com. И только команда npm stage approve <id> с подтверждением 2FA делает пакет публичным. Работает это и с автоматической публикацией из CI/CD: даже если сборочный конвейер залил в очередь что-то странное, оно повисит там, пока живой человек не посмотрит и не одобрит. Минимальные требования — Node.js 22.14.0.

Главный повод — серия атак Shai-Hulud. В 2025 году кампания украла больше $50 млн и заразила приблизительно 25 000 репозиториев: злоумышленники крали токены мейнтейнеров, выпускали под их аккаунтами вредоносные версии популярных библиотек, а те собирали токены следующих жертв и публиковали себя дальше. В декабре GitHub официально признал, что мгновенная публикация — архитектурная дыра, и анонсировал серию мер. В мае 2026 свежая волна Mini Shai-Hulud от группы Team PCP ударила по @tanstack/react-router (12 млн скачиваний в неделю) и другим библиотекам в экосистемах npm и PyPI.

Параллельно растет второй вектор — slopsquatting. Термин в апреле 2025 ввел Сет Ларсон из Python Software Foundation для атак нового типа: LLM при генерации кода выдумывают несуществующие имена пакетов, потому что они звучат правдоподобно — а атакующие эти выдумки регистрируют первыми, с вредоносным кодом внутри. Исследование USENIX Security 2025 на 576 000 примерах кода и 16 моделях показало, что 19,7% рекомендованных пакетов в реальности не существуют, причем 43% галлюцинаций устойчиво повторяются на одном промпте десять раз подряд. То есть атакующему достаточно прогнать сто запросов к ChatGPT или Claude, собрать список повторяющихся выдумок и зарегистрировать их заранее. В январе 2026 фейковый пакет react-codeshift — смесь реальных jscodeshift и react-codemod, которые LLM перепутал в голове — разошелся по 237 репозиториям через AI-сгенерированные файлы навыков для агентов (agent skills) — инструкции, которые схема подтягивает себе в контекст. И это рифмуется с vibe coding: авторы массово копируют пакеты из ответов LLM и выкатывают исходник в прод, почти не проверяя зависимости.

Staged publishing встраивает человека обратно в процесс, который AI-агенты вроде Claude Code или Cursor раньше могли проходить полностью автономно: от написания кода до выкладки в реестр. Эра мгновенной публикации в npm закончилась ровно тогда, когда индустрия как раз училась передавать машинам все больше задач. Кому-то это покажется откатом, кому-то — необходимым тормозом перед следующим Shai-Hulud.

P.S. Поддержать меня можно подпиской на канал "сбежавшая нейросеть", где я рассказываю про ИИ с творческой стороны.

Читают сейчас

Отчет KPMG про агентный ИИ создал текст ИИ. Он похвалил сам себя и наврал почти во всех ссылках

27 минут назад

Отчет KPMG про агентный ИИ создал текст ИИ. Он похвалил сам себя и наврал почти во всех ссылках

Аудиторская организация KPMG, одна из "крупный четверки", отозвала свой отчет о пользе агентного ИИ — после того как стало известно, что сам документ оказался наглядной демонстрацией главной проблемы

Google отключил оператор inurl

1 час назад

Google отключил оператор inurl

Ранее Google ограничил количество результатов поиска по оператору site, а теперь полностью отключил и inurl — поисковый оператор, который позволял находить документы содержащие нужную последовательнос

Вышло апдейт мультиплатформенного проекта RevPDF 4.5 — альтернатива Adobe Acrobat

1 час назад

Вышло апдейт мультиплатформенного проекта RevPDF 4.5 — альтернатива Adobe Acrobat

13 июня 2026 года состоялся версия мультиплатформенного проекта RevPDF 4.5. Это маленький, бесплатный, работающий в автономном режиме редактор PDF-файлов с возможностью редактирования текста, скрытия

Microsoft выпустила версию PowerToys 0.100.0

4 часа назад

Microsoft выпустила версию PowerToys 0.100.0

Организация Microsoft выпустила PowerToys версии 0.100.0. Выпуск содержит исправления и улучшения для нескольких модулей, а наиболее важные изменения касаются повышения производительности, уменьшения

Апдейт Telegram: форматирование ботов и Markdown-файлы

5 часов назад

Апдейт Telegram: форматирование ботов и Markdown-файлы

Telegram опубликовал крупное обновление с десятками новых функций, в том числе с поддержкой мессенджера на смарт-часах, в том числе с Wear OS, а также опциями для ботов, групп и встроенного браузера.