Чому архітектура з двома «мозками»?

Більшість помічників для написання коду використовують одну модель, яка має одночасно вирішувати, що саме будувати, і писати вихідний код. Під час тривалих сесій контекстне вікно моделі заповнюється, що спричиняє «дрейф контексту» — вона забуває про попередні рішення та видає суперечливий або дубльований код. Cursor вирішує цю проблему, розділяючи ментальне навантаження:

  • Агенти-планувальники працюють на найпотужніших моделях (у чернетці згадуються Opus 4.8 або Fable 5). Вони розбивають запит високого рівня на ієрархію завдань, усувають неоднозначності та фіксують архітектурні рішення.
  • Агенти-виконавці працюють на швидших моделях з високою пропускною здатністю (Composer 2.5). Вони отримують конкретні завдання від планувальників і генерують фрагменти коду.

Розділення «що» і «як» запобігає перевантаженню, яке гальмує системи на основі однієї моделі. Кожна модель залишається в межах обсягу контексту, що відповідає її ролі, уникаючи вичерпання токенного бюджету, яке змушує розробників скорочувати промпти.

Масштабування рою

Перші версії рою Cursor обробляли близько тисячі комітів на годину. Після переробки за принципом «двомозкової» архітектури система досягла приблизно тисячі комітів на секунду. Така швидкість виявила нове вузьке місце: інструменти контролю версій не були розраховані на таку конкуренцію. Коли два планувальники видавали перекривні інструкції, у репозиторії могла з'явитися дубльована логіка — проблема, яку команда називає «помилками розділеного мозку» (split-brain errors).

Cursor приборкав хаос за допомогою трьох засобів захисту:

  1. Спільні проєктні документи — кожен планувальник записує свої рішення в центральний документ, пов'язаний із генерованим кодом. Виконавці слідують цим посиланням, тому одна й та сама архітектура не створюється повторно в іншому місці.
  2. Багатоаспектні перевірки — три агенти перевіряють різні аспекти роботи (повний транскрипт, лише результат або лише код). Така перехресна перевірка виявляє невідповідності, які можна пропустити при односторонньому погляді.
  3. Самостійно оновлювані інструкції — агенти ведуть «папку знань» із несподіваними знахідками та пастками. Коли починає роботу новий виконавець, він звертається до цієї папки, щоб уникнути повторення відомих помилок, що забезпечує наявність короткострокової пам'яті в усьому рої.

Ці заходи дозволяють підтримувати цілісність кодової бази, попри потік змін.

Бенчмарки, які мають значення

Cursor протестував гібридний рій, переписавши весь посібник SQLite — 835-сторінкову реалізацію на Rust — завдання, що вимагає високої точності та врахування обсягу. Результати були вражаючими:

  • Точність — гібридна конфігурація (планувальник + виконавці Composer) досягла 100 % точності, стабільно перевершуючи результати одиночного запуску найсучаснішої згаданої моделі (GPT-5.5).
  • Обсяг коду — гібридний рій створив 9 908 рядків коду рушія, проти 64 305 рядків у старішому монолітному рої.
  • Вартість — запуск одного екземпляра GPT-5.5 коштував близько 10 565 доларів. Гібридний підхід витратив лише 411 доларів на парк виконавців.

Різниця в ціні зумовлена використанням Composer 2.5, який, згідно з чернеткою, забезпечує продуктивність, порівнянну з флагманськими моделями, при цьому вартість за мільйон токенів становить лише частку від ціни інших моделей. Переносячи більшу частину споживання токенів на цю дешевшу модель, рій підтримує низькі загальні витрати без втрати якості.

Підсумок

  • Поєднання потужного планувальника з дешевим виконавцем дає перевагу в швидкості, компактності коду та вартості на кілька порядків.
  • Архітектура усуває дрейф контексту, призначаючи завдання «що» передовим моделям, а «як» — спеціалізованим моделям.
  • Операційні витрати та вимоги до інфраструктури залишаються найбільшими перешкодами для широкого впровадження.