Introdução
A interface de linha de comando (CLI) para GitHub Copilot permite que você use Copilot diretamente do terminal. Você pode usá-lo para responder perguntas, escrever e depurar código e interagir com GitHub.com. Por exemplo, você pode pedir Copilot para fazer algumas alterações em um projeto e criar uma solicitação de pull.
CLI do GitHub Copilot fornece acesso rápido a um poderoso agente de IA, sem precisar sair do terminal. Ele pode ajudá-lo a concluir tarefas mais rapidamente ao trabalhar em seu lugar, e você pode trabalhar de forma iterativa com CLI do GitHub Copilot para desenvolver o código que precisa.
Sistemas operacionais com suporte
- Linux
- macOS
- Windows a partir do PowerShell e Subsistema do Windows para Linux (WSL)
Para obter instruções de instalação, confira Instalando o CLI do GitHub Copilot.
Modos de uso
CLI do GitHub Copilot tem duas interfaces de usuário: interativas e programáticas.
Interface interativa
Para iniciar uma sessão interativa, insira copilot. Em uma sessão interativa, você pode ter uma conversa com Copilot. Você pode solicitar Copilot a execução de uma ou mais tarefas e fornecer comentários e orientar a direção do trabalho.

A interface interativa tem dois modos. Além do modo de solicitação/execução padrão, também há um modo de plano no qual Copilot criará um plano de implementação estruturado para uma tarefa que você deseja concluir.
Pressione Shift+Tab para alternar entre os modos. No modo de plano, Copilot analisa sua solicitação, faz perguntas esclarecedoras para entender o escopo e os requisitos e cria um plano antes de escrever qualquer código. Isso ajuda você a capturar mal-entendidos antes de qualquer código ser escrito e manter o controle de tarefas complexas de várias etapas.
Interface programática
Você também pode passar um único prompt diretamente para a CLI na linha de comando. A CLI conclui a tarefa e, em seguida, é encerrada.
Para usar a CLI programaticamente, inclua a opção de linha de comando -p ou --prompt em seu comando. Para permitir Copilot a modificação e a execução de arquivos, você também deve usar uma das opções de aprovação descritas posteriormente neste artigo, consulte Permitir que as ferramentas sejam usadas sem aprovação manual ). Por exemplo:
copilot -p "Show me this week's commits and summarize them" --allow-tool='shell(git)'
copilot -p "Show me this week's commits and summarize them" --allow-tool='shell(git)'
Você também pode usar um script para gerar opções de linha de comando e canalizar isso para copilot. Por exemplo:
./script-outputting-options.sh | copilot
./script-outputting-options.sh | copilot
Cuidado
Se você usar uma opção de aprovação automática, como --allow-all-tools, Copilot terá o mesmo acesso que você tem aos arquivos em seu computador e poderá executar todos os comandos de shell que você pode executar, sem obter sua aprovação prévia. Consulte Considerações sobre segurança, mais adiante neste artigo.
Casos de uso para CLI do GitHub Copilot
As seções a seguir fornecem exemplos de tarefas que você pode concluir com CLI do GitHub Copilot.
Tarefas locais
-
De dentro de um diretório de projeto, você pode pedir Copilot para fazer uma alteração no código no projeto. Por exemplo:
Change the background-color of H1 headings to dark blueCopilot localiza o arquivo CSS em que os títulos H1 são definidos e altera o valor de cor. -
Peça Copilot para lhe contar sobre as alterações em um arquivo:
Show me the last 5 changes made to the CHANGELOG.md file. Who changed the file, when, and give a brief summary of the changes they made -
Use Copilot para ajudá-lo a melhorar o código ou a documentação em seu projeto.
-
Suggest improvements to content.js -
Rewrite the readme in this project to make it more accessible to newcomers
-
-
Use Copilot para ajudá-lo a executar operações do Git.
-
Commit the changes to this repo -
Revert the last commit, leaving the changes unstaged
-
-
Peça Copilot para criar um aplicativo do zero, como uma prova de conceito.
Use the create-next-app kit and tailwind CSS to create a next.js app. The app should be a dashboard built with data from the GitHub API. It should track this project's build success rate, average build duration, number of failed builds, and automated test pass rate. After creating the app, give me easy to follow instructions on how to build, run, and view the app in my browser. -
Peça Copilot para explicar por que uma alteração feita não está funcionando conforme o esperado ou diga Copilot para corrigir um problema com a última alteração feita. Por exemplo:
You said: "The application is now running on http://localhost:3002 and is fully functional!" but when I browse to that URL I get "This site can't be reached"
Tarefas que envolvem GitHub.com
-
Buscar e exibir detalhes sobre seu trabalho a partir de GitHub.com.
-
List my open PRsIsso lista suas solicitações de pull abertas de qualquer repositório em GitHub. Para obter resultados mais específicos, inclua o nome do repositório no prompt:
-
List all open issues assigned to me in OWNER/REPO
-
-
Peça Copilot para trabalhar em um problema:
I've been assigned this issue: https://github.com/octo-org/octo-repo/issues/1234. Start working on this for me in a suitably named branch. -
Peça para Copilot fazer alterações no arquivo e enviar um pull request no GitHub.com.
-
In the root of this repo, add a Node script called user-info.js that outputs information about the user who ran the script. Create a pull request to add this file to the repo on GitHub. -
Create a PR that updates the README at https://github.com/octo-org/octo-repo, changing the subheading "How to run" to "Example usage"
Copilot cria uma solicitação de pull em GitHub.com, em seu nome. Você será marcado como o autor da pull request.
-
-
Peça ao Copilot para criar uma tarefa para você em GitHub.com.
Raise an improvement issue in octo-org/octo-repo. In src/someapp/somefile.py the `file = open('data.txt', 'r')` block opens a file but never closes it. -
Peça Copilot para verificar as alterações de código em uma solicitação de pull.
Check the changes made in PR https://github.com/octo-org/octo-repo/pull/57575. Report any serious errors you find in these changes.Copilot responde na CLI com um resumo dos problemas encontrados.
-
Gerenciar solicitações de pull de CLI do GitHub Copilot.
-
Merge all of the open PRs that I've created in octo-org/octo-repo -
Close PR #11 on octo-org/octo-repo
-
-
Encontre tipos específicos de problemas.
Use the GitHub MCP server to find good first issues for a new team member to work on from octo-org/octo-repoObservação
Se você souber que um servidor MCP específico pode realizar uma tarefa particular, especificá-lo em seu prompt pode ajudar Copilot a fornecer os resultados desejados.
-
Encontre fluxos de trabalho específicos GitHub Actions .
List any Actions workflows in this repo that add comments to PRs -
Crie um GitHub Actions fluxo de trabalho.
Branch off from main and create a GitHub Actions workflow that will run on pull requests, or can be run manually. The workflow should run eslint to check for problems in the changes made in the PR. If warnings or errors are found these should be shown as messages in the diff view of the PR. I want to prevent code with errors from being merged into main so, if any errors are found, the workflow should cause the PR check to fail. Push the new branch and create a pull request.
Conduzindo a conversa
Você pode interagir com Copilot enquanto ele está pensando para direcionar a conversa.
-
**Enfileirar mensagens adicionais**: enviar mensagens de seguimento para mudar o rumo da conversa ou enfileirar instruções adicionais para Copilot processar depois que ela concluir sua resposta atual. Isso faz com que as conversas se sintam mais naturais e mantenha você no controle. -
**Comentários embutidos sobre rejeição**: quando você rejeita uma solicitação de permissão de ferramenta, pode fornecer Copilot comentários embutidos sobre a rejeição para que ela possa adaptar sua abordagem sem parar totalmente. Isso faz com que a conversa flua mais naturalmente quando você quer orientar Copilot a se afastar de determinadas ações.
Gerenciamento automático de contexto
CLI do GitHub Copilot gerencia automaticamente o contexto da conversa:
*
Compactação automática: quando sua conversa se aproxima de 95% do limite do token, Copilot compacta automaticamente seu histórico em segundo plano sem interromper o fluxo de trabalho. Isso permite sessões praticamente infinitas.
*
Controle manual: use /compact para compactar manualmente o contexto a qualquer momento. Pressione Escape para cancelar se você mudar de ideia.
*
Visualizar o uso: o /context comando mostra uma divisão detalhada do uso do token para que você possa entender como a janela de contexto está sendo usada.
Personalizar CLI do GitHub Copilot
Você pode personalizar CLI do GitHub Copilot de várias maneiras:
-
**Instruções personalizadas**: as instruções personalizadas permitem que você forneça Copilot contexto adicional em seu projeto e como criar, testar e validar suas alterações. Todos os arquivos de instrução personalizados agora combinam em vez de usar fallbacks baseados em prioridade. Para saber mais, confira [AUTOTITLE](/copilot/how-tos/copilot-cli/customize-copilot/add-custom-instructions). -
**Servidores MCP (Protocolo de Contexto de Modelo):** os servidores MCP permitem que você dê Copilot acesso a diferentes fontes de dados e ferramentas. Para saber mais, confira [AUTOTITLE](/copilot/how-tos/use-copilot-agents/use-copilot-cli#add-an-mcp-server). -
** Agentes personalizados **: Agentes personalizados permite que você crie diferentes versões especializadas de Copilot para tarefas diferentes. Por exemplo, você pode personalizar Copilot para ser um engenheiro de front-end especialista seguindo as diretrizes da sua equipe. CLI do GitHub Copilot inclui um agentes personalizados especializado para delegar automaticamente tarefas comuns. Para saber mais, confira [AUTOTITLE](/copilot/how-tos/use-copilot-agents/use-copilot-cli#use-custom-agents). -
**Ganchos**: os ganchos permitem executar comandos de shell personalizados em pontos-chave durante a execução do agente, permitindo que você adicione validação, registro em log, verificação de segurança ou automação de fluxo de trabalho. Confira [AUTOTITLE](/copilot/concepts/agents/coding-agent/about-hooks). -
**Habilidades**: as habilidades permitem que você aprimore a capacidade de Copilot executar tarefas especializadas com instruções, scripts e recursos. Para saber mais, confira [AUTOTITLE](/copilot/concepts/agents/about-agent-skills). -
** Memória Copilot **: Memória Copilot permite Copilot criar uma compreensão persistente do repositório armazenando "memórias", que são partes de informações sobre convenções de codificação, padrões e preferências que Copilot deduzem como funciona. Isso reduz a necessidade de explicar repetidamente o contexto em seus prompts e torna as sessões futuras mais produtivas. Para saber mais, confira [AUTOTITLE](/copilot/concepts/agents/copilot-memory).
Considerações de segurança
Quando você usa CLI do Copilot, Copilot pode executar tarefas em seu nome, como executar ou modificar arquivos ou executar comandos de shell.
Portanto, você sempre deve ter considerações de segurança em mente ao usar CLI do Copilot, exatamente como faria ao trabalhar diretamente com arquivos por conta própria ou executar comandos diretamente em seu terminal. Você sempre deve examinar os comandos sugeridos com cuidado ao CLI do Copilot solicitar sua aprovação.
Diretórios confiáveis
Os diretórios confiáveis controlam onde CLI do Copilot podem ler, modificar e executar arquivos.
Você deve iniciar CLI do Copilot apenas de diretórios em que confia. Você não deve usar CLI do Copilot em diretórios que possam conter arquivos executáveis em que você não pode ter certeza de que confia. Da mesma forma, se você iniciar a CLI em um diretório que contém dados confidenciais ou arquivos que você não deseja que sejam alterados, poderá expor inadvertidamente esses arquivos a riscos. Normalmente, você não deve iniciar CLI do Copilot do diretório base.
O escopo de permissões é heurístico e GitHub não garante que todos os arquivos fora de diretórios confiáveis sejam protegidos. Consulte a mitigação de risco.
Ao iniciar uma CLI do GitHub Copilot sessão, você será solicitado a confirmar se confia nos arquivos e, abaixo, no diretório no qual você iniciou a CLI. Confira Configurar GitHub Copilot CLI.
Ferramentas permitidas
Na primeira vez que Copilot precisar usar uma ferramenta que possa ser usada para modificar ou executar um arquivo,por exemplo, touch, chmod, node ou sed ele perguntará se você deseja permitir que ele use essa ferramenta.
Normalmente, você pode escolher entre três opções:
1. Yes
2. Yes, and approve TOOL for the rest of the running session
3. No, and tell Copilot what to do differently (Esc)
**A opção 1** permite Copilot executar este comando específico, somente desta vez. Na próxima vez que precisar usar essa ferramenta, ele perguntará novamente.
**A opção 2** permite Copilot usar essa ferramenta novamente, sem pedir permissão, durante a sessão em execução no momento. Ele solicitará sua aprovação novamente em novas sessões ou se você retomar a sessão atual no futuro. Se você escolher essa opção, permitirá Copilot usar essa ferramenta de qualquer maneira que ela achar apropriada. Por exemplo, se Copilot pedir que você permita que ele execute o comando `rm ./this-file.txt` e você escolher a opção 2, então Copilot pode executar qualquer comando `rm` (por exemplo, `rm -rf ./*`) durante a execução atual desta sessão, sem solicitar sua aprovação.
**A opção 3** cancela o comando proposto e permite que você diga Copilot para tentar uma abordagem diferente.
Permitir que as ferramentas sejam usadas sem aprovação manual
Há três opções de linha de comando que você pode usar, em sessões interativas ou programáticas, para determinar as ferramentas que Copilot podem ser usadas sem solicitar sua aprovação:
-
--allow-all-toolsCopilot Permite usar qualquer ferramenta sem solicitar sua aprovação.Por exemplo, você pode usar essa opção com uma invocação programática da CLI para permitir Copilot a execução de qualquer comando. Por exemplo:
copilot -p "Revert the last commit" --allow-all-tools -
--deny-toolImpede que Copilot use uma ferramenta específica.
Essa opção tem precedência sobre as opções
--allow-all-toolse--allow-tool. -
--allow-toolCopilot Permite usar uma ferramenta específica sem solicitar sua aprovação.
Como usar as opções de aprovação
As opções --deny-tool e --allow-tool exigem um dos seguintes argumentos:
-
'shell(COMMAND)'Por exemplo,
copilot --deny-tool='shell(rm)'impede o Copilot uso de qualquerrmcomando.Para comandos
gitegh, você pode especificar um subcomando de primeiro nível específico para permitir ou negar. Por exemplo:copilot --deny-tool='shell(git push)'A especificação da ferramenta é opcional. Por exemplo,
copilot --allow-tool='shell'permite Copilot usar qualquer comando de shell sem aprovação individual. -
'write'Esse argumento permite ou nega a permissão de modificação de arquivos a ferramentas que não sejam comandos de shell.
Por exemplo,
copilot --allow-tool='write'permite Copilot editar arquivos sem sua aprovação individual. -
'MCP_SERVER_NAME'Esse argumento permite ou nega ferramentas do servidor de MCP especificado, em que
MCP_SERVER_NAMEé o nome de um servidor de MCP que você configurou. As ferramentas do servidor são especificadas entre parênteses, usando o nome da ferramenta que está registrado com o servidor de MCP. Usar o nome do servidor sem especificar uma ferramenta permite ou nega todas as ferramentas desse servidor.Por exemplo,
copilot --deny-tool='My-MCP-Server(tool_name)'impede Copilot o uso da ferramenta chamadatool_namedo servidor MCP chamadoMy-MCP-Server.Você pode encontrar o nome de um servidor MCP inserindo
/mcpna interface interativa da CLI e selecionando o servidor na lista exibida.
Combinar opções de aprovação
Você pode usar uma combinação de opções de aprovação para determinar exatamente quais ferramentas podem ser usadas Copilot sem solicitar sua aprovação.
Por exemplo, para impedir Copilot de usar os comandos rm e git push, mas permitir automaticamente todas as outras ferramentas, use:
copilot --allow-all-tools --deny-tool='shell(rm)' --deny-tool='shell(git push)'
Para impedir Copilot o uso da ferramenta tool_name do servidor MCP nomeado My-MCP-Server, mas permitir que todas as outras ferramentas desse servidor sejam usadas sem aprovação individual, use:
copilot --allow-tool='My-MCP-Server' --deny-tool='My-MCP-Server(tool_name)'
Implicações de segurança da aprovação automática de ferramentas
É importante estar ciente das implicações de segurança do uso das opções de linha de comando de aprovação. Essas opções permitem Copilot executar comandos necessários para concluir sua solicitação, sem dar a você a oportunidade de examinar e aprovar esses comandos antes que eles sejam executados. Embora isso simplifique os fluxos de trabalho e permita a operação sem periféricos da CLI, há um aumento no risco de ações não intencionais que possam resultar em perda ou corrupção de dados ou outros problemas de segurança.
Você pode controlar quais ferramentas CLI do Copilot pode usar respondendo a prompts de aprovação quando Copilot tenta usar uma ferramenta, especificando permissões com sinalizadores de linha de comando, ou (em uma sessão interativa) usando comandos barra (como /allow-all e /yolo. Confira Configurar GitHub Copilot CLI.
Mitigação de risco
Você pode atenuar os riscos associados ao uso das opções de aprovação automática executando CLI do Copilot em um ambiente restrito, como uma máquina virtual, um contêiner ou um sistema dedicado, com permissões e acesso à rede fortemente controlados. Isso limita qualquer dano potencial que possa ocorrer ao permitir a execução Copilot de comandos que você não analisou e verificou.
Limitações conhecidas da política do servidor MCP
CLI do Copilot no momento, não é possível dar suporte às seguintes políticas de servidor MCP no nível da organização:
* Servidores MCP em Copilot, que determinam se os servidores MCP podem ou não ser usados por Copilot. * URL do Registro MCP, que controla a partir de qual registro MCP os servidores MCP poderão ser utilizados.
Para obter mais informações sobre essas políticas, consulte Uso do servidor MCP em sua empresa.
Uso do modelo
O modelo padrão usado por CLI do GitHub Copilot é Claude Soneto 4.5. GitHub reserva o direito de alterar esse modelo.
Você pode alterar o modelo usado por CLI do GitHub Copilot utilizando o comando de barra /model ou a opção de linha de comando --model. Insira este comando e selecione um modelo na lista.
Cada vez que você envia um prompt para Copilot na interface interativa de CLI do Copilot, e cada vez que usa CLI do Copilot programaticamente, sua cota mensal de solicitações premium de Copilot é reduzida em uma unidade, multiplicada pelo multiplicador mostrado entre parênteses na lista de modelos. Por exemplo, Claude Sonnet 4.5 (1x) indica que, com este modelo, cada vez que você envia um prompt, sua cota de solicitações premium é reduzida em uma unidade. Para obter mais informações sobre solicitações Premium, confira Solicitações no Copilot GitHub.
Usando seu próprio provedor de modelos
Você pode configurar CLI do Copilot para usar seu próprio provedor de modelos em vez de modelos hospedados pelo GitHub. Isso permite que você se conecte a um endpoint compatível com OpenAI, Azure OpenAI ou Anthropic, incluindo modelos em execução local, como o Ollama. Configure seu provedor de modelos usando variáveis de ambiente.
| Variável de ambiente | Descrição |
|---|---|
COPILOT_PROVIDER_BASE_URL | A URL base do endpoint da API do provedor de modelos. |
COPILOT_PROVIDER_TYPE | O tipo de provedor: openai (padrão) azureou anthropic. O openai tipo funciona com qualquer endpoint compatível com OpenAI, incluindo Ollama e vLLM. |
COPILOT_PROVIDER_API_KEY | Sua chave de API para autenticação com o provedor. Não é necessário para provedores que não usam autenticação, como uma instância de Ollama local. |
COPILOT_MODEL | O modelo a ser usado (necessário ao usar um provedor personalizado). Você também pode definir isso com a opção --model de linha de comando. |
Os modelos usados com CLI do Copilot devem oferecer suporte à chamada de ferramenta (chamada de função) e à transmissão contínua. Se o modelo não der suporte a esses recursos, CLI do Copilot retornará um erro. Para obter melhores resultados, o modelo deve ter uma janela de contexto de pelo menos 128 mil tokens.
Para obter detalhes sobre como configurar seu provedor de modelos, execute copilot help providers em seu terminal.
Usar CLI do Copilot via ACP
ACP (o Protocolo de Cliente do Agente) é um padrão aberto para interagir com agentes de IA. Ele permite que você use CLI do Copilot como agente em qualquer ferramenta de terceiros, IDEs ou sistemas de automação que dão suporte a esse protocolo.
Para saber mais, confira Servidor ACP da CLI do Copilot.
Comentários
Se você tiver algum comentário sobre a CLI do GitHub Copilot, informe-nos usando o comando de barra /feedback em uma sessão interativa e escolhendo uma das opções. Você pode preencher uma pesquisa de comentários privada, enviar um relatório de bugs ou sugerir um novo recurso.
Leitura adicional
-
[AUTOTITLE](/copilot/how-tos/set-up/install-copilot-cli) -
[AUTOTITLE](/copilot/how-tos/use-copilot-agents/use-copilot-cli) -
[AUTOTITLE](/enterprise-cloud@latest/copilot/responsible-use/copilot-cli)