O autor é líder de GTM de produtividade do desenvolvedor na Microsoft Europa Ocidental. GitHub Copilot faz parte desta área de negócio.
GitHub Copilot Chat é um recurso incrivelmente poderoso e útil que permite conversar com ou sobre seu código. Embora seja 100% compatível com a linguagem natural (ou seja, você pode enviar suas mensagens sem usar nenhuma sintaxe específica), aproveitar alguns recursos especiais de bate-papo pode desbloquear novos cenários de desenvolvimento assistidos por IA e aumentar significativamente sua produtividade.
Esses recursos poderosos, que você pode usar aplicando sintaxe especial, incluem participantes de bate-papo, comandos de barra e variáveis de contexto. Observe que os recursos descritos estão disponíveis no VS Code e podem não ser totalmente suportados em outros IDEs onde o GitHub Copilot Chat está disponível.
No GitHub Copilot Chat, você pode fazer referência a um dos “especialistas de domínio” com tecnologia de IA usando a sintaxe de chat convencional – acrescentando @ ao nome do participante. Os participantes do chat atualmente disponíveis são:
@workspace
: sabe tudo sobre o código em seu espaço de trabalho atualmente aberto. Este é o participante do chat com quem você provavelmente se comunicará com frequência.
@terminal
: sabe tudo sobre o terminal integrado, seu conteúdo e seu buffer.
@vscode
: conhece o editor VS Code, seus comandos e recursos. Exemplo: vamos obter informações sobre a parte de back-end do projeto ao qual acabamos de ser atribuídos, perguntando ao participante do chat @workspace
logo após abrirmos a pasta do projeto no VS Code.
Neste caso específico, você nem precisa ter os arquivos abertos no seu editor. Compare isso com a resposta que você obtém sem marcar @workspace
:
O participante do chat @workspace
é fundamental para todas as consultas de toda a solução em que você deseja que todo o código seja considerado para a resposta do chat. No entanto, isso não significa que todo o código será usado e enviado como parte do prompt. A extensão GitHub Copilot Chat no VS Code faz o possível para determinar arquivos relevantes e partes desses arquivos usando primeiro o conhecimento e a inteligência local. Você pode verificar quais arquivos e linhas de código foram usados para o prompt expandindo a linha “Referências usadas”:
Dica de produtividade: Use Ctrl-Enter (Cmd-Enter) em vez de apenas Enter após digitar sua mensagem, e a string @workspace
será inserida em sua mensagem automaticamente antes do envio.
Em muitos casos, considerar a solução completa como contexto para sua pergunta ou solicitação (usando @workspace
) é um exagero. Você pode apontar para arquivos específicos ou até mesmo partes dos arquivos em sua mensagem. Variáveis de chat podem ajudar! Use # para chamar um desta lista:
#file
: aponta para um arquivo específico em sua área de trabalho.
#codebase
: Todo o conteúdo do espaço de trabalho aberto. É semelhante a usar @workspace
e pode ser útil quando você conversa com outro agente (como @terminal
), mas ainda deseja fazer referência à solução completa.
#editor
: Código fonte na viewport do editor (parte visível).
#git
: repositório git atual: branch, remotes, caminho, etc.
#selection
: O código atualmente selecionado.
#terminalLastCommand
: último comando executado no terminal do editor.
#terminalSelection
: Seleção no terminal do editor.Exemplo: Vamos obter ajuda para melhorar nomes de métodos em um arquivo específico (e queremos garantir que todo o conteúdo do arquivo seja levado em consideração).
Dica de produtividade: Use as setas para cima e para baixo do teclado para escolher a variável de chat necessária após digitar #. No caso de #file
, use a navegação pelo teclado novamente para escolher um dos arquivos sugeridos.
Conversar com seu código usando linguagem natural é divertido, mas ter a opção de chamar ações usadas com frequência usando atalhos úteis é ainda melhor. Compare digitar a mensagem completa “Explique como o código selecionado funciona” versus digitar “/” e, em seguida, usar as setas do teclado para escolher /explain
na sobreposição pop-up.
Outro benefício de usar a sintaxe predefinida para comandos é a confiança de que GitHub Copilot entende nossa intenção 100% corretamente (a linguagem natural pode ter alguma ambiguidade).
Existem vários comandos de barra disponíveis. Você pode usá-los em conjunto com a referência ao participante do chat para fornecer o escopo desejado. Alguns dos comandos são:
/help
: Ajuda com comandos de barra disponíveis, participantes do chat, variáveis de chat e muito mais.
/doc
: gera documentação para o código.
/explain
: explique como o código funciona (ou obtenha ajuda com comandos de terminal se você acrescentar @terminal).
/fix
: otimiza e/ou corrige problemas no código.
/tests
: cria testes de unidade para o código.
/new
: crie um novo espaço de trabalho. Exemplo: vamos obter uma explicação para uma das expressões regulares em nosso código. Selecione a linha de código e use o comando de barra “ /explain
.
Dica de produtividade: experimente o GitHub Copilot Chat no modo inline em vez de ter o chat sempre aberto no painel lateral. Pressione Ctrl-I (Cmd-I) e digite sua mensagem na pequena caixa de diálogo de sobreposição que aparece logo acima da linha onde o cursor está na janela de código.
Use participantes do chat, variáveis de chat e comandos de barra para manter controle total sobre o contexto da conversa, garantir a compreensão correta e consistente de suas intenções e, por fim, conversar e codificar com mais rapidez! Comece sua avaliação gratuita do GitHub Copilot aqui: https://aka.ms/try-github-copilot
https://github.blog/changelog/2023-11-30-github-copilot-november-30th-update/
https://code.visualstudio.com/docs/copilot/copilot-chat#_chat-participants
https://devblogs.microsoft.com/visualstudio/copilot-chat-slash-commands-and-context-variables/
https://code.visualstudio.com/updates/v1_85#_terminal-agent-and-command-suggestion-improvements
https://code.visualstudio.com/updates/v1_84#_chat-agents