Разработка функций
Теперь, когда вы разобрались в кодовой базе, пора создавать что-то новое.
Чтобы выпускать функции с помощью агентов, разбивайте работу на этапы, которые агент может проверять самостоятельно. Начинайте разработку каждой крупной функции с плана, а затем задавайте нужные ограничения, чтобы агент мог находить и исправлять собственные ошибки.
Начните с плана
Агенты помогут вам продумать, что создать, прежде чем писать код.
Перед написанием кода нужно принять множество решений. Если у вас есть идея для функции, возможно, сначала стоит создать её простую версию, а затем дорабатывать её. Или, возможно, нужно учесть конкретные решения по дизайну.
Вы можете использовать кодовых агентов, чтобы продумать эти решения перед написанием кода. В Plan Mode Cursor агент изучит вашу кодовую базу, задаст уточняющие вопросы и составит пошаговый план, который вы сможете редактировать и изменять.
Когда вы отправляете промпт в режим планирования, агент сначала задаёт вопросы, чтобы определить требования:
После ваших ответов агент создаёт структурированный план с этапами, которые он сможет проверять и подтверждать в процессе создания функции. Этот план можно редактировать, поэтому вы можете внести изменения, если что-то выглядит не так:
Настройки уведомлений
Обзор
Добавить страницу настроек уведомлений в пользовательские настройки. Пользователи могут включать и отключать уведомления по email, push и в приложении для каждой категории (маркетинг, обновления продукта, предупреждения безо��асности). Настройки хранятся в базе данных с оптимистичными обновлениями UI.
Подход
Задачи
Cursor делает планы полезными, разбивая крупные запросы на более мелкие, независимо проверяемые шаги. На каждом шаге агент может оценить свой прогресс, подтвердить успешное завершение шага и продолжить.
Когда стоит начать заново
Иногда Agent создаёт не совсем то, что нужно. Вместо того чтобы пытаться исправить результат последующими промптами, вернитесь к плану. Откатите изменения и сделайте план более конкретным, прежде чем запускать его снова.
Например, если вы упустили важную деталь архитектуры или проектирования системы, план может привести к неправильному результату. Начать заново с плана может показаться нелогичным, но зачастую это быстрее, чем исправлять подход, изначально заданный в неверном направлении.
Разработка через тестирование с агентами
Агенты работают лучше всего, когда могут определить, правильно ли работает их код. Если тест не проходит, агент видит, что пошло не так, и может попробовать ещё раз.
Инженеры давно используют разработку через тестирование, но это не всегда был самым популярным подходом к написанию кода. С агентами гораздо проще сначала писать тесты, и по мере роста кодовой базы они приносят всё больше пользы.
- Сначала напишите тесты. Попросите агента написать тесты на основе ожидаемых входных и выходных данных. Явно укажите, что вы используете TDD, чтобы он не создавал функции-заглушки для кода, которого ещё нет.
- Убедитесь, что тесты не проходят. Попросите агента запустить тесты и проверить, что они завершаются ошибкой. На этом этапе вы не пишете код функции.
- Закоммитьте тесты. Когда вас устраивают покрытие тестами и их качество, закоммитьте их. Так вы фиксируете требования, на основе которых агент будет писать код.
- Попросите агента написать код. Скажите ему, чтобы он добился прохождения всех тестов, не изменяя сами тесты. Продолжайте итерации, пока все тесты не будут проходить.
- Закоммитьте код. Проведите ревью результата, убедитесь, что он работает как ожидается, и закоммитьте его.
После коммита тестов попросите агента написать код. Явно укажите, что он должен добиться прохождения всех тестов, не изменяя их.
Почему это работает так хорошо? Потому что агент может запускать тесты, видеть ошибки, исправлять свой код и пробовать снова. Каждый запуск тестов даёт агенту конкретную обратную связь. Без тестов он не может узнать, работают ли внесённые им изменения в коде.
Этот подход особенно ценен для backend-кода, где нельзя проверить корректность, просто посмотрев на экран. Вы описываете ожидаемое поведение в тестах, а агент пишет код в соответствии с ним.
Почему в процессе TDD с агентами следует закоммитить тесты, прежде чем просить агента написать код?
От дизайна к коду
Агенты могут обрабатывать и понимать изображения. Вставьте скриншот или макет прямо в поле промпта — агент сможет воспроизвести дизайн по изображению.
Это работает для:
- Макетов: Вставьте вайрфрейм или экспорт из Figma и попросите агента создать компонент
- Визуальной отладки: Сделайте скриншот неожиданного состояния UI и попросите агента разобраться
- Итераций: Сделайте скриншот текущего результата и опишите, что нужно изменить
Вы также можете подключить сервер MCP для Figma, чтобы агент мог получать токены дизайна, переменные и спецификации компонентов прямо из файлов Figma.
Встроенный браузер позволяет просматривать изменения по мере того, как агент их вносит. В нём агент может переходить между страницами, делать скриншоты и проверять собственный визуальный результат. Это избавляет от необходимости вручную передавать скриншоты агенту.
Распространённая ошибка: разработка без проверки
Главный риск быстрой разработки функций — пропустить проверку. Агент может быстро генерировать много кода, но скорость без корректности может привести к дополнительной работе в дальнейшем.
Вот несколько способов помочь агенту проверить свою работу:
- Тесты для проверки логики и поведения
- Проверка типов для проверки структуры
- Линтеры для соблюдения стиля кода и шаблонов
- Инструменты браузера или MCP‑серверы для получения обратной связи об изменениях в UI
Если агент не может проверить свои выходные данные, вам придётся потратить больше времени на исправления.
Что дальше
Вы выпустили функцию. Но в ПО бывают баги, и некоторые из них сложно найти. В следующей главе вы узнаете о систематических подходах к поиску и исправлению багов с помощью агентов.