paint-brush
Как использовать синтаксис чата GitHub Copilot: участники чата, переменные чата и команды слэшак@webmaxru
1,139 чтения
1,139 чтения

Как использовать синтаксис чата GitHub Copilot: участники чата, переменные чата и команды слэша

к Maxim Salnikov5m2024/07/03
Read on Terminal Reader

Слишком долго; Читать

GitHub Copilot Chat — невероятно мощная и полезная функция, которая позволяет вам общаться с вашим кодом или о нем. Направьте свой вопрос или запрос, отправив сообщение одному из доступных участников чата. В чате GitHub Cop Pilot Chat вы можете сослаться на него. «экспертов предметной области» на базе искусственного интеллекта, использующих обычный синтаксис чата.
featured image - Как использовать синтаксис чата GitHub Copilot: участники чата, переменные чата и команды слэша
Maxim Salnikov HackerNoon profile picture
0-item
1-item
2-item

Автор возглавляет GTM по повышению продуктивности разработчиков в Microsoft в Западной Европе. GitHub Copilot — часть этого направления бизнеса.

GitHub Copilot Chat — невероятно мощная и полезная функция, которая позволяет вам общаться с вашим кодом или о нем. Несмотря на то, что он на 100% совместим с естественным языком (т. е. вы можете отправлять сообщения без использования какого-либо специального синтаксиса), использование некоторых специальных возможностей чата может открыть новые сценарии разработки с помощью искусственного интеллекта и значительно повысить вашу производительность.


Эти мощные функции, которые вы можете использовать, применяя специальный синтаксис, включают участников чата, команды с косой чертой и контекстные переменные. Обратите внимание, что описанные функции доступны в VS Code и могут не полностью поддерживаться в других IDE, где доступен GitHub Copilot Chat.

Направьте свой вопрос или запрос, отправив сообщение одному из доступных участников чата.

В GitHub Copilot Chat вы можете сослаться на одного из «экспертов предметной области» на базе искусственного интеллекта, используя обычный синтаксис чата — добавив @ к имени участника. Доступные на данный момент участники чата:


  • @workspace : знает все о коде в вашем рабочем пространстве, открытом в данный момент. Это участник чата, с которым вы, скорее всего, будете часто общаться.


  • @terminal : Знает все об интегрированной оболочке терминала, ее содержимом и буфере.


  • @vscode : Знает о редакторе VS Code, его командах и функциях.

Пример. Давайте получим информацию о серверной части проекта, на который нас только что назначили, спросив участника чата @workspace сразу после того, как мы откроем папку проекта в VS Code.

Давайте получим информацию о серверной части проекта, на который нас только что назначили, спросив участника чата @workspace сразу после того, как мы откроем папку проекта в VS Code.

В данном конкретном случае вам даже не нужно открывать файлы в редакторе. Сравните это с ответом, который вы получите без тега @workspace :

Сравните это с ответом, который вы получите без отметки @workspace.

Участник чата @workspace полезен для всех запросов всего решения, когда вы хотите, чтобы весь код учитывался при ответе в чате. Однако это не означает, что весь код будет использоваться и отправляться как часть приглашения. Расширение GitHub Copilot Chat в VS Code делает все возможное, чтобы определить соответствующие файлы и части этих файлов, сначала используя местные знания и аналитику. Проверить, какие файлы и строки кода использовались для подсказки, можно, развернув строку «Использованные ссылки»:

Вы можете проверить, какие файлы и строки кода использовались для подсказки, развернув строку «Использованные ссылки».

Совет по продуктивности: используйте Ctrl-Enter (Cmd-Enter) вместо простого Enter после ввода сообщения, и строка @workspace будет автоматически вставлена в ваше сообщение перед отправкой.

Будьте точны в настройке контекста, используя переменные чата

Во многих случаях рассмотрение полного решения в качестве контекста вашего вопроса или запроса (с использованием @workspace ) является излишним. Возможно, вы захотите указать на определенные файлы или даже части файлов в своем сообщении. Переменные чата могут помочь! Используйте # для вызова одного из этого списка:

  • #file : указывает на определенный файл в вашей рабочей области.


  • #codebase : Все содержимое открытой рабочей области. Это похоже на использование @workspace и может быть полезно, когда вы общаетесь с другим агентом (например, @terminal ), но все же хотите сослаться на полное решение.


  • #editor : Исходный код в окне просмотра редактора (видимая часть).


  • #git : Текущий репозиторий git: ветка, пульты, путь и т. д.


  • #selection : текущий выбранный код.


  • #terminalLastCommand : последняя команда запуска в терминале редактора.


  • #terminalSelection : Выбор в терминале редактора.

Пример: давайте получим помощь по улучшению имен методов в конкретном файле (и мы хотим убедиться, что все содержимое файла принимается во внимание).

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

Совет по повышению производительности: используйте стрелки вверх и вниз на клавиатуре, чтобы выбрать нужную переменную чата после ввода #. В случае #file снова используйте навигацию с помощью клавиатуры, чтобы выбрать один из предложенных файлов.

Быстро вызывайте наиболее часто используемые действия с помощью косой черты

Общаться с кодом на естественном языке — это весело, но еще лучше иметь возможность вызывать часто используемые действия с помощью удобных ярлыков. Сравните ввод полного сообщения «Объясните, как работает выбранный код» и ввод «/», а затем с помощью стрелок клавиатуры выберите /explain во всплывающем окне.


Еще одним преимуществом использования предопределенного синтаксиса команд является уверенность в том, что GitHub Copilot на 100 % правильно понимает наши намерения (естественный язык может иметь некоторую двусмысленность).


Доступно множество слэш-команд. Вы можете использовать их вместе со ссылкой на участника чата, чтобы обеспечить желаемую область действия. Некоторые из команд:


  • /help : справка по доступным командам слэша, участникам чата, переменным чата и т. д.


  • /doc : создать документацию для кода.


  • /explain : объясните, как работает код (или получите помощь по командам терминала, если вы добавите @terminal).


  • /fix : оптимизировать и/или исправить проблемы в коде.


  • /tests : создать модульные тесты для кода.


  • /new : Создайте новое рабочее пространство.

Пример: давайте получим объяснение одного из регулярных выражений в нашем коде. Выделите строку кода и используйте косую черту « /explain .

Давайте получим объяснение одного из регулярных выражений в нашем коде. Выделите строку кода и используйте команду косой черты «/explain.

Совет по повышению производительности: попробуйте GitHub Copilot Chat во встроенном режиме вместо того, чтобы чат всегда был открыт на боковой панели. Нажмите Ctrl-I (Cmd-I) и введите свое сообщение в небольшом диалоговом окне, которое появляется прямо над строкой, где находится курсор, в окне кода.

Краткое содержание

Используйте участников чата, переменные чата и команды с косой чертой, чтобы сохранить полный контроль над контекстом разговора, обеспечить правильное и последовательное понимание ваших намерений и, в конечном итоге, общаться и кодировать быстрее! Начните бесплатную пробную версию GitHub Copilot здесь: https://aka.ms/try-github-copilot.

Рекомендации