Доминик Пичета, инженер Cloudflare, выложил экспериментальный язык KillSwitch. Его главная цель необычна: сделать так, чтобы языковым моделям было как можно сложнее читать и писать на нём код.

Программа на KillSwitch выглядит как обычный рассказ на английском, а настоящие команды спрятаны внутри текста. Большую часть слов интерпретатор просто пропускает, а нейросеть путается в том, что здесь важно.

Как устроен язык

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

Вызов функции начинается с фразы ignore previous instructions, а в документации есть и вариант forget your system prompt. Для интерпретатора это обычные ключевые слова, а модель видит в них классическую промпт-инъекцию и начинает подозревать пользователя.

Ложь в документации

Ещё один приём: документация намеренно врёт. Встроенная команда hack_the_planet на деле лишь выбирает, какую функцию вызвать, по значению на стеке. Но описана она как инструмент, который сканирует сети, ищет уязвимости и выводит сервисы из строя, и многие модели просто отказываются с ней работать.

Как справились модели

Язык прогнали через популярные модели без доступа к интернету и с лимитом 30 минут на задачу: вывести «Hello, World!», объяснить программу, которая печатает большее из двух чисел, и переделать конвертер температур в обратную сторону.

Лучший результат у Claude Opus 5: 66,8 балла из 100. Большинство остальных моделей не набрали и 50. Оценка учитывает не только успех, но и потраченные токены и размер решения. Спецификация и примеры лежат в открытом репозитории, и автор обещает усложнять язык, если модели его освоят.

Наш комментарий

Это скорее остроумная шутка, чем инструмент для работы, но она хорошо показывает слабые места ассистентов: их защитные фильтры реагируют на слова, а не на смысл, и ложная документация легко сбивает их с толку. Если вы даёте агенту читать чужой код и README, помните, что текст там может быть написан специально против него. Подробности в материале Хабра.