Anthropic за пять месяцев ушла с git на Scion: 30 000 мерджей в день

Anthropic рассказала, как заменила git собственной системой контроля версий Scion. В мае 2026 компания мерджила около 2 500 изменений в день, к сентябрю их стало больше 30 000. Монорепозиторий переехал за пять месяцев, а Claude помогал писать саму систему. Инфраструктура Scion в 200 раз меньше прежней по CPU и памяти, чекауты в CI и исследовательских задачах ускорились примерно в 100 раз, а CI сэкономил 25% процессорной мощности. • Git рассчитан на офлайн-клиентов, а почти все клиенты Anthropic — агенты, которые всегда онлайн. • Коммиты, ребейзы и мерджи выполняются на сервере. • Рабочая копия необязательна: большинство запросов закрывает API.

AI-обработка оригинала Anthropic Research; редакция Hamidun News
Anthropic за пять месяцев ушла с git на Scion: 30 000 мерджей в день
Источник: Anthropic Research. Коллаж: Hamidun News.
Слушать статью
Паспорт материала и цифры
ПараметрДанные
ПервоисточникAnthropic Research ↗
Главный редактор
Ключевой факт #1Git рассчитан на офлайн-клиентов, а почти все клиенты Anthropic — агенты, которые всегда онлайн.
Ключевой факт #2Коммиты, ребейзы и мерджи выполняются на сервере.
Рабочая копия необязательнабольшинство запросов закрывает API.

В мае 2026 года Anthropic сливала в монорепозиторий около 2 500 изменений кода в день. К сентябрю цифра выросла до 30 000+. Писать код больше не проблема: Claude итерирует исследовательские циклы, оптимизирует сложные программы и поднимает сервисы с нуля. Узкое место переместилось в инфраструктуру, рассчитанную на людей: контроль версий, сборки и CI. Чтобы его расшить, компания за пять месяцев полностью перевела монорепозиторий с git на собственную систему Scion. Параллельно она сделала инструмент код-ревью Antique, поиск по коду и систему IAM для source control.

Где git перестал вмещаться

Git децентрализован: каждый клон — полноценный репозиторий, который умеет считать диффы, читать историю и работать без сети. Для большинства проектов это правильный дизайн. У Anthropic он начал мешать. История одной только ветки main занимает почти 100 ГБ, сжатая рабочая копия — больше 25 ГБ. Для CI выполняется порядка 25 млн чекаутов в день, и это без учёта среды разработчиков, песочниц агентов и исследовательских задач. При наивной загрузке получилось бы свыше 600 ПБ git-трафика ежедневно.

В ход шли shallow clone, sparse checkout, promisor remotes, внутренние зеркала и снапшоты в blob-хранилище. На пике работали несколько сотен git-зеркал. Они выигрывали время, но с ростом merge rate их становилось сложнее держать. Снапшоты отставали от вершины main, а diff и blame на частичных клонах требовали всё больше ухода. Вывод команды: git использовался как централизованная система с одной авторитетной копией, а клиентами были агенты и джобы, которые онлайн по определению. Свойства, ценные для офлайн-работы, тормозили масштабирование.

Как устроен Scion

Единицей работы в Scion служит changeset, запись в write-ahead log. Вместо указателя на дерево он хранит список изменённых относительно первого родителя файлов и адресуемые по содержимому ссылки на сжатые данные в blob-хранилище. Changeset создаётся на сервере и сразу доступен везде. Пакфайлов, блокировок и межсерверной координации нет. Ref, если нужен, двигается как compare-and-swap по одной строке в Spanner, отдельно от создания changeset.

На вопросы вроде «кто последним менял строку» отвечают производные данные: структуры для blame, истории путей и skip-листы графа коммитов. Каждый тип определяется рекурсивно через значения для родителей. Его можно считать сразу или лениво, а внутреннее устройство можно менять, не трогая клиента.

Клиент scn не сообщает серверу, что у него уже есть. Он идёт от корневого дерева, запрашивает недостающие деревья, затем блобы. Каждый запрос относится к неизменяемому объекту, поэтому его обслужит любой кэш. Узел общается с локальным scion-daemon, тот берёт данные у региональных scion-cache, а те при промахе обращаются к авторитетным scion-server. Строгое разделение уровней изолирует отказы: сбой регионального кэша не должен положить центр. Sparse и виртуализированные чекауты поддерживаются без специальной логики, клиент просто не просит лишних деревьев.

Что компания называет итогами:

  • рост с 2 500 до 30 000+ мерджей в день (май — сентябрь 2026);
  • миграция монорепозитория с git за пять месяцев;
  • инфраструктура Scion в 200 раз меньше git-зеркал по CPU и памяти;
  • чекауты в CI и исследовательских задачах быстрее на два порядка: секунды вместо минут;
  • cache hit rate на каждом уровне выше 99%;
  • прирост 25% процессорной мощности только в CI.

Что из этого взять себе

Принципы Anthropic опираются на Google Piper и Meta Sapling: клиенты всегда онлайн, сервер делает тяжёлую работу, коммиты дешёвые и без блокировок, рабочая копия по желанию. Все запросы клиента доступны и как API, поэтому CI-задачам часто вообще не нужен локальный репозиторий. На этом держатся внутренние пайплайны автоматического bisect и revert, которые при больших объёмах иначе были бы непрактичны.

Сама Anthropic оговаривается, что её нагрузка необычна и многим такие проблемы в ближайшее время не грозят. Но если команда уже гоняет десятки агентов, стоит считать, сколько чекаутов в сутки она делает, во что обходятся зеркала и как далеко снапшоты уходят от вершины main. Начать можно с вынесения метаданных вроде diff, merge base и blame в сервис, как это сделали в Scion на раннем этапе миграции.

Anthropic также отмечает, что Claude Mythos Preview и Claude Tag, появившиеся внутри компании в те же месяцы, усилили потребность в Scion и ускорили его разработку.

Сюжет

Вопросы и ответы по материалу

Что известно по теме: где git перестал вмещаться?

Git децентрализован: каждый клон — полноценный репозиторий, который умеет считать диффы, читать историю и работать без сети. Для большинства проектов это правильный дизайн. У Anthropic он начал мешать. История одной только ветки main занимает почти 100 ГБ, сжатая рабочая копия — больше 25 ГБ. Для CI выполняется порядка 25 млн чекаутов в день, и это без учёта среды разработчиков, песочниц агентов и исследовательских задач. При наивной загрузке получилось бы свыше 600 ПБ git-трафика ежедневно. В ход шли shallow clone, sparse checkout, promisor remotes, внутренние зеркала и сн

Что известно по теме: как устроен Scion?

Единицей работы в Scion служит changeset, запись в write-ahead log. Вместо указателя на дерево он хранит список изменённых относительно первого родителя файлов и адресуемые по содержимому ссылки на сжатые данные в blob-хранилище. Changeset создаётся на сервере и сразу доступен везде. Пакфайлов, блокировок и межсерверной координации нет. Ref, если нужен, двигается как compare-and-swap по одной строке в Spanner, отдельно от создания changeset. На вопросы вроде «кто последним менял строку» отвечают производные данные: структуры для blame, истории путей и skip-листы графа комми

Что известно по теме: что из этого взять себе?

Принципы Anthropic опираются на Google Piper и Meta Sapling: клиенты всегда онлайн, сервер делает тяжёлую работу, коммиты дешёвые и без блокировок, рабочая копия по желанию. Все запросы клиента доступны и как API, поэтому CI-задачам часто вообще не нужен локальный репозиторий. На этом держатся внутренние пайплайны автоматического bisect и revert, которые при больших объёмах иначе были бы непрактичны. Сама Anthropic оговаривается, что её нагрузка необычна и многим такие проблемы в ближайшее время не грозят. Но если команда уже гоняет десятки агентов, стоит считать, сколько ч

ЖХ
Жемал Хамидун — CPO Alpina Digital, продакт-менеджер AlpinaGPT. Делает AI-продукты с 2019 года. Hamidun News — pet project, который вырос в production-агрегатор с 6000+ читателей.
✦ ИИ-агенты на практике · Академия & Nomad

От чтения про ИИ-агентов — к запуску своего агента за вечер

Пошаговая сборка автономных агентов и MCP-связок в Hamidun Academy (academy.hamidun.com) (72 часа бесплатно) или мгновенный запуск готовых мультишаговых агентов в облаке Nomad.

Попробовать Академию (72ч бесплатно) →Запустить Nomad Agent
Что вы думаете?
Загружаем комментарии…