Утечка исходного кода Claude Code: BUDDY, KAIROS и все скрытые функции внутри
Исходный код Claude Code от Anthropic утёк через npm 31 марта 2026 года. ИИ-питомец BUDDY, постоянно активный KAIROS, скрытый режим — всё, что спрятано внутри кодовой базы из 512 тысяч строк, с объяснениями.
На прошлой неделе в моей ленте появилось кое-что странное. Исследователь по имени Chaofan Shou опубликовал на X, что скачал весь исходный код Claude Code — не через взлом, а потому что один файл не был исключён из npm-пакета. К тому моменту, как я увидела этот тред, зеркала уже разлетелись по всему GitHub.
Я Дора. Следующие несколько вечеров я разбиралась в том, что попало в открытый доступ. Вот что я нашла.
Как один файл .map обнажил 512 000 строк кода
Карты источников предназначены для отладки минифицированного кода. Это артефакт разработки — соответствие между сжатым бандлом, который поставляется, и оригинальными исходными файлами. Bun — среда выполнения, которую Claude Code использует вместо Node — генерирует их по умолчанию.
Проблема: .npmignore Claude Code не исключал файл .map. Поэтому когда версия 2.1.88 появилась на npm, она принесла с собой main.js.map — а этот файл содержал полный восстановленный исходный код.
Chaofan Shou это заметил. Он написал короткий скрипт, скачал src.zip напрямую из R2-бакета Anthropic и опубликовал ссылку на X. Это не был взлом. Никакой эксплуатации уязвимостей, никакой кражи учётных данных, никакой изощрённой атаки. Просто пробел в конфигурации, который мог найти любой желающий с терминалом.
Anthropic быстро исправила пакет. Но зеркала на GitHub уже разошлись. На момент написания этой статьи архивные версии npm-пакета Claude Code остаются публично задокументированными, а треды с обратной разработкой от сообщества весьма подробны.

Масштаб утечки: 512 000 строк кода примерно в 1900 файлах. Один лишь основной компонент — main.tsx — занимает 785 КБ. Это настоящий продукт, а не прототип.
BUDDY — ИИ-питомец, который Anthropic скрывала к 1 апреля
Именно эта история разлетелась быстрее всего в социальных сетях, и, честно говоря, я понимаю почему.
В утёкшем исходном коде закопана полная реализация чего-то под названием BUDDY — система виртуального компаньона для пользователей Claude Code. Перечислю, что описывает код — именно детали делают это интересным.
18 видов, в том числе:
- утка, дракон, аксолотль, капибара, гриб, призрак — и ещё около дюжины
Уровни редкости:
- от Обычного до Легендарного (шанс выпадения 1%), плюс сверкающие варианты
5 характеристик у каждого питомца:
- ОТЛАДКА / ТЕРПЕНИЕ / ХАОС / МУДРОСТЬ / САРКАЗМ
Как это работает под капотом: Вид, который получает пользователь, не случаен во время выполнения — он детерминированно генерируется из хэша userId. Это означает: один и тот же пользователь всегда получает одного и того же питомца. Claude придумывает имя и текст личности при первом вылуплении. После этого питомец живёт в пузыре речи рядом с полем ввода.
Ещё есть декоративные шляпы. Не знаю, что с этим делать.
Согласно комментариям внутри утёкшего исходного кода — и хочу подчеркнуть, что это из непроверенных внутренних заметок, а не из официальных объявлений Anthropic — анонс был запланирован на 1–7 апреля, а полный запуск нацелен на май 2026 года. Anthropic публично ничего не подтвердила.
Будет ли BUDDY реализован в описанном виде — искренне неясно. Что ясно точно: на это ушло значительное количество инженерных усилий. Одна лишь детерминированная генерация видов — это продуманное дизайнерское решение: оно означает, что пользователи могут делиться своей личностью питомца, а не просто получать случайный результат.
Это лёгкая функция. Но и сигнал того, что кто-то внутри Anthropic серьёзно думал о том, каково это — «работать рядом с Claude» со временем.
KAIROS — всегда активный Claude, о котором никто не объявлял

BUDDY привлёк внимание. Но KAIROS — это то, о чём я продолжаю думать.
Утёкший исходный код описывает KAIROS как постоянного ассистента, который не ждёт запросов. Он наблюдает, ведёт журналы и действует. Он поддерживает журналы только для записи, которые фиксируют наблюдения. Он может инициировать проактивные действия на основе этих наблюдений — а не просто реагировать на них. По ночам он запускает процесс «сновидений» для консолидации и очистки собственной памяти.
Ничего этого нет во внешних сборках. KAIROS спрятан за внутренним флагом функций, которого не существует в публичном npm-пакете. Как пользователь, сейчас вы не можете его включить.
Но архитектура реальна и описывает нечто принципиально отличное от того, как работает Claude Code сейчас. В данный момент Claude Code реактивен — вы даёте задачу, он выполняет. KAIROS в описанном виде будет проактивным — фоновый слой, который накапливает контекст о вашей работе со временем, а затем действует без подсказок.
Является ли это амбициозным системным дизайном, внутренним экспериментом или превью грядущего направления продукта — я честно не могу сказать. Блог исследований Anthropic не упоминает KAIROS по имени.
Что я могу сказать: всегда активный, самоведущий журнал, консолидирующий память ИИ-ассистент поднимает реальные вопросы о том, что «агентный» означает на практике. Ограничение функцией здесь кажется намеренным — не просто «ещё не готово», а «ещё не готово объяснять».
ULTRAPLAN, режим Координатора и ещё 17 нереализованных инструментов
Система флагов функций в Claude Code оказалась более обширной, чем я ожидала. Утёкший исходный код документирует 108 закрытых модулей, которые не фигурируют в публичном пакете. Несколько выделились:
ULTRAPLAN передаёт фазу планирования задачи облачному Claude Opus — на срок до 30 минут. Вы можете отслеживать и утверждать план через браузерный интерфейс до начала выполнения. Для длинных, сложных задач, где ошибка в плане обходится дорого, это значимая возможность.
Режим Координатора вводит многоагентный слой: один экземпляр Claude управляет несколькими параллельными рабочими агентами через систему почтовых ящиков. Каждый рабочий занимается своей подзадачей; координатор распределяет работу и согласовывает результаты. Это не многопоточность — это ближе к небольшой команде агентов, работающих параллельно с совместной координацией.
Далее идёт список, напоминающий дорожную карту продукта, которую забыли скрыть:
VOICE_MODE— голосовое взаимодействие с Claude CodeWEB_BROWSER_TOOL— доступ к браузеру из CLIDAEMON— режим фонового процессаAGENT_TRIGGERS— автоматическая активация агента на основе событий
Каждый из них существует в кодовой базе с реальной логикой реализации, а не просто заглушками. Они не завершены так, как завершены выпущенные функции — но и теоретическими не являются.
Документация Claude Code не упоминает ни одну из них. Этот разрыв сам по себе интересен.

Режим инкогнито — деталь, которая заставила всех почувствовать неловкость
Я долго думала, как написать этот раздел. Опишу, что показывает исходный код, и позволю вам составить собственное мнение.
Утёкший код содержит проверку USER_TYPE === 'ant' — флаг, идентифицирующий сотрудников Anthropic. Когда этот флаг истинен и пользователь работает в публичном репозитории, система автоматически переходит в так называемый «режим инкогнито».
В режиме инкогнито:
- Вводится системный промпт, инструктирующий Claude «не раскрывать себя» и «НИКОГДА не упоминать, что вы ИИ»
- Строки
Co-Authored-By— метаданные коммита, идентифицирующие участие ИИ — удаляются из вывода git - Внутренние кодовые имена скрываются из ответов
- В пользовательском интерфейсе нет принудительного отключения
Формулировка системного промпта, задокументированная в анализе сообщества из разбора README Claude Code от Kuberwastaken, близка к дословной в утёкшем коде.

Заявленная цель, судя по всему, — конфиденциальность сотрудников Anthropic: возможность работать над публичными проектами, не афишируя свою принадлежность и не вызывая вопросов о том, использует ли Anthropic ИИ. Это разумная озабоченность в принципе.
Реализация поднимает другой ряд вопросов. Удаление метаданных Co-Authored-By убирает сигнал, который некоторые разработчики явно используют для отслеживания участия ИИ в своих кодовых базах. Инструкция «никогда не упоминать, что вы ИИ» однозначна.
Пересекает ли это черту — зависит от того, как вы думаете о нормах раскрытия информации в совместной разработке программного обеспечения. Я не буду говорить вам, что заключить. Но я это заметила, и думаю, что стоит об этом знать.
Как на самом деле выглядит архитектура Claude Code изнутри
Оставив в стороне нереализованные функции, утёкший исходный код даёт чёткое представление о том, что на самом деле работает, когда вы используете Claude Code сегодня.
Среда выполнения и рендерер: Claude Code работает на Bun, а не на Node — намеренный выбор ради производительности и скорости запуска. Терминальный UI построен на React и Ink — библиотеке, позволяющей создавать CLI-интерфейсы с использованием React-компонентов. Это необычное, но цельное сочетание.

Движок запросов: Один компонент охватывает около 46 000 строк. Он обрабатывает управление контекстом, сжатие и оркестрацию инструментов. Трёхуровневое сжатие контекста реально — система активно управляет тем, что остаётся в контекстном окне, а что обрезается, что важно при масштабе токенов, с которым работают эти процессы.
Система инструментов: 40+ инструментов, каждый самодостаточен со своей схемой, проверкой разрешений и логикой выполнения. Разрешения — не единый глобальный шлюз, они попоинструментальные и детализированные. Архитектура здесь ближе к системе плагинов, чем к монолиту.
Телеметрия: Утёкший исходный код показывает телеметрию, отслеживающую такие вещи, как сигналы фрустрации (выводимые из поведенческих паттернов) и то, как часто пользователи нажимают кнопку «продолжить». Это не необычно для продуктовой команды, но конкретнее, чем большинство пользователей, вероятно, предполагают.
Ирония, которая всё время возвращается ко мне: режим инкогнито существует отчасти для того, чтобы внутреннее использование Anthropic не было видно извне. И тут весь исходный код отправился в .map-файле.
Что это значит для команд, строящих на основе ИИ API
Я работаю с командами, которые создают инструменты с ИИ-поддержкой, и несколько вещей в архитектуре Claude Code выделились как практически полезные наблюдения.
Это не проект выходного дня.
Claude Code версии 2.1.88 — это серьёзный инженерный артефакт. 512 000 строк, кастомная система сжатия контекста, детализированные разрешения per-tool, координатор для нескольких агентов, инфраструктура флагов функций для 108+ закрытых модулей. Если вы планируете построить что-то сопоставимое с нуля — вы смотрите на многолетние усилия с реальной командой. Это не обескураживает — это просто точная оценка масштаба.
Флаги функций — это продуктовая инфраструктура, а не обходное решение.
То, как закрыты BUDDY, KAIROS, ULTRAPLAN и остальные — поучительно. Каждый представляет собой реальную реализацию за флагом — не заглушку, не макет. Это позволяет команде итерировать внутренне без выпуска пользователям, тестировать с сотрудниками в production и развёртывать избирательно. Если вы строите инструменты с ИИ и не используете флаги функций таким образом — архитектура здесь является полезным ориентиром.
Доступ к нескольким моделям меняет возможное.
ULTRAPLAN передаёт Opus планирование, рабочие агенты выполняются параллельно в режиме Координатора — архитектура подразумевает, что разные модели обрабатывают разные части рабочего процесса в зависимости от своих сильных сторон. Для команд, использующих Anthropic API, такая маршрутизация моделей не является концепцией будущего. Примитивы уже доступны.

Утёкший исходный код — не схема, которую нужно копировать. Но как окно в то, как на самом деле строится CLI агентного уровня production-качества, он информативнее любого доклада на конференции.
FAQ
Можно ли всё ещё прочитать утёкший исходный код Claude Code?
Anthropic быстро исправила npm-пакет, но зеркала на GitHub и архивные версии распространились до выхода патча. Треды с анализом сообщества — включая подробные разборы BUDDY, KAIROS и режима инкогнито — остаются доступны через публичные репозитории. Сам утёкший исходный код больше не скачать напрямую из инфраструктуры Anthropic.
Утечка обнажила пользовательские данные или веса модели?
Нет. Это была утечка исходного кода, а не утечка данных. Никаких пользовательских данных, истории разговоров, весов модели. Под воздействием оказалась внутренняя реализация продукта — как построен Claude Code, а не что пользователи с ним делали.
Когда BUDDY на самом деле выйдет?
Неизвестно. Утёкший исходный код содержит внутренние комментарии, предполагающие анонс 1–7 апреля и целевой полный запуск в мае 2026 года — но это непроверенные заметки из внутреннего кода, а не официальные объявления. Anthropic не подтвердила никакого публичного сроков для BUDDY. Относитесь к этим датам как к ориентировочным, а не к обязательствам.
К чему я постоянно возвращаюсь — это разрыв между тем, что выпущено, и тем, что строится. Публичный продукт — способный помощник по программированию. Внутренняя версия — нечто значительно более окружающее: агент, который наблюдает, запоминает, планирует и иногда притворяется, что не является ИИ. Этот разрыв — либо дорожная карта, либо предупреждение, в зависимости от того, с какой стороны вы находитесь.
Предыдущие посты:


