Copiloto do GitHub para a linha de comando
O GitHub Copilot não é apenas para Ambientes de Desenvolvimento Integrados (IDEs) — é agora um assistente poderoso no seu terminal. GitHub Copilot CLI traz o Copilot diretamente para a linha de comandos, onde pode explicar comandos, sugerir comandos de shell a partir de linguagem natural e ajudá-lo a trabalhar de forma segura e interativa com os seus ficheiros e projetos.
A CLI do Copilot usa autenticação no GitHub e corre independentemente da CLI do GitHub, embora use as tuas credenciais existentes. Quer seja novo na linha de comandos ou um programador experiente, o Copilot CLI reduz suposições e acelera os fluxos de trabalho do dia a dia.
Esta unidade abrange:
- Instalação e execução da CLI do GitHub Copilot
- Sessões interativas no terminal
- Comandos de barra e entrada em linguagem natural
- Configuração e opções
Instalação e lançamento do Copilot CLI
Instalar via Homebrew no macOS e Linux:
brew install copilot-cli
Ou usa o script oficial de instalação:
curl -fsSL https://gh.io/copilot-install | bash
Lançar o Copilot CLI em modo interativo:
copilot
Mostra um banner de boas-vindas e um prompt:
No primeiro lançamento, o Copilot pergunta se confias nos ficheiros na pasta atual. O Copilot pode ler, modificar ou executar ficheiros neste diretório durante a sessão, por isso só prossiga em locais de confiança.
Podes usar o @ para selecionar um ficheiro específico com que queres trabalhar como contexto.
Dentro de uma sessão interativa, pode:
- Use comandos de barra (
/command) para controlar a sessão e configurar a CLI do Copilot. - Escreva prompts em linguagem natural para explicar, sugerir ou rever comandos.
Para prompts de execução única sem entrar em modo completo interativo:
copilot -i "explain brew install git"
copilot -i "suggest find large files and delete them"
Comandos comuns de barra invertida
Os comandos de barra (slash commands) são comandos explícitos de controlo de sessão. Aqui estão os mais comuns:
| Comando de Slash | Description |
|---|---|
/help |
Mostrar comandos e opções disponíveis |
/explain <command> |
Pede ao Copilot que explique qualquer comando de shell |
/suggest <task> |
Pede ao Copilot que sugira um comando shell para uma tarefa |
/revise |
Revê a última sugestão com base nas tuas instruções |
/feedback |
Envie feedback sobre uma resposta ou sugestão |
/exit |
Sair do modo interativo |
/model <model> |
Selecione qual modelo de IA usar |
/theme [auto|dark|light] |
Alterar o tema do terminal |
/skills |
Gerir competências para melhorar as capacidades |
/mcp |
Gerir a configuração do servidor MCP |
/list-dirs |
Mostrar diretórios permitidos para operações de ficheiros |
/reset-allowed-tools |
Redefinir lista de ferramentas permitidas |
Os comandos com barra não podem ser substituídos por prompts em linguagem natural. São a única forma de controlar as definições e a configuração da sessão.
Exemplos de fluxos de trabalho
1. Explicar uma ordem
> Explain what `git reset --hard HEAD` does
O Copilot fornecerá uma explicação detalhada.
2. Sugerir um comando
> Find and delete all .log files in my home folder
O Copilot gera uma sugestão de comando e pede-te para a executar se estiveres satisfeito com as sugestões.
3. Rever uma sugestão
Depois de receber uma sugestão, pode escrever um prompt de seguimento para rever o comando sugerido:
> Include only files modified in the last 7 days
4. Fornecer feedback
Após uma resposta ou sugestão:
> /feedback
O Copilot pede-lhe que escolha o tipo de feedback que quer enviar e depois o guia até ao formulário apropriado para completar o seu feedback.
5. Sair do modo interativo
> /exit
Opções de configuração
No Copilot CLI, a configuração é gerida através de:
Comandos de barra dentro do modo interativo
-
/modelescolher modelo de IA -
/themeMudar o tema do terminal -
/skillsgerir capacidades aprimoradas -
/reset-allowed-toolsFerramentas de reinicialização -
/list-dirsVer diretórios permitidos -
/mcpDefinições do servidor MCP
-
Configuração da CLI do Copilot (modo não interativo)
A configuração da CLI do Copilot é gerida através de pedidos de permissões, flags de linha de comandos e ficheiros de configuração locais. Estas definições controlam o que o Copilot pode aceder e fazer em seu nome.
As opções de configuração comuns incluem:
- Diretórios de confiança – Controla onde o Copilot pode ler, editar e executar ficheiros.
- Permissões de ferramentas – Permitir ou restringir o Copilot de executar comandos de shell ou modificar ficheiros usando flags como
--allow-toolou--deny-tool. - Permissões de caminho – Controla quais diretórios o Copilot pode aceder.
- Permissões de URL – Gerir quais os domínios externos a que o Copilot pode ligar.
Consulte a documentação oficial da CLI do GitHub Copilot para todas as opções de configuração.
Ambientes de execução sandboxeados
A CLI do GitHub Copilot suporta ambientes de execução em formato sandbox que ajudam a proteger o seu sistema, permitindo que o Copilot realize tarefas em seu nome.
O sandboxing isola comandos, operações de ficheiros e outras atividades do seu ambiente de desenvolvimento principal. Dependendo do seu fluxo de trabalho, pode escolher entre isolamento local e isolamento na nuvem.
Isolamento local
O sandboxing local permite ao Copilot executar comandos num ambiente restrito na sua máquina.
Quando ativado, o acesso do Copilot ao seu sistema de ficheiros, conectividade de rede e capacidades do sistema operativo é limitado, ajudando a reduzir o risco de alterações indesejadas e permitindo que beneficie de fluxos de trabalho assistidos por agentes.
Para permitir o sandboxing local durante uma sessão interativa:
/sandbox enable
Depois de ativar o sandboxing, os comandos executados pelo Copilot são executados dentro do ambiente sandbox, em vez de diretamente no sistema anfitrião.
Benefícios do sandboxing local
| Benefit | Description |
|---|---|
| Segurança melhorada | Restringe o acesso a recursos sensíveis do sistema. |
| Experimentação mais segura | Permite testar fluxos de trabalho orientados por agentes com risco reduzido. |
| Execução local | Utiliza os recursos da sua máquina sem precisar de infraestrutura cloud. |
| Maior controlo | Fornece salvaguardas adicionais ao utilizar agentes autónomos. |
Sandboxing de nuvens
O sandboxing na nuvem permite que as sessões CLI do Copilot corram dentro de ambientes Linux totalmente isolados alojados pelo GitHub.
Ao contrário do sandboxing local, as sessões sandbox na cloud executam-se inteiramente numa infraestrutura alojada no GitHub e mantêm-se separadas da sua máquina local e de outras sessões sandbox.
O sandboxing na cloud é construído sobre Azure Container Apps Sandboxes, com o GitHub a fornecer autenticação, governação, aplicação de políticas e integração de faturação.
Para iniciar uma sessão de sandbox na cloud:
copilot --cloud
Uma vez iniciado, o Copilot pode executar comandos, modificar ficheiros, executar testes e realizar tarefas de desenvolvimento dentro do ambiente cloud em vez de no seu dispositivo local.
Benefícios do isolamento em nuvem
| Benefit | Description |
|---|---|
| Isolamento forte | As cargas de trabalho funcionam separadamente da sua máquina local. |
| Flexibilidade do dispositivo | Retomar as sessões a partir de diferentes dispositivos. |
| Descarregamento de recursos | Utiliza recursos na cloud em vez de CPU e memória locais. |
| Execução paralela | Execute múltiplas tarefas orientadas por agentes em simultâneo. |
Continuar as sessões entre dispositivos
Como as sessões sandbox na cloud correm numa infraestrutura alojada no GitHub, o trabalho não está ligado a um computador específico.
Isto permite-lhe:
- Inicia uma sessão num só dispositivo
- Retomar a mesma sessão a partir de outro dispositivo
- Continue a trabalhar sem transferir manualmente ficheiros ou recriar ambientes
Esta flexibilidade é especialmente útil para programadores que trabalham em várias máquinas ou localizações.
Ciclo de vida das sessões sandbox na cloud
As sessões de sandbox na nuvem podem existir em três estados:
| Estado | Description |
|---|---|
| Ativo | A sessão está a decorrer e está disponível para interação. |
| Parou | A sessão é pausada, mas o seu estado é preservado para uso futuro. |
| Eliminados | A sessão e todo o estado guardado são removidos permanentemente. |
Quando uma sessão é interrompida, o GitHub guarda um instantâneo do ambiente, incluindo ficheiros, variáveis de ambiente e trabalho em andamento. Retomar a sessão restaura o estado guardado para que possas continuar de onde paraste.
Autenticação e acesso
Os sandboxes cloud usam o mesmo modelo de autenticação do GitHub Copilot CLI.
Se conseguires autenticar-te no CLI do GitHub Copilot e tiveres acesso ao GitHub Copilot, não é necessária qualquer configuração adicional do fornecedor de cloud.
Não precisa de:
- Gerir chaves de API
- Configurar infraestrutura cloud
- Provisionar máquinas virtuais
- Manter ambientes de contentores
Observação
Administradores organizacionais ou empresariais devem ativar a política de acesso Cloud Sandbox antes de os membros poderem usar ambientes cloud sandbox.
Isolamento local versus isolamento na nuvem
| Característica | Caixa de areia local | Ambiente de Testes na Nuvem |
|---|---|---|
| Local de execução | Máquina local | Ambiente hospedado no GitHub |
| Utilização de recursos | Recursos locais | Recursos na nuvem |
| Nível de isolamento | Ambiente local restrito | Ambiente de nuvem totalmente isolado |
| Independência do dispositivo | Não | Sim |
| Cargas de trabalho paralelas | Limitado pelo hardware local | Facilmente escalável |
Quando deve usar o sandboxing?
Considere usar sandboxing quando:
- Trabalhar com repositórios desconhecidos
- Testar comandos gerados por agentes
- Execução de fluxos de trabalho autónomos
- Realizar operações potencialmente destrutivas
- Trabalhar em múltiplos dispositivos
- Descarregar tarefas de desenvolvimento intensivas em computação
O sandboxing oferece uma camada adicional de segurança e flexibilidade, permitindo-lhe tirar partido de forma segura das capacidades de agente do GitHub Copilot CLI.
Dicas para uma utilização eficaz do Copilot CLI
- Use o modo interativo (
copilot) para tarefas exploratórias. - Utilize o modo one-shot (
copilot -i) para respostas rápidas. - A entrada em linguagem natural funciona — nem sempre precisas de comandos de barra.
- Revê sempre os comandos antes de a executar.
- Combine o CLI do Copilot com o CLI do GitHub (
gh) para gestão de repositórios e issues. - Usa comandos de barra quando quiseres ações estruturadas ou feedback.