Vibecoding: Claude Code, Codex, Cursor и agentic developmentИнструменты и рабочая средаКонцепции: провайдеры, агенты, интерфейсы

Концепции: провайдеры, агенты, интерфейсы

Уроки курсаКонцепции: провайдеры, агенты, интерфейсы

Спектр автономности

Внутри одного класса инструментов агенты могут вести себя очень по-разному: одни предлагают следующую строку кода, другие самостоятельно проходят длинные многошаговые задачи с минимальным участием разработчика. Это различие в уровне автономности — пожалуй, самый практически важный параметр при выборе инструмента под конкретную задачу.

От подсказки до Pull Request

На одном конце спектра находится автодополнение — то, с чего начинался AI в IDE. Copilot Tab, Cursor Tab, инлайн-подсказки Windsurf: модель смотрит на несколько строк выше курсора и предлагает продолжение. Никакого планирования, никаких команд, никакого понимания архитектуры проекта. Быстро, ненавязчиво, хорошо работает для шаблонного кода.

Следующий уровень — интерактивный чат-агент. Cursor chat, Cline в стандартном режиме: мы формулируем задачу, агент предлагает изменения, мы одобряем каждый шаг. Цикл остаётся под нашим контролем — агент не делает ничего без явного разрешения.

Принципиально другая модель — агентный цикл (agentic loop). Claude Code и OpenCode работают именно так: мы описываем задачу один раз, агент самостоятельно планирует последовательность действий, читает нужные файлы, выбирает инструменты, вносит правки, запускает тесты и исправляет ошибки. Цикл повторяется до тех пор, пока задача не выполнена или агент не упирается в неопределённость, требующую уточнения. Мы включаемся не на каждом шаге, а по мере необходимости.

На другом конце спектра — асинхронный агент. В этом режиме, который наиболее характерен для Codex, мы описываем задачу, агент выполняет её в изолированном контейнере с минимальным участием с нашей стороны, и на выходе появляется Pull Request. При этом процесс не полностью непрозрачен: можно следить за логами, просматривать промежуточный диф и итерировать до создания PR. Акцент здесь — на делегировании, а не на полной изоляции.

Важная оговорка: это спектр, а не жёсткая классификация. Современные инструменты активно движутся к гибридным моделям — Cursor добавил фоновые агенты, Claude Code развивает мультиагентные команды, Codex поддерживает интерактивные итерации. Граница между «агентным циклом» и «асинхронным агентом» будет становиться всё более условной.

Автономность и пропускная способность

У каждого уровня спектра есть своя ставка — контроль против скорости. Автодополнение и интерактивный чат дают высокий контроль над каждым изменением, но ограничивают пропускную способность: мы лично участвуем в каждом шаге. Агентный цикл и асинхронный режим дают высокую пропускную способность — агент работает параллельно, пока мы занимаемся другим — но снижают прямой контроль над процессом.

Это не значит, что высокая автономность всегда лучше. Исследования показывают, что агенты хорошо справляются с хорошо задокументированными, конкретными задачами — и заметно хуже с размытыми требованиями или архитектурными решениями, которые нужно принимать по ходу. Выбор уровня автономности — это всегда осознанный компромисс под конкретную задачу, а не вопрос «чем больше, тем лучше».

Есть и практический риск, который стоит называть прямо: автономный агент с достаточными правами может удалять файлы, менять зависимости и ломать работающий код — особенно при неточной постановке задачи. Чем выше автономность, тем важнее точность формулировки и тем дороже обходится ошибка в задании. Агент, ушедший в неверном направлении на двадцать минут, хуже интерактивного режима, где недопонимание всплыло бы на первом же шаге. Именно этому — как формулировать задачи для агентов — посвящён отдельный урок курса.

Итоги урока

Мы рассмотрели архитектуру, на которой строится весь ландшафт AI-инструментов. Провайдер, модель и агент — три независимых слоя, и понимание их разделения позволяет осознанно выбирать инструменты, а не полагаться на маркетинговые описания. Агенты делятся по типу интерфейса — IDE-форки, расширения, CLI-агенты, облачные агенты — и каждый класс оптимизирован под разные сценарии работы. Поверх этого накладывается спектр автономности: от строчки автодополнения до PR, сгенерированного без нашего участия. Эти три оси — провайдер/инструмент, тип интерфейса, уровень автономности — и есть карта, по которой мы будем ориентироваться во всех следующих уроках.