Рой агентов Cursor: дешёвые модели справляются с кодом, если передовые планируют работу
Новый рой агентов от Cursor, в котором задачи распределены между планировщиками и исполнителями, успешно переписал базу данных SQLite на Rust, используя исключительно документацию и без доступа к исходному коду или интернету. Все конфигурации новой системы набрали 100% в тестовом наборе, тогда как предыдущая версия роя завалилась из-за собственных конфликтов слияния. Эксперимент показал, что более дешёвые и лёгкие модели способны выполнять большую часть кодинга, если передовые модели берут на себя планирование.
Разделение труда: планировщики и исполнители
Cursor разработала агентскую систему, в которой рой агентов разделён на две роли: планировщики и исполнители. Планировщики — это мощные, дорогие модели (frontier models), которые анализируют задачу, разбивают её на подзадачи и составляют детальный план. Исполнители — более лёгкие и дешёвые модели, которые реализуют каждую микро-задачу согласно плану. Такое разделение напоминает классическую инженерную практику: архитектор проектирует, а инженеры строят. Для российской аудитории, где многие стартапы и компании ограничены в бюджете на API крупных моделей, этот подход особенно интересен: он позволяет экономить на каждом запросе, не жертвуя качеством конечного результата.
Эксперимент: переписывание SQLite на Rust
Для проверки гипотезы Cursor выбрала сложную задачу: переписать SQLite на Rust, используя только официальную документацию SQLite, без доступа к исходному коду на C и без интернета. SQLite — одна из самых распространённых встраиваемых баз данных, её кодовая база содержит более 150 тысяч строк на C. Переписать её на Rust с нуля — задача, требующая глубокого понимания как самой базы данных, так и языка Rust. Агентам нужно было не только написать рабочий код, но и обеспечить совместимость с существующими тестами. Новая система с планировщиками и исполнителями прошла все тесты на 100%, выполнив задачу без единой ошибки. При этом в разных конфигурациях роя использовались разные комбинации моделей, но результат оставался стабильным.
Почему старый рой провалился
Предыдущая версия роя агентов, где все агенты были равны и не имели чёткого разделения ролей, не смогла справиться с задачей. Основная проблема — конфликты слияния, которые агенты сами же и создавали. Когда несколько агентов одновременно вносят изменения в код, без координации они могут перезаписывать друг друга, создавать дублирующий код или нарушать целостность проекта. В случае с переписыванием SQLite старый рой порождал множество веток, которые невозможно было объединить. Это классическая проблема распределённых систем без централизованного планирования. Новая архитектура решает её, оставляя планирование за одной сильной моделью, а выполнение — за множеством слабых.
Значение для разработки AI-агентов
Эксперимент Cursor демонстрирует важный принцип: не все задачи требуют самой дорогой модели. При грамотной декомпозиции до 80-90% кода может быть написано дешёвыми моделями, а дорогие используются только для сложных архитектурных решений. Это может существенно снизить стоимость разработки с помощью AI-агентов. Для российских компаний, которые часто работают с ограниченными вычислительными ресурсами или используют менее доступные модели из-за санкционных ограничений, такой подход открывает новые возможности. Вместо того чтобы гнаться за самыми мощными моделями, можно сосредоточиться на организации эффективного роя агентов.
Выводы
Новый рой агентов Cursor доказал, что разделение труда между планировщиками и исполнителями позволяет решать сложные задачи по переписыванию кода намного эффективнее, чем однородные рои. Пока передовые модели планируют, дешёвые модели могут выполнять львиную долю работы. Это не только экономит ресурсы, но и повышает надёжность: исключаются конфликты слияния, которые характерны для нескоординированных агентов. Для разработчиков, использующих AI-агентов, стоит внедрять подобную архитектуру, чтобы масштабировать сложность проектов без пропорционального роста затрат.