4 Направляющий 5 Почти архитектор ~9 мин

Параллельная работа с ИИ-агентом: как ускорить вайбкодинг

Заставь агента работать бригадой, а не одинокой улиткой

Параллельное выполнение задач с ИИ-агентом: какие куски кода можно делать разом, что строго по очереди и как не словить конфликт двух агентов в одном файле.

Скиллы ECC в этом уроке: parallel-execution-optimizer

Что такое параллельное выполнение простыми словами

Представь ремонт. Можно нанять одного мастера: он красит стены, потом кладёт плитку, потом собирает шкаф. По очереди. Всю неделю. А можно позвать бригаду: маляр работает в зале, плиточник - на кухне, сборщик возится в спальне. Всё разом. Объём тот же. А времени в три раза меньше.

С ИИ-агентом история один в один. Обычно мы гоняем его как одинокого мастера: сделай это, потом то, потом вон то. Но его можно научить раскидывать независимые куски так, чтобы они шли параллельно. Это и есть параллельное выполнение .

Один уставший робот-мастер делает всё по очереди против слаженной бригады роботов, работающей одновременно
Слева - один агент по очереди. Справа - та же работа дорожками, разом.

Зачем вайбкодеру уметь распараллеливать задачи

Ты вайбкодер. Код руками не пишешь - ты режиссёр процесса. И если понимаешь, как раскидывать работу по дорожкам, то выигрываешь сразу на всех фронтах:

  • результат приходит в разы быстрее - пять проверок за время одной;
  • ты не киснешь у экрана, пока агент полчаса гоняет тесты - за это время делается что-то ещё;
  • ты не устраиваешь аварий, когда два потока лезут в один и тот же файл;
  • ты умеешь сказать «сделай быстро» так, чтобы это реально ускорило, а не сломало.

Разница между «просидел весь вечер над одной задачей» и «всё было готово за час» - это чаще всего разница в одном навыке: видеть, что можно делать разом, а что нельзя. Поехали.

Как агент строит карту дорожек

Главный фокус опытного агента: превратить спешку в карту зависимостей ещё до того, как он начал что-то делать. Не бросаться в бой. А сначала задать себе вопрос: какие куски независимы, а какие держатся друг за друга?

Шаг 1. Назови цель и «сигнал готовности»

Прежде чем дробить работу, агент решает: что вообще надо получить и по какому признаку понятно, что готово. Без этого «быстро» легко превращается в «быстро сделал не то». А переделывать всегда дольше.

Шаг 2. Разрежь работу на дорожки

Дорожка - это один самостоятельный кусок. Осмотреть проект - дорожка. Поправить кнопку на сайте - дорожка. Прогнать тесты - тоже дорожка. Чем чётче нарезка, тем понятнее, что с чем не пересекается.

Шаг 3. Помечай каждую дорожку

У каждой дорожки три варианта судьбы:

  • Параллельная - можно делать прямо сейчас, никому не мешает.
  • По очереди - идёт только после другой. Нельзя красить стену, пока её не оштукатурили.
  • Жди сигнала - запускается лишь после твоего подтверждения, потому что опасная. Например, деплой в прод.

Шаг 4. Читать - толпой, писать - по одному

Вот оно, золотое правило всего урока. Любые чтения - осмотреть файлы, поискать по коду, проверить статус, глянуть пару сайтов - можно запускать пачкой разом: они друг другу не мешают. А вот записи - правки файлов - держи порознь: разные файлы, разные ветки, разные папки. Иначе два потока перепишут одно и то же. И будет каша.

Схема дорожек: несколько стрелок-чтений идут параллельно, а записи разведены по разным файлам, опасное за шлагбаумом
Карта дорожек: чтения идут пачкой, записи разведены, опасное - за шлагбаумом.

Шаг 5. Долгое - в фон

Тесты, сборка, заливка данных, деплой бывают долгими. Опытный агент кидает их в фон и потом поглядывает, а не караулит прогресс-бар. Пока тесты крутятся, можно успеть пробежать ещё одну дорожку. Время не простаивает.

Что можно делать параллельно, а что только по очереди

Смело параллелим
  • Чтения и поиск: осмотреть проект, найти по коду, глянуть статус - всё пачкой сразу.
  • Правки в разных файлах, которые между собой не пересекаются.
  • Несколько проверок разом: линтер, тесты, скриншот сайта.
  • Большие независимые куски - в изолированных рабочих копиях (worktree).
Только по очереди и с подтверждением
  • Две правки в одном и том же файле - гарантированный конфликт.
  • Опасные команды: удаление, миграции базы, заливка в прод - только с подтверждением.
  • Запись в одну и ту же таблицу из двух потоков сразу.
  • Шаг, который зависит от итога другого - сначала первый, потом второй.

Пример: как параллельно проверить проект перед публикацией

Ты просишь агента: «проверь мой сайт перед публикацией». Наивный путь - он всё делает по очереди: минут пять читает код, потом запускает тесты и ждёт, потом открывает сайт и смотрит, потом проверяет ссылки. Двадцать минут. И всё это время ты гипнотизируешь экран.

А теперь как поступит понимающий вайбкодер. Сначала - карта дорожек:

Промпт - скопируй и попробуй

Мне нужно быстро проверить проект перед публикацией. Сначала составь план дорожек, не торопись действовать.

  1. Раздели работу на независимые дорожки и для каждой укажи: можно ли делать её параллельно, что она затрагивает и как понять, что она прошла.
  2. Все дорожки только на чтение и проверку запусти разом: осмотр файлов, поиск по коду, проверка статуса.
  3. Длинные проверки, вроде тестов и сборки, запусти в фоне и потом вернись за результатом.
  4. Ничего не удаляй, не правь и не публикуй без моего отдельного подтверждения.
  5. В конце дай таблицу: какая дорожка прошла, какая упала и что именно ты проверил.

Частые ошибки при распараллеливании задач

  • Кричать «быстрее» без плана. Скорость даёт карта дорожек, а не понукание. Сначала раздели работу - потом ускоряйся.
  • Параллелить записи в один файл. Классическая авария: два потока перепишут друг друга. Писать - по одному, без исключений.
  • Параллелить опасное. Удаление, миграции, деплой в прод - никогда не запускай пачкой без подтверждения. Один неверный шаг здесь стоит дорого.
  • Запустить в фоне и забыть. Процесс крутится, агент рапортует «готово» - а там ошибка. Всегда возвращайся за результатом.
  • Путать «быстро» с «готово». Пять дорожек пролетели - это ещё не успех. Успех - когда проверка показала, что всё сходится.
  • Прятать пропущенные проверки за бодрым отчётом. «Всё ок!» без таблицы - красный флаг. Требуй конкретику: что прошло, что упало.
Мем: два робота вцепились в один файл и тянут в разные стороны, бумага рвётся
Когда решил, что «параллельно» - это два агента в одном файле.

TL;DR - если коротко

  • Скорость берётся не из «давай быстрее», а из умения делать независимые куски разом. Сначала карта, потом газ.
  • Золотое правило: читать можно толпой, писать - по одному. Два агента в одном файле = драка.
  • Режь работу на дорожки и помечай каждую: параллельная, по очереди или «жди сигнала».
  • Долгое - тесты, сборку, деплой - кидай в фон и поглядывай. Не сиди столбом у экрана.
  • «Быстро» не равно «готово». В финале - таблица проверки, а не бодрое «вроде работает».
  • Опасное - удаление, миграции, прод - никогда не параллелим. Только за подтверждением.

Поиск по вики

Нажмите Esc для закрытия

Введите запрос для мгновенного поиска по всем страницам курсов и уроков.