Копилефт, давай до свидания!
Анастасия АнтоновскаяЕсли вы пишете код, нежно оборачивая его в копилефтную лицензию, вам лучше присесть...или прилечь.
2016 год. Я участвую в разработке программы для Сбера с ИИ как юрист. Звучит круто, если не знать, что мне было 20 лет. 2 года как я закончила школу.
Передо мной стоит задача проверить чистоту лицензий, найти весь копилефт и дать рекомендации в разработку. Тогда еще витал в воздухе этот свежий запах свободы и чистого опенсорса..
С задачей с справилась.
Сказать, что я сделала внутренний эволюционный скачок – не сказать ничего.
2026 год. Нейросети пишут код на уровне топовых разработчиков по одному только промпту. Вайбкодинг сегодня открывает пользователям новые возможности и целое кладбище error 404.
Сегодня утром я делала совсем другое, когда наткнулась на промпт анонимайзера персональных данных.
Но важно про промпт. Какой он? Подробный, с архитектурой, детекторами, списком зависимостей, сценариями тестирования. Явно написанный не с нуля, а извлечённый из уже работающего продукта. И в нём – прямое указание на PyMuPDF. Библиотека под лицензией AGPL.
Я зависла. Я на эту библиотеку покупала лицензию когда-то, а тут – просто промпт / инструкция / спецификация. Обычный "clean room design", когда мы говорим про лицензионные споры в разработке.
Но что-то здесь не так, подсказывает мне моё чутье...
Минутка ликбеза
AGPL – лицензия из семейства copyleft. Принцип такой, он еще называется "вирусный": если ты используешь код под AGPL в своём продукте и распространяешь его – будь добр, открой свой код тоже. Заразил один компонент, а открываешь всё. Вирус же!
Это неудобно для бизнеса и коммерческого распространения. Поэтому компании либо покупают коммерческую лицензию (как это делала я), либо избегают вирусный копилефт вовсе.
Но вот вопрос, который меня зацепил: а что если распространять не код, а промпт, по которому нейросеть этот код воссоздаст? Как обычное ТЗ / спецификация / инструкция. Мало ли кто, где и что прочитал. Документация же для этого и написана.
В спорах по программному коду в зарубежной практике часто мелькает понятие "clean room design". Работает это так: одна команда изучает существующий продукт и пишет функциональную спецификацию. Другая команда, не видя оригинального кода, пишет свою реализацию по этой спецификации. Результатом будет юридически чистый независимый продукт, который проходит экспертизу на антиплагиат. Кстати, именно так в 1980-х создавали BIOS-совместимые клоны, не нарушая авторских прав IBM.
А что тут. Здесь промпт выступает спецификацией, а нейросеть – та самая вторая команда. Формально схема работает.
Но в том промпте, который я нашла, был раздел <known_pitfalls> (известные баги и их фиксы):
"Ollama зависает на стриминге → везде stream: false" "gc.collect() после Natasha и ДО LLM" "OMP_THREAD_LIMIT = 1 ДО импорта pytesseract"
Такое не проектируют заранее в спецификацию будущего кода. Такое обнаруживают при отладке живого кода. Этот промпт не является спецификацией будущего продукта. Это документ, извлечённый из готового продукта, постфактум. Что не отвечает сути clean room для целей сохранения причинно-следственной связи соблюдения / ненарушения лицензионных условий кода.
В такой ситуации напрашивается термин: обратная спецификация.
И вот где ломается копилефт.
Copyleft исторически строился на допущении, что между кодом и его распространением нет посредника, который сбрасывает лицензионную оболочку. AGPL закрыла SaaS-лазейку, когда код не распространяется, но используется через сеть. Казалось, всё закрыто.
Но промпт это теперь наш новый третий сценарий, который авторы лицензий не предвидели. Да и как такое предвидеть то...)
Передача промпта не является "распространением" в смысле AGPL: нет передачи копии PyMuPDF. Промпт на разработку продукта с нуля содержит только идеи и функциональные требования, а идеи авторским правом не охраняются. Концепция clean room подтверждает, что прямое указание на AGPL-компонент в спецификации не нарушает её критериев, потому что критерий – отсутствие копирования кода и его распространение с нарушением условий лицензии, а не отсутствие знания о компонентах.
Результат сценария: я могу продать промпт, не продавая программный код. Даже так, я могу продать программный код с чистой лицензией, а на вирусную продать промпт для доработки нейросетью без необходимости приобретения лицензии у правообладателя, и без необходимости публикации всего исходного кода программы. Покупатель закинет мой промпт нейросети, получит работающий анонимайзер с PyMuPDF внутри – и окажется под AGPL уже самостоятельно, как будто написал код сам. Я – нет.
И здесь проявляется второй слой проблемы.
В 2025 году американский суд в деле Thaler v. Perlmutter подтвердил, что код, сгенерированный ИИ без существенного участия человека, не является объектом авторского права. Он не защищён. Он в public domain.
А копилефт – это механизм, встроенный в авторское право. Нет авторского права – нет и копилефтного обязательства.
Промпт как человеческое произведение защищён авторским правом сильнее, чем код, который он порождает. Продавец промпта может запретить его копирование. А сгенерированный по нему код ничей. Такой вот парадокс вырисовывается.
Что я думаю на этот счет. Если схема легитимна, любой AGPL-продукт можно упаковать в промпт и продавать его как РИД. Причём дороже, чем стоил бы сам продукт, потому что промпт защищён, код нет, а AGPL-обязательство переходит к покупателю, который теперь должен раскрывать уже свой код (he-he-he...no).
Это не серая зона. Это структурная уязвимость в архитектуре copyleft'а.
И, похоже, существующее правовое регулирование не закрывает её без концептуального пересмотра понятия "распространение" применительно к машиночитаемым инструкциям по воспроизведению охраняемых произведений.
Тема открытая. Судебной практики нет. Академических работ тоже...
Эту статью я считаю фиксацией наблюдения, а не готовым правовым анализом.
Буду рада возражениям и обсуждению, пишите. Мой канал https://t.me/legalgit.