Cursor Agent: как поручить одну функцию и проверить изменения до принятия

Cursor Agent: как поручить одну функцию и проверить изменения до принятия

Cursor Agent может изучать проект, менять несколько файлов и запускать команды. Это ускоряет работу только тогда, когда задача ограничена, а результат проверяется вне ответа агента. Для первого опыта подойдет функция показа пароля в уже существующей форме входа.

Откройте копию небольшого проекта

Запустите Cursor, откройте корневую папку и дождитесь индексации. Проверьте git status и штатную команду запуска. Если проект не работал до агента, после правки будет трудно отделить старую проблему от новой.

Создайте ветку feature/password-toggle и исходный коммит. Не используйте рабочую основную ветку для эксперимента.

Начните с режима чтения

В Cursor есть режимы с разной самостоятельностью. Для исследования используйте Ask или другой read-only режим, если он доступен в текущей версии.

Найди форму входа и поле пароля. Ничего не меняй. Назови компонент, связанные стили и существующие тесты. Предложи минимальный план для кнопки «Показать пароль» без новой библиотеки.

Убедитесь, что агент нашел именно текущую форму, а не похожий компонент в архивной папке или примерах.

Задайте критерии функции

После анализа переключитесь в Agent и дайте точные требования:

Добавь рядом с полем пароля кнопку-переключатель. Она меняет тип поля между password и text, имеет доступное название для экранного диктора и не отправляет форму. Сохрани текущие стили. Измени только связанные файлы, не обновляй зависимости. Добавь или обнови тест, если в проекте уже есть тесты этого компонента.

Фраза «если тесты уже есть» не дает агенту повода устанавливать новый тестовый стек ради одной кнопки.

Проверяйте каждое действие

Cursor показывает предлагаемые изменения и команды. Разрешайте их по смыслу. Для этой функции не нужны сетевой доступ, миграции базы или удаление файлов.

Когда агент закончит, откройте встроенный diff. Проверьте:

• кнопка имеет type="button";

• значение пароля не сбрасывается при переключении;

• состояние можно понять не только по иконке;

• клавиша Enter по-прежнему отправляет форму;

• не изменены другие поля и общие стили.

Запустите приложение и пройдите сценарий мышью и клавиатурой. Затем выполните тесты самостоятельно.

Принимайте строки, а не пересказ

Отчет агента может утверждать, что функция доступна с клавиатуры, хотя реальная кнопка не получает фокус. Источником правды остаются diff и работающий интерфейс.

Если часть изменения полезна, а часть нет, отклоните лишние фрагменты или попросите Cursor вернуть конкретные строки. Не принимайте большой файл целиком ради одной удачной функции.

Перед коммитом выполните git diff --staged. Сообщение должно описывать функцию, например feat: add password visibility toggle.

Следующая задача должна оставаться отдельной

Не просите в той же сессии заодно изменить регистрацию и восстановление пароля. Создайте новый коммит и новый запрос. Малые границы облегчают ревью и откат.

Такой управляемый цикл хорошо переносится на разные AI-редакторы и агенты. В ИИ-лаборатории Глеба Кудрявцева разбираем этот подход уже на уровне полноценного проекта: от постановки небольшой задачи и проверки diff до работы с Git, базой, деплоем и безопасностью. Здесь важен не конкретный инструмент вроде Cursor, а сама логика управляемой разработки с AI.

Функцию можно принять, когда она соответствует всем критериям, diff не содержит побочных правок, интерфейс проверен руками, а Git сохраняет понятную точку возврата.