Introdução
O comando de barra `/research` de CLI do Copilot é uma ferramenta avançada para pesquisa e investigação aprofundadas. Quando você insere `/research` seguido de detalhes do que deseja saber, Copilot ativa um agente de pesquisa especializado que coleta e processa informações de sua base de código, de repositórios relevantes GitHub e da Web. Esse agente personalizado interno produz um relatório abrangente do Markdown com citações, juntamente com um breve resumo na CLI. Você pode exibir o relatório completo e salvá-lo como um gist no GitHub, facilitando o compartilhamento.
O comando foi projetado para fornecer respostas exaustivas e bem citadas para perguntas complexas sobre bases de código, APIs, bibliotecas, arquitetura de software e outros tópicos técnicos.
Usar o comando barra /research
Em uma sessão interativa da CLI, insira:
/research TOPIC
/research TOPIC
Onde TOPIC está uma descrição de linguagem natural do que você deseja descobrir.
Dependendo das permissões que você concedeu à CLI, Copilot pode solicitar que você conceda permissão para que ela crie um diretório no qual armazenar dados à medida que compila a pesquisa.
Quando a pesquisa for concluída, Copilot mostrará um resumo das principais descobertas e fornecerá um link para um arquivo Markdown que contém o relatório completo.
Exibindo e compartilhando um relatório de pesquisa
Você pode usar o link exibido quando a pesquisa for concluída para exibir o relatório completo em seu editor padrão para arquivos Markdown.
Como alternativa, pressione Ctrl+Y para abrir o relatório de pesquisa mais recente da sessão atual no terminal.
Observação
O aplicativo usado para exibir um relatório quando você pressiona Ctrl+Y é determinado pelo valor das variáveis de ambiente COPILOT_EDITOR, VISUAL ou EDITOR (nessa ordem de precedência). Se nenhum deles estiver definido, a CLI usará vi no Linux ou vim no macOS.
Para compartilhar o relatório, você pode salvá-lo em um arquivo ou criar uma GitHub gist.
-
Para criar uma gist, digite:
Copilot prompt /share gist research
/share gist researchPara salvar em um arquivo, insira:
Copilot prompt /share file research [PATH]
/share file research [PATH]Se você omitir o
[PATH]parâmetro, o arquivo será salvo no diretório de trabalho atual com um nome de arquivo com base no tópico de pesquisa. -
Use as chaves para cima/para baixo e insira as chaves para selecionar o relatório que você deseja compartilhar na lista de relatórios de pesquisa que você criou durante a sessão atual.
A URL da gist ou o caminho para o arquivo é exibida na CLI.
Benefícios de /research
-
Prioridade à profundidade em vez de à rapidez: o chat normal é otimizado para respostas rápidas.
/researché otimizado para ser completo. Ele produz relatórios que podem ter centenas de linhas de comprimento, com diagramas de arquitetura, snippets de código e citações. -
Saída salva e compartilhável: os relatórios são salvos em disco como arquivos Markdown. Você pode exibi-los e compartilhá-los a qualquer momento. Isso torna a saída da pesquisa um artefato permanente, em vez de uma mensagem de chat transitória.
-
Funciona entre repositórios: quando conectado GitHub, o agente pode pesquisar nos repositórios da sua organização, buscar arquivos de qualquer repositório privado público ou acessível e pesquisar na Web, não se limitando à base de código local.
-
Adaptação de tipo de consulta: em vez de gerar um relatório padrão de tamanho único, o formato de resposta se adapta automaticamente para se você está fazendo uma pergunta de instruções, uma pergunta conceitual ou solicitando um aprofundamento técnico.
-
Operação autônoma: o agente nunca interrompe você com perguntas esclarecedoras. Ele faz suposições razoáveis e as documenta explicitamente em uma seção "Avaliação de Confiança".
Prompts de exemplo para /research
Arquitetura de base de código
/research What is the architecture of this codebase?
/research What is the architecture of this codebase?
**Por que funciona bem**: O agente de pesquisa tem acesso às ferramentas `grep`, `glob` e `view` com escopo no seu diretório de trabalho atual. Ele pode explorar a árvore de projeto completa, ler arquivos de chave e sintetizar uma visão geral da arquitetura— algo que uma resposta de chat normal pode fazer apenas superficialmente. O agente normalmente produzirá diagramas de arquitetura, divisões de componentes e descrições de fluxo de dados.
Como uma tecnologia específica funciona
/research How does React implement concurrent rendering?
/research How does React implement concurrent rendering?
**Por que funciona bem**: o agente usa ferramentas especializadas para extrair informações da Internet e examinar o código-fonte real do React.GitHub Ele é instruído a priorizar o código sobre a documentação e fornecer caminhos de arquivo com números de linha.
Noções básicas sobre padrões de implementação interna
/research How are feature flags implemented at our organization?
/research How are feature flags implemented at our organization?
**Por que funciona bem**: o agente é explicitamente instruído a "sempre priorizar implementações internas/privadas em relação a alternativas públicas/de software livre" e pesquisar os repositórios da organização primeiro usando `org:ORGNAME` consultas. Ele sabe procurar padrões de nomenclatura internos como`-hub`, , `-service`. `-client`
Comparando tecnologias ou abordagens
/research What's the difference between JWT and session-based authentication?
/research What's the difference between JWT and session-based authentication?
**Por que funciona bem**: o agente adapta sua resposta a "Perguntas Conceituais/Explicativas" com explicações narrativas, compensações e decisões de design. Normalmente, ele usará tabelas para comparações de três ou mais itens.
Perguntas de processo/instruções
/research How do I add an endpoint to the API?
/research How do I add an endpoint to the API?
**Por que funciona bem**: o agente é treinado para detectar o tipo de consulta e fornecer diretrizes passo a passo com links para documentos, contatos e sistemas relevantes para perguntas de tipo de processo/instruções.
Aprofundamento em um componente específico da base de código
/research How is the session management system implemented in this repo?
/research How is the session management system implemented in this repo?
**Por que funciona bem**: Combinar ferramentas locais (`grep`, `glob`, `view`) com as instruções do agente para "rastrear importações, chamadas e referências de tipo" e "seguir dependências" significa que ele percorrerá a implementação real, e não apenas fornecerá uma resposta de alto nível.
Quando talvez você não queira usar /research
-
Perguntas rápidas e simples: se você só quer saber "O que essa função faz?" ou "Corrigir esse bug", uma mensagem de chat normal é mais rápida e apropriada.
/researché projetado para perguntas que exigem uma investigação abrangente. -
Quando você precisa de alterações de código:
/researchproduz um relatório, não modificações de código. Ele usa acreateferramenta para salvar o arquivo de relatório, mas não usaedit,bashou outras ferramentas de modificação de código. Se você precisar que o agente realmente altere seu código, use um prompt normal (normalmente começando no modo de plano). -
Interações sensíveis ao tempo: a pesquisa leva mais tempo do que uma resposta normal porque o agente faz muitas chamadas de ferramentas (pesquisando código, buscando arquivos, pesquisando na Web). Se você precisar de uma resposta rápida no fluxo de codificação, o chat normal será melhor.
Considerações e coisas que devem estar cientes
-
Os relatórios estão vinculados à sua sessão: os relatórios de pesquisa são armazenados em um diretório de pesquisa específico da sessão. Se você iniciar uma nova sessão, a pesquisa anterior não estará disponível na CLI ao usar o atalho Ctrl+Y ou o comando de barra
/share. No entanto, você pode acessar relatórios anteriores do diretório apropriado~/.copilot/session-state/SESSION-ID/research/.No Linux ou no macOS, você pode usar o seguinte comando em um prompt de comando do terminal para listar os 10 diretórios de sessão da CLI mais recentes:
Bash ls -dtl ~/.copilot/session-state/*/ | head -10
ls -dtl ~/.copilot/session-state/*/ | head -10 -
O agente de pesquisa usa um modelo específico: o agente de pesquisa é codificado para usar um modelo de IA específico (consulte referência de comando da CLI GitHub Copilot). A seleção de modelo não é configurável por meio do
/modelcomando. O agente de pesquisa sempre usa o modelo definido, independentemente de qual modelo você selecionou para sua sessão principal. -
A qualidade do relatório varia de acordo com o tipo de consulta: o agente classifica sua consulta em três tipos e adapta sua resposta adequadamente:
- Perguntas de processo → diretrizes passo a passo (código mínimo).
- Perguntas conceituais → explicação narrativa com contexto.
- Aprofundamento técnico → diagramas completos de arquitetura, seções de componente e exemplos de código.
A maneira como você formula seu prompt pode influenciar a escolha do agente em relação à classificação da pesquisa. Por exemplo, se você quiser um aprofundamento técnico, mas formular sua pergunta como "O que é X?", você poderá obter uma resposta conceitual. Nessa situação, você pode reformular seu prompt para ser mais explícito sobre o tipo de relatório que deseja Copilot produzir. Por exemplo: "Dê-me um aprofundamento técnico em X, com diagramas de arquitetura e exemplos de código."