Введение
Второй пилот CLI /research Slash Command — мощный инструмент для глубоких исследований и расследования. Когда вы вводите /research и появляются детали того, что хотите узнать, Copilot активирует специализированный исследовательский агент, который собирает и обрабатывает информацию из вашей кодовой базы, из релевантных GitHub репозиториев, а также из веба. Этот встроенный кастомный агент создаёт подробный отчет по Markdown с цитатами, а также краткий обзор в CLI. Вы можете просмотреть полный отчёт и сохранить его в виде сведения на GitHub, что облегчает его распространение.
Команда разработана для предоставления исчерпывающих, хорошо цитируемых ответов на сложные вопросы о кодовых базах, API, библиотеках, архитектуре программного обеспечения и других технических темах.
Использование /research команды косой черты
В интерактивной сессии CLI входите:
/research TOPIC
/research TOPIC
Где есть описание на TOPIC естественном языке того, что вы хотите узнать?
В зависимости от предоставленных вами разрешений для CLI, Copilot может попросить разрешения на создание каталога для хранения данных во время компиляции исследований.
Когда исследование завершено, Copilot показывает вам сводку ключевых выводов и даёт ссылку на файл Markdown с полным отчётом.
Просмотр и распространение исследовательского отчёта
Вы можете воспользоваться ссылкой, отображаемой после завершения исследования, чтобы просмотреть полный отчет в вашем стандартном редакторе файлов Markdown.
Или нажмите Ctrl+Y , чтобы открыть последний исследовательский отчёт текущей сессии в терминале.
Примечание.
Приложение, используемое для отображения отчёта при нажатии Ctrl+Y , определяется значением COPILOT_EDITORпеременных , VISUAL, или EDITOR среды (в этом порядке приоритета). Если ни один из этих параметров не настроен, CLI будет использовать vi на Linux или vim на macOS.
Чтобы поделиться отчётом, вы можете либо сохранить его в файл, либо создать GitHub gist.
-
Чтобы получить суть, введите:
Copilot prompt /share gist research
/share gist researchЧтобы сохранить в файл, введите:
Copilot prompt /share file research [PATH]
/share file research [PATH]Если вы опустите этот
[PATH]параметр, файл будет сохранен в текущую рабочую папку с именем, основанным на теме исследования. -
Используйте клавиши вверх/вниз и ввод, чтобы выбрать отчёт, который хотите поделиться из списка исследовательских отчётов, созданных вами за текущую сессию.
URL сути, или путь к файлу, отображается в CLI.
Преимущества /research
-
**Глубина вместо скорости**: обычный чат оптимизирован для быстрых ответов. `/research` оптимизирован для тщательности. Он создаёт отчёты длиной в сотни строк, с архитектурными диаграммами, фрагментами кода и цитатами. -
**Сохранённый и общий вывод**: Отчёты сохраняются на диске в виде файлов Markdown. Вы можете просматривать и делиться ими в любое время. Это делает результаты исследования постоянным артефактом, а не временным сообщением в чате. -
**Работа между репозиториями**: при входе в GitHub агент может искать по репозиториям вашей организации, получать файлы из любого публичного или доступного приватного репозитория и искать в интернете — это не ограничивается вашей локальной кодовой базой. -
**Адаптация по запросу**: вместо создания стандартного универсального отчёта, формат ответа автоматически адаптируется к тому, задаёте ли вы вопрос с инструкцией, концептуальный вопрос или запрашиваете технический глубокий анализ. -
**Автономная работа**: агент никогда не прерывает вас уточняющими вопросами. Он делает разумные предположения и явно фиксирует их в разделе «Оценка доверия».
Примеры запросов для /research
Архитектура кодовой базы
/research What is the architecture of this codebase?
/research What is the architecture of this codebase?
**Почему это работает хорошо**: Исследовательский агент имеет доступ к `grep`, `glob`и `view` инструментам, соответствующим вашему текущему рабочему каталогу. Он может исследовать весь проект проекта, читать ключевые файлы и синтезировать архитектурный обзор — то, что обычный ответ чата может делать лишь поверхностно. Агент обычно создаёт архитектурные схемы, разбивки компонентов и описания потоков данных.
Как работает конкретная технология
/research How does React implement concurrent rendering?
/research How does React implement concurrent rendering?
**Почему это работает хорошо**: агент использует специализированные инструменты для извлечения информации из интернета и просмотра фактического исходного кода React на GitHub. Ему поручено отдавать приоритет коду над документацией и предоставлять пути по файлам с номерами строк.
Понимание внутренних шаблонов реализации
/research How are feature flags implemented at our organization?
/research How are feature flags implemented at our organization?
**Почему это хорошо работает**: агенту явно указано «всегда отдавать приоритет внутренним/частным реализациям публичным/открытым альтернативам» и сначала искать в репозиториях организации с `org:ORGNAME` помощью запросов. Он знает, что нужно искать внутренние паттерны именования, такие `-hub`как , `-service`, `-client`.
Сравнение технологий или подходов
/research What's the difference between JWT and session-based authentication?
/research What's the difference between JWT and session-based authentication?
**Почему это работает хорошо**: агент адаптирует свой ответ на «концептуальные/объяснительные вопросы» с нарративными объяснениями, компромиссами и дизайнерскими решениями. Обычно используются таблицы для сравнения трёх и более элементов.
Вопросы по процессу/инструкциям
/research How do I add an endpoint to the API?
/research How do I add an endpoint to the API?
**Почему это хорошо работает**: агент обучен распознавать тип запроса и предоставлять пошаговые рекомендации с ссылками на соответствующие документы, контакты и системы для вопросов по процессу и инструкции вводного текста.
Глубокое погружение в конкретный компонент кодовой базы
/research How is the session management system implemented in this repo?
/research How is the session management system implemented in this repo?
**Почему это хорошо работает**: Объединение локальных инструментов (`grep`, `glob`, `view`) с инструкциями агента по «отслеживанию импортов, вызовов и ссылок на типы» и «следования зависимостей» означает, что система пройдёт через саму реализацию, а не просто даст общий ответ.
Когда вы можете не захотеть использовать /research
-
**Быстрые, простые вопросы**: если вы просто хотите узнать: «Что делает эта функция?» или «Исправьте этот баг» — обычное сообщение в чате быстрее и уместнее. `/research` предназначен для вопросов, требующих тщательного расследования. -
**Когда нужны изменения в коде**: `/research` создаёт отчёт, а не вносит изменения. Он использует `create` этот инструмент для сохранения файла отчёта, но не использует `edit`, `bash`, или другие инструменты модификации кода. Если вам нужно, чтобы агент действительно изменил ваш код, используйте обычный запрос (обычно начиная с режима плана). -
**Временные взаимодействия**: исследование занимает больше времени, чем обычный ответ, потому что агент совершает множество вызовов инструментов (поиск кода, извлечение файлов, поиск в интернете). Если вам нужен быстрый ответ в процессе программирования, лучше использовать обычный чат.
Важные моменты и моменты, на которые стоит обратить внимание
-
**Отчёты связаны с вашей сессией**: исследовательские отчёты хранятся в специализированном исследовательском справочнике, привязанном к сессии. Если вы начнёте новую сессию, предыдущие исследования не будут доступны в CLI при использовании <kbd>ярлыка Ctrl</kbd>+<kbd>Y</kbd> или `/share` команды слэш. Однако вы можете получить доступ к предыдущим отчетам из соответствующего `~/.copilot/session-state/SESSION-ID/research/` каталога.В Linux или macOS можно использовать следующую команду в строке команд терминала, чтобы перечислить 10 самых свежих каталогов сессий CLI:
Bash ls -dtl ~/.copilot/session-state/*/ | head -10
ls -dtl ~/.copilot/session-state/*/ | head -10 -
**Исследовательский агент использует конкретную модель**: он жёстко запрограммирован для использования конкретной модели ИИ (см. [AUTOTITLE](/copilot/reference/copilot-cli-reference/cli-command-reference#built-in-agents)). Выбор модели не настраивается с помощью команды `/model` . Исследовательский агент всегда использует озаданную модель, независимо от выбранной вами модели для основной сессии. -
**Качество отчета зависит от типа запроса**: агент классифицирует ваш запрос на три типа и соответственно адаптирует свой ответ:* Вопросы по обработке → пошаговое руководство (минимальный код). * Концептуальные вопросы → повествовательное объяснение с контекстом. * Технические глубокие исследования → полные архитектурные схемы, разделы компонентов и примеры кода.
То, как вы формулируете свой запрос, может повлиять на выбор агентом классификации исследований. Например, если вы хотите технический глубокий анализ, но формулируете вопрос как «Что такое X?», вы можете получить концептуальный ответ. В такой ситуации вы можете переформулировать свой запрос, чтобы более чётко определить, какой тип отчета вы хотите создать Copilot. Например: «Дайте мне техническое глубокое погружение в X, с архитектурными диаграммами и примерами кода.»
Дополнительные материалы
-
[AUTOTITLE](/copilot/how-tos/copilot-cli) -
[AUTOTITLE](/copilot/how-tos/use-copilot-agents/use-copilot-cli)