Современные технологии разработки программного обеспечения стремительно изменяются под влиянием искусственного интеллекта и языковых моделей большого масштаба (LLM). В эпоху от 2022 до 2024 годов популярность набирали чат-боты на базе LLM, которые требовали сложных пользовательских интерфейсов в редакторах и постоянного вмешательства человека для выбора и управления контекстом. Однако с появлением агентных систем программирования подход к созданию кода пережил значительную трансформацию. Агенты самостоятельно извлекают и применяют нужный контекст, что убирает необходимость в громоздком визуальном интерфейсе и позволяет упростить взаимодействие с самим редактором, делая процесс более эффективным и удобным для разработчиков.В этой статье мы рассмотрим опыт настройки Visual Studio Code (VS Code) для агентного программирования с использованием агента Amp, разрабатываемого в Sourcegraph.
Обсудим, каким образом можно настроить рабочий процесс, горячие клавиши и расширения, чтобы максимально раскрыть возможности агентного подхода и улучшить качество работы с кодом.Переход от традиционного кодирования к агентному программированию приносит существенные изменения в восприятие и использование редактора кода. Раньше редактор был основным средством для написания и модификации кода вручную. Сегодня же акцент смещается в сторону взаимодействия с агентом. Автор использует Amp не просто как инструмент, а как ключевой интерфейс для генерации и изменения программного кода — практически «пишет» код через агента.
В таком режиме главное пространство редактора становится второстепенным, уступая место панели Amp и дифф-вью, которые обеспечивают комфортный просмотр и проверку изменений.Рабочий процесс строится на цикле взаимодействия с агентом: сначала предоставляется подробный запрос Amp, описывающий задачу или необходимое изменение, затем открывается дифф-вью, где можно изучить, принять или откорректировать полученный код. Дифф-вью в VS Code обладает встроенной поддержкой интеллектуальных действий – таких как переход к определению или поиск ссылок на функции и переменные, что облегчает понимание и оценку изменений прямо в интерфейсе. При необходимости нежелательные изменения корректируются либо через повторные обращения к агенту, либо вручную. Завершив ревизию, изменения коммитятся, и процесс начинается заново с нового задания.
Эта схема предполагает создание новых потоков диалога с Amp для каждой отдельной задачи, что помогает сохранять свежий и релевантный контекст, так как LLM эффективнее работают с меньшим размером загруженного контекста. Исключение делается только тогда, когда задача тесно связана с предыдущей и логично использовать уже имеющийся контекст.В рамках активной работы особую важность приобретают удобные и интуитивные горячие клавиши для доступа к основным панелям и инструментам VS Code. Для упрощения агентного кодирования рекомендуется использовать сочетания клавиш с модификаторами Command (⌘) и Option (⌥) на Mac, совместно с символами из правой части домашнего ряда клавиатуры. Приведённые комбинации обеспечивают быстрое переключение между дифф-вью, панелью проблем (diagnostics), консолью отладки и терминалом, а также фокусировку на панели Amp.
Такой подход помогает формировать мышечную память и существенно ускоряет процесс работы, исключая длительные поиски нужных окон и инструментов.Конфигурация горячих клавиш использует контексты, позволяющие одной и той же комбинацией не просто открывать нужную панель, но и закрывать её при повторном нажатии. Это делает взаимодействие гармоничным и минимизирует необходимость в движениях мыши. Например, команда cmd+alt+h переключает дифф-вью в боковой панели контроля версий, а cmd+alt+; активирует ввод запросов агенту Amp. Данные настройки можно легко импортировать в настройки VS Code через JSON-файл клавиатурных сокращений.
Использование Amp оправдывает себя не только в тандеме с редактором, но и в командной строке, где легко запускать параллельные задачи по нескольким экземплярам репозитория через tmux. Такой подход позволяет автоматизировать рутинные операции и одновременно работать над множеством более сложных функций через расширение для VS Code.При этом стоит отметить, что на сегодняшний день мнение о судьбе классических IDE разнится. Одни утверждают, что для полной интеграции AI необходимы специализированные AI-IDE, другие же говорят о скором уходе традиционных редакторов в прошлое. Практический опыт работы с Amp показывает, что классический редактор с минималистичной установкой, например, без включённого Copilot и с добавлением только полезных агентных расширений, остаётся наиболее продуктивным и комфортным инструментом.
Наблюдения автора свидетельствуют, что более 90% исходного кода создаётся именно через агента, а редактор необходим для глубокого анализа, тестирования, отладки и ревью. Неиспользуемая лишняя UI-компонентность современных AI-IDE и избыточные RAG-механики отвлекают и снижают эффективность. Простое, продуманное и оптимизированное решение с Amp в VS Code предоставляет баланс между интеллектуальным автоматизированным кодогенерированием и контролем со стороны разработчика.Будущее разработки с использованием агентов обещает дальнейшее развитие и усложнение UX, подкрепляя качество и скорость создания программного обеспечения. Интеграция более мощных языковых моделей и расширение прикладных возможностей агента будут совершенствовать рабочие процессы и открывать новые горизонты.
В этот период экспериментов и изменений крайне важно активно исследовать и адаптировать новые инструменты и методики под индивидуальные нужды.Итогом можно назвать утверждение, что агентное программирование с Amp и удобной конфигурацией VS Code становится реальным способом повысить продуктивность разработки, улучшить качество кода и снизить утомляемость. Показывая пример такой настройки и рабочего взаимодействия, автор приглашает комьюнити разработчиков делиться своими находками и опытом в этой новой парадигме. Используйте настройки горячих клавиш для быстрого доступа, доверяйте агенту генерацию кода и сохраняйте контроль через тщательную проверку изменений – и ваша работа станет более творческой, осмысленной и результативной.