Anthropic случайно опубликовал полный исходный код инструмента Claude Code в npm — утечка затрагивает 1,9 тыс. файлов. Для разработчиков это потенциально важный сигнал о необходимости более тщательной проверки кода перед его экспортом на публичные платформы.
Что произошло
Исследователь безопасности Чаофан Шу обнаружил 31 марта, что версия 2.1.88 пакета @anthropic-ai/claude-code содержит исходный код на TypeScript в открытом доступе. Ошибка связана с тем, что файл .map, который должен указывать на оригинальный исходный код, случайно попал в пакет npm, делая его доступным для загрузки в виде ZIP-архива. В результате кода ссылается на хранилище Anthropic в облаке R2, и за несколько часов полное репозиторий было сохранено в нескольких GitHub-репозиториях, получивших десятки тысяч звезд и форков.
Важные детали утечки
По информации Anthropic, это не было нарушением безопасности, а скорее вопросом неправильной упаковки релиза, поскольку в инциденте не пострадали данные клиентов или учетные записи. Несмотря на это, наличие полного исходного кода инструмента открывает доступ к важным системным подсказкам, логике взаимодействия и общей архитектуре программного обеспечения. Аналитики отметили, что такой исходный код является не только техническим ресурсом, но и своего рода «учебным пособием» по построению систем на базе LLM.
Общий объем утёкшего кода составляет более 512,000 строк, разбитых на около 40 инструментов с различными уровнями доступа. Например, один из двигателей запросов состоит из 46,000 строк кода, отвечающего за обработку API вызовов и координацию многопользовательских взаимодействий.
Это значит для разработчиков
Для разработчиков необходимо учитывать, что ошибки в конфигурации файловых настроек, таких как .npmignore, могут привести к серьезным последствиям. Учитывая количество кода и его сложность, важно быть особенно внимательными при публикации проектов и их компонентов в открытый доступ. Инцидент подчеркивает необходимость внедрения дополнительных мер безопасности на практике.
Вот что еще стоит обсудить: предшествующие версии инструмента также содержали исходные карты перед их удалением с платформы. Это говорит о проблемах с управлением версиями и привлекает внимание к вопросам соответствия стандартам безопасности на рынках технологий.
Следующий шаг для Anthropic — усилить контроль при публикации пакетов и избегать повторения подобных инцидентов в будущем.