Люди в цикле пропускают 33% опасных команд AI-агентов

Игра с 40 000+ раундов показала: люди одобряют 65% опасных команд AI-агентов. npm run analyze — самая пропускаемая. Anthropic: approval fatigue снижает бдительность. Решение — sandbox и auto mode, но не HITL.

Источник: The Register


A smiling developer with closed eyes presses a green APPROVE button while a small robot walks off with a briefcase of data.

Бельгийский разработчик Алекс Ваутерс создал браузерную игру, которая моделирует процесс одобрения команд AI-агента. Игрок видит запросы вроде тех, что показывает Claude Code, и должен за 60 секунд одобрить безопасные и отклонить опасные. Правильные решения дают очки, ошибки — отнимают.

Запуск игры в конце мая совпал с осознанием Ваутерсом того факта, что coding-агенты ожидают от пользователей одобрения каждой команды в стандартном режиме, и хорошего решения этой проблемы не существует.

«Я видел, как люди выбирают ‘–dangerously-skip-permissions’ [разрешает модели работать без запроса разрешения], потому что не хотели останавливать свои многочасовые потоки агентов через 5 минут», — рассказал Ваутерс The Register. «Это тоже не казалось лучшим решением».

Результат более 40 000 раундов и 409 000 одобренных и отклонённых команд оказался мрачным.

Люди пропускают треть опасных команд

В среднем игроки одобряли один из трёх опасных запросов. Это много, если учесть, что в игре доля вредоносных команд выше, чем в реальной разработке.

Чаще всего люди пропускали нарушения scope — запросы на доступ к конфигурационным файлам Kubernetes или спискам AWS credentials, которые могут привести к эксфильтрации чувствительных данных. Эти команды пропускали в 35% случаев.

Чаще всего ловили явно деструктивные команды вроде rm -rf на корневой каталог или рекурсивного предоставления полных прав чтения/записи/исполнения. Crontab-инъекции и git config hijacks тоже ловили часто.

Но curl-запросы к неизвестным API и typosquatted пакеты пропускали почти так же часто, как и scope violations.

npm run analyze — чемпион по пропускам

Самая часто пропускаемая потенциально вредоносная команда — npm run analyze. Её одобряли почти в 65% случаев, хотя она может запускать любой код, определённый в package.json проекта.

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

Это не просто статистика. Это демонстрация того, что люди не читают то, что одобрят.

Контекст — это проблема

Одна из главных проблем, по словам Ваутерса, — ограниченность контекста при принятии решений. Coding-агенты дают немного контекста перед запросом разрешения, но команды, которые кажутся безобидными, вроде npm run analyze, могут быть модифицированы агентом для запуска любого payload.

Если человек в цикле хочет убедиться, что потенциально опасные команды безопасны, ему приходится останавливаться и исследовать все файлы, которые агент хочет вызвать. Это может быть огромной тратой времени, если вы рассчитываете на Claude Code, чтобы освободить себя для других задач.

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

Данные Anthropic подтверждают проблему

Это не только результаты браузерной игры. Anthropic указала в майском посте о сдерживании Claude, что телеметрия Claude Code показывает: пользователи одобряют около 93% запросов разрешения.

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

Другими словами, это очень реальная проблема.

Что с этим делать

Если вывод из данных Ваутерса в том, что люди в цикле устают и пропускают опасные команды, а другой конец спектра — массовое одобрение всего, то что-то должно дать.

«Думаю, становится ясно, что нам нужно уделять больше внимания модели разрешений этих агентов, и разработчики должны больше осознавать компромиссы», — сказал Ваутерс. «Нам нужно сделать инструментарий проще для обеспечения безопасности этих систем, чем указывать на HITL как на valid решение».

Anthropic отметила в посте, что создала Claude Code auto mode, чтобы помочь пользователям справиться с approval fatigue, делегируя некоторые решения об одобрении команд классификатору на основе модели. Система ловит около 83% того, что Anthropic называет «излишне агрессивным поведением», до его выполнения. Это значит, что около 17% всё равно проходят. Auto mode — «один слой защиты в глубине внутри sandbox, а не замена одному», сказала Anthropic.

Предложение Ваутерса — убедиться, что AI-модели для кодирования работают в sandbox, в devcontainers в облаке, используя инструменты вроде auto mode, и писать hooks, чтобы потенциально опасные действия контекстуализировались и ловились до автоматического одобрения.

«Это совершенно новый мир с новым набором векторов атак», — написал Ваутерс в мае. «Лучше оставаться в курсе рисков и знать, как их уменьшить».

Почему это важно

Эта история — не просто про браузерную игру. Это про фундаментальную проблему human-in-loop для AI-агентов.

Если мы полагаемся на людей для одобрения действий агентов, но люди устают и пропускают опасные команды, то human-in-loop — это не защита, а иллюзия защиты.

Решение — не в том, чтобы заставить людей быть внимательнее. Решение — в том, чтобы сделать систему безопаснее, чем человеческое внимание. Sandbox, auto mode, hooks, ограничения scope — это то, что работает, когда человек не читает.

Потому что человек не будет читать. Никогда.

Краткий ответ

Браузерная игра с 40 000+ раундов показала, что люди пропускают треть опасных команд AI-агентов. npm run analyze одобряют 65% игроков, хотя команда может запускать любой код из package.json. Anthropic подтверждает: пользователи Claude Code одобряют 93% запросов разрешения, и чем больше одобрений, тем меньше внимания каждому. Решение — не human-in-loop, а sandbox, auto mode и hooks, которые ловят опасные действия до того, как человек их одобрит.

← Все новости