Начало работы с режимом агент Copilot от GitHub

С помощью режима агент Copilot GitHub в Visual Studio можно использовать естественный язык для указания высокоуровневой задачи. ИИ определяет шаги, вносит изменения кода, выполняет команды терминала, вызывает средства и применяет изменения в базе кода. Он отслеживает результаты, такие как результаты сборки, сбои модульного теста или выходные данные инструментов и выполняет итерацию по мере необходимости.

В отличие от режима запроса, режим агента не останавливается после одного ответа. Он продолжает выполняться и уточнять шаги, пока не достигнете цели в запросе или не потребуется больше входных данных.

Prerequisites

Использование режима агента

В режиме агента Copilot работает автономно и определяет соответствующий контекст запроса.

Выполните следующие действия, чтобы приступить к работе:

  1. Откройте окно Copilot Chat, выберите Ask, чтобы развернуть раскрывающийся список режима, а затем выберите Agent.

Скриншот селектора режима агента Copilot.

Screenshot с селектором режима агент Copilot.

  1. Введите запрос, а затем нажмите кнопку "Отправить " или выберите клавишу ВВОД , чтобы отправить ее. Вы можете указать высокий уровень требования, и вам не нужно указывать файлы, над которыми нужно работать.

  2. Режим агента может вызывать несколько инструментов для выполнения различных задач. При необходимости выберите значок "Сервис" , чтобы настроить дополнительные средства, которые агент может использовать для реагирования на запрос.

Снимок экрана: дополнительные средства, которые используются в режиме агента.

Снимок экрана: дополнительные средства, которые используются в режиме агента.

  1. Copilot запрашивает подтверждение перед выполнением команды терминала или использованием средства, которое не является встроенным.

Снимок экрана, показывающий команды для утверждения агента.

Снимок экрана, показывающий утверждение команды агента.

  1. Copilot автоматически обнаруживает проблемы в изменениях кода или командах терминала, а затем выполняет действия. Процесс повторяется до устранения проблем.

  2. Пока Copilot обрабатывает ваш запрос, он передает вносимые изменения кода прямо в редакторе. Просмотрите предложенные изменения и выполните следующие действия.

    • Сохраняйте или отменяйте предложенные изменения в целом в окне чата.

Снимок экрана: список предлагаемых изменений.

Снимок экрана: список предлагаемых изменений.

Просмотрите отдельные диффы файлов и примените их выборочно.

  1. Чтобы просмотреть отдельные изменения кода, внесенные агентом, просмотрите конкретные изменения на каждом шаге.

Скриншот, показывающий доступ к отдельным изменениям с помощью агент Copilot.

  1. Чтобы просмотреть изменения отдельного кода, внесенные агентом, используйте один из следующих вариантов:

    • Просмотрите конкретные изменения на каждом шаге.

Скриншот, показывающий доступ к отдельным изменениям с помощью агент Copilot.

Просмотрите все изменения с момента, когда вы в последний раз сохранили или отменили изменения.

Скриншот, показывающий, как получить доступ к накопительным дифференциальным изменениям с агентом Copilot.

  1. Продолжайте итерацию изменений кода, чтобы уточнить изменения или реализовать дополнительные функции.

Общие сведения о средствах режима агента

Режим агента может использовать следующие средства для реагирования на запрос:

Подсказка

Visual Studio также включает встроенные агенты, такие как @debug, @profiler, @test и @vs, которые интегрируются с определенными функциями интегрированной среды разработки. В режиме агента @debug может направлять воспроизведение ошибок, инструментирование и сбор телеметрии, а также проверку исправлений. Вы также можете создавать настраиваемые агенты для рабочих процессов команды. Дополнительные сведения см. в разделе Использовать настраиваемые агенты в GitHub Copilot.

Чтобы просмотреть средства, доступные в режиме агента, и управлять ими, выберите значок "Сервис " в окне чата.

Screenshot, показывающий селектор инструментов для агент Copilot.

Screenshot, показывающий селектор инструментов для агент Copilot.

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

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

средство find_symbol (инструмент для поиска символов)

Средство find_symbol обеспечивает навигацию символов с поддержкой языка непосредственно в режим агента. При включении Copilot автоматически использует find_symbol:

  • Поиск всех ссылок на символы в проекте
  • Доступ к метаданным, таким как сведения о типах, объявлениях и области видимости

Снимок экрана, который показывает инструмент find_symbol, выбранный на панели Copilot Chat.

После включения инструмента Copilot автоматически использует его при ответах на вопросы или предложениях изменений в коде.

Скриншот, на котором показано, как Copilot с использованием инструмента find_symbol анализирует и изменяет код в нескольких файлах.

Поддерживаемые языки включают C++, C#, Razor и TypeScript, а также любой другой язык, для которого установлено поддерживаемое расширение протокола LSP.

Для проектов C++ режим агента также может использовать средства C++ для навигации по иерархиям вызовов и классов. Дополнительные сведения см. в средствах редактирования кода C++.

Для получения наилучших результатов напишите четкие запросы и используйте модели ИИ, поддерживающие вызовы инструментов. Дополнительные сведения о возможностях моделей см. в статье ai model comparison (GitHub Docs).

Средства редактирования кода C++

Если средства редактирования кода C++ включены в списке Tools в Copilot Chat, режим агента может использовать следующие средства для Visual Studio:

  • get_symbol_call_hierarchy для обхода иерархий вызовов
  • get_symbol_class_hierarchy для навигации по иерархиям классов и типов

Эти средства помогают агенту анализировать взаимосвязи в C++, чтобы он мог принимать более точные решения при навигации и редактировании. Чтобы использовать эти средства, установите рабочую нагрузку Разработка классических приложений на C++. После того как эти средства доступны и включены, режим агента автоматически использует их при необходимости.

Управление утверждениями инструментов

Когда Copilot вызывает средство, он запрашивает подтверждение запуска средства. Причина заключается в том, что средства могут выполняться локально на компьютере и выполнять действия, изменяющие файлы или данные.

Скриншот, показывающий запрос на подтверждение утилиты.

Скриншот, показывающий запрос на подтверждение утилиты.

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

Вы можете сбросить выборы подтверждения в панели Параметры инструментов. Разверните раздел Все настройки>GitHub>Copilot>Tools.

Снимок экрана с параметрами вызова средства GitHub Copilot в Visual Studio.

Вы можете сбросить выбор подтверждения инструментов в диалоговом окне Инструменты>Параметры. Разверните раздел GitHub>Copilot>Tools.

Скриншот настроек вызова средства GitHub Copilot.

Принятие или отмена правок

Copilot перечисляет измененные файлы в списке изменений Total в окне чата.

Снимок экрана: список измененных файлов.

Снимок экрана: список измененных файлов.

Выберите каждый файл, чтобы просмотреть изменения по отдельности. Вы можете сохранить или отменить изменения, внесенные в каждый блок кода.

Кроме того, в списке общих изменений выберите "Сохранить " или "Отменить " для всех изменений, внесенных с момента последнего выбора "Сохранить " или "Отменить".

Подсказка

Начиная с версии 18.6 Visual Studio 2026, вы можете использовать представление сводки различий по нескольким файлам, чтобы просматривать все изменения Copilot в нескольких файлах на одной вкладке с элементами управления для выборочного принятия и отмены изменений.

Восстановление правок

При запросе изменений кода может потребоваться вернуть некоторые изменения. Чтобы вернуться, нажмите кнопку "Восстановить рядом с контрольной точкой" перед запросом, включающим изменения, которые не нужны.

Снимок экрана, показывающий отмену изменений.

Снимок экрана, показывающий отмену изменений.

В настоящее время агент Visual Studio Copilot не поддерживает пошаговую отмену или повтор.

Прерывание запроса режима агента

Чтобы прервать текущий запрос, его можно отменить. Отмена запроса останавливает все запущенные средства и команды терминала.

Чтобы остановить сборку, выберите " Сборка " на верхней панели инструментов и нажмите кнопку "Отмена". Или используйте сочетание клавиш CTRL+Break .

Планирование в режиме агента

Это важно

Планирование в режиме агента — это рабочий процесс планирования в сеансе в режиме агента. Для более удобного и специализированного планирования используйте агент Plan, доступный как отдельный режим чата. Он создает план перед реализацией, а затем передает его с помощью плана реализации.

Planning в режиме агента позволяет Copilot разбить сложные или многоэтапные запросы на структурированные, отслеживаемые задачи перед выполнением.

При активном планировании Copilot:

  • Создает план markdown для пользователя , который определяет цели и ход выполнения.
  • Поддерживает внутренний план JSON (plan-{sessionId}.json) в виде блокнота, читаемого LLM, для отслеживания шагов, рассуждения и координации.

Эта структура помогает Copilot оставаться согласованным, обновлять план динамически и предоставлять разработчикам возможность видеть, что он делает.

Принцип работы

Анализ запросов

Если для задачи требуется несколько шагов, Copilot входит в режим планирования.

Создание плана

  • План Markdown: описывает задачу, шаги и ход выполнения в доступном для чтения формате.
  • План JSON: структурированный формат, читабельный для LLM, который фиксирует тот же план в форме, разбираемой машиной. Этот JSON-файл позволяет Copilot обновлять и интерпретировать план стабильно на разных этапах.

Выполнение и итерация

Copilot выполняет каждый шаг плана, обновляя оба файла по мере продолжения.

  • План Markdown обновляется заметно в редакторе.
  • План JSON развивается за кулисами, когда Copilot уточняет, переупорядочивает или адаптирует шаги.

Хранение

Оба файла хранятся в C:\Users\username\AppData\Local\Temp\VisualStudio\copilot-vs.

Средства, используемые в планировании

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

Tool Description
план Создает исходный структурированный план из запроса пользователя.
адаптировать_план Уточняет или корректирует план на основе нового контекста или обратной связи.
обновить_продвижение_плана Обновляет состояние завершения шага и синхронизирует состояние плана.
запись_наблюдения Записывает результаты среды выполнения или аналитические сведения, влияющие на следующие действия.
завершить_план Завершает план после завершения всех шагов.

Эти средства позволяют Copilot управлять многоэтапными рабочими процессами постепенно, поддерживать состояние выполнения и оставаться в соответствии с намерением пользователя.

Включение средств планирования и управление ими

Чтобы включить планирование, выполните приведенные ниже действия.

  1. Откройте панель Tools>Options и разверните раздел All Settings>GitHub>Copilot>Copilot Chat.

  2. Установите флажок "Включить планирование ".

Чтобы включить Planning в Visual Studio 2022 версии 17.14 или более поздней версии:

  1. Откройте диалоговое окно Tools>Options и разверните диалоговое окно GitHub>Copilot.

  2. Установите флажок "Включить планирование" и нажмите кнопку "ОК".

После включения планирования средства планирования отображаются в списке инструментов в окне чата:

Снимок экрана: группа средств планирования со всеми вложенными инструментами, включенными в режиме агента.

Вы можете выборочно отключить набор средств планирования непосредственно в списке инструментов в окне чата. Если вам нужно отключить средства планирования, отключите все средства, а не только один. Изменения применяются немедленно к текущему сеансу чата.

Подсказка

Отключение отдельных средств позволяет экспериментировать с различными поведениями планирования или выполнять отладку конкретных шагов во время разработки.

Ограничения

  • Система временно сохраняет планы и удаляет их при завершении сеанса, если их не сохранить вручную.
  • Отслеживание структурированного состояния вносит небольшую дополнительную задержку.
  • Некоторые специализированные агенты пока не поддерживают планирование.

Создание плана перед реализацией

Если вы хотите согласовать подход, прежде чем вносить изменения в код, используйте агент GitHub Copilot планирования. Агент плана изучает базу кода с помощью инструментов только для чтения, проектирует план .copilot/plans/реализации и позволяет уточнить этот план, прежде чем передавать его в режим агента с помощью плана реализации.

Часто задаваемые вопросы

Какая видимость имеет режим агента в моих файлах?

Режим агента может управлять только следующими способами:

  • Локальные файлы, которые являются частью решения.
  • Локальные файлы, которые находятся в открытом каталоге решения или его подкаталогах.

Режим агента не может получить доступ к файлам и каталогам, исключенным с помощью исключения файлов.

Для команд терминала режим агента имеет те же разрешения, что и запущенный процесс Visual Studio и не ограничивается предыдущими ограничениями. Внимательно просмотрите предложенные команды терминала перед их запуском.

Я не вижу параметры Ask, Plan или Agent в окне Copilot Chat

Выполните следующие действия по устранению неполадок в указанном порядке:

  1. Убедитесь, что вы используете Visual Studio 17.14 или более поздней версии.

    • Проверьте версию Help>About Visual Studio.

    • Если вы не используете версию 17.14 или более поздней, откройте установщик Visual Studio и обновите сборку.

  2. Убедитесь, что выбран режим включения агента в области чата .

    В области Tools>Options разверните раздел All Settings>GitHub>Copilot>Copilot Chat, и убедитесь, что выбран параметр.

    В диалоговом окне Tools>Options разверните раздел GitHub>Copilot и убедитесь, что выбран параметр в разделе Copilot Chat.

  3. Попробуйте перезапустить Visual Studio.

Когда следует использовать режим вопросов, агент планирования или режим агента?

  • Используйте режим с запросом, если вы хотите убедиться, что изменения кода не выполняются, если вы явно не нажимаете кнопку "Применить " или скопируйте и вставьте код самостоятельно.
  • Используйте агент Plan agent, если вы хотите, чтобы Copilot изучил базу кода, задал уточняющие вопросы и создал план реализации, который можно проверить, до начала каких-либо изменений в коде.
  • Используйте режим агента для обработки одинаковых концептуальных вопросов и создания примеров кода без применения их, а также возможностей агента для редактирования кода.
  • Если вы хотите использовать возможности MCP, необходимо выбрать режим агента.

Что произошло с редактором правок Copilot в Visual Studio?

Режим агента представляет собой эволюцию Copilot Edits, с большей способностью работать с ошибками, использовать инструменты и автоматически применять изменения кода.

Для первоначального выпуска Visual Studio 2022 версии 17.14 функция Copilot Edits все еще доступна, если параметр Enable Agent mode в области чата не выбран. Проверьте параметр в диалоговом окне Tools>Options в разделе GitHub>Copilot>Copilot Chat.

Как администратор может управлять использованием режима агента для Visual Studio пользователей?

Администраторы управляют режимом агента в Visual Studio с помощью флага Editor preview features на панели управления GitHub Copilot. Если администратор отключает этот параметр, пользователи в этой подписке не могут использовать режим агента в Visual Studio.

Дополнительные сведения см. в разделе Управляемые политики и функции для GitHub Copilot в организации.