GitHub Copilot voor de command line
GitHub Copilot is niet alleen voor Integrated Development Environments (IDE's) - het is nu een krachtige assistent in uw terminal. GitHub Copilot CLI brengt Copilot rechtstreeks naar de opdrachtregel, waar opdrachten kunnen worden uitgelegd, shell-opdrachten uit natuurlijke taal kunnen voorstellen en u helpen veilig en interactief met uw bestanden en projecten te werken.
Copilot CLI maakt gebruik van GitHub-verificatie en wordt onafhankelijk van GitHub CLI uitgevoerd, hoewel uw bestaande referenties worden gebruikt. Of u nu geen ervaring hebt met de opdrachtregel of een ervaren ontwikkelaar, Copilot CLI vermindert schattingen en versnelt dagelijkse werkstromen.
In deze les wordt het volgende behandeld:
- GitHub Copilot CLI installeren en uitvoeren
- Interactieve sessies in de terminal
- Slash-opdrachten en invoer in natuurlijke taal
- Configuratie en opties
Copilot CLI installeren en starten
Installeren via Homebrew op macOS en Linux:
brew install copilot-cli
Of gebruik het officiële installatiescript:
curl -fsSL https://gh.io/copilot-install | bash
Start Copilot CLI in interactieve modus:
copilot
Er wordt een welkomstbanner en een prompt weergegeven:
Bij de eerste lancering vraagt Copilot of u de bestanden in de huidige map vertrouwt. Copilot kan bestanden in deze map lezen, wijzigen of uitvoeren tijdens de sessie, dus ga alleen door op locaties die u vertrouwt.
U kunt de opdracht @ gebruiken om een specifiek bestand te selecteren waarmee u als context wilt werken.
In een interactieve sessie kunt u het volgende doen:
- Gebruik slash-opdrachten (
/command) om de sessie te beheren en de Copilot CLI te configureren. - Typ natuurlijke taalprompts om opdrachten uit te leggen, te voorstellen of te herzien.
Voor eenmalige prompts zonder de volledige interactieve modus in te voeren:
copilot -i "explain brew install git"
copilot -i "suggest find large files and delete them"
Algemene slash-opdrachten
Slash-opdrachten zijn expliciete opdrachten voor sessiebeheer. Dit zijn de meest voorkomende:
| Slash-opdracht | Description |
|---|---|
/help |
Beschikbare opdrachten en opties weergeven |
/explain <command> |
Vraag Copilot om een shell-opdracht uit te leggen |
/suggest <task> |
Vraag Copilot om een shell-opdracht voor een taak voor te stellen |
/revise |
De laatste suggestie herzien op basis van uw instructies |
/feedback |
Feedback verzenden over een antwoord of suggestie |
/exit |
Interactieve modus afsluiten |
/model <model> |
Selecteren welk AI-model u wilt gebruiken |
/theme [auto|dark|light] |
Terminalthema wijzigen |
/skills |
Vaardigheden voor verbeterde mogelijkheden beheren |
/mcp |
CONFIGURATIE van MCP-server beheren |
/list-dirs |
Toegestane mappen weergeven voor bestandsbewerkingen |
/reset-allowed-tools |
Lijst met toegestane hulpprogramma's opnieuw instellen |
Slash-opdrachten kunnen niet worden vervangen door prompts in natuurlijke taal. Ze zijn de enige manier om sessie-instellingen en configuratie te beheren.
Voorbeeldwerkstromen
1. Een opdracht uitleggen
> Explain what `git reset --hard HEAD` does
Copilot zal een gedetailleerde uitleg geven.
2. Een opdracht voorstellen
> Find and delete all .log files in my home folder
Copilot genereert een opdrachtsuggesties en vraagt u om deze uit te voeren als u tevreden bent met de suggesties.
3. Een suggestie herzien
Nadat u een suggestie hebt ontvangen, kunt u een vervolgprompt typen om de voorgestelde opdracht te wijzigen:
> Include only files modified in the last 7 days
4. Feedback geven
Na een antwoord of suggestie:
> /feedback
Copilot vraagt u om het type feedback te kiezen dat u wilt verzenden en navigeer vervolgens naar het juiste formulier om uw feedback in te vullen.
5. Interactieve modus afsluiten
> /exit
Configuratieopties
In Copilot CLI wordt de configuratie afgehandeld via:
Slash-opdrachten in de interactieve modus
-
/modelAI-model kiezen -
/themeterminalthema wijzigen -
/skillsverbeterde mogelijkheden beheren -
/reset-allowed-toolsreset-hulpprogramma's -
/list-dirstoegestane mappen weergeven -
/mcpMCP-serverinstellingen
-
Copilot CLI-configuratie (niet-interactieve modus)
Copilot CLI-configuratie wordt beheerd via machtigingsprompts, opdrachtregelvlagken en lokale configuratiebestanden. Deze instellingen bepalen wat Copilot namens u kan openen en doen.
Veelvoorkomende configuratieopties zijn:
- Vertrouwde mappen: bepalen waar Copilot bestanden kan lezen, bewerken en uitvoeren.
- Hulpprogrammamachtigingen: Copilot toestaan of beperken om shell-opdrachten uit te voeren of bestanden te wijzigen met behulp van vlaggen zoals
--allow-toolof--deny-tool. - Machtigingen voor mappen – Beheer welke directories Copilot kan openen.
- URL-machtigingen: beheren met welke externe domeinen Copilot verbinding kan maken.
Raadpleeg de officiële GitHub Copilot CLI-documentatie voor volledige configuratieopties.
Omgevingen voor uitvoering in sandbox
GitHub Copilot CLI ondersteunt sandboxomgevingen waarmee u uw systeem kunt beveiligen terwijl Copilot namens u taken kan uitvoeren.
Sandboxing isoleert opdrachten, bestandsbewerkingen en andere activiteiten uit uw primaire ontwikkelomgeving. Afhankelijk van uw werkstroom kunt u kiezen tussen lokale sandboxing en cloud-sandboxing.
Lokale isolatie
Met lokale sandboxing kunnen Copilot opdrachten uitvoeren in een beperkte omgeving op uw computer.
Wanneer deze optie is ingeschakeld, is de toegang van Copilot tot uw bestandssysteem, netwerkconnectiviteit en besturingssysteemmogelijkheden beperkt, waardoor het risico op onbedoelde wijzigingen wordt beperkt, terwijl u nog steeds profiteert van werkstromen die door agents worden ondersteund.
Lokale sandboxing inschakelen tijdens een interactieve sessie:
/sandbox enable
Nadat u sandboxing hebt ingeschakeld, worden opdrachten uitgevoerd door Copilot uitgevoerd in de omgeving in de sandbox in plaats van rechtstreeks op uw hostsysteem.
Voordelen van lokale sandboxing
| Benefit | Description |
|---|---|
| Verbeterde beveiliging | Hiermee beperkt u de toegang tot gevoelige systeembronnen. |
| Veiliger experimenteren | Hiermee kunt u agentgestuurde workflows testen met minder risico. |
| Lokale uitvoering | Maakt gebruik van de resources van uw machine zonder dat hiervoor een cloudinfrastructuur nodig is. |
| Meer controle | Biedt extra beveiliging tijdens het gebruik van autonome agents. |
Cloudisolatie
Met cloud-sandboxing kunnen Copilot CLI-sessies worden uitgevoerd binnen volledig geïsoleerde Linux-omgevingen die worden gehost door GitHub.
In tegenstelling tot lokale sandboxing worden cloud sandboxsessies volledig uitgevoerd in GitHub gehoste infrastructuur en blijven ze gescheiden van uw lokale computer en van andere sandboxsessies.
Cloudsandboxing is gebaseerd op de sandboxes van Azure Container Apps, waarbij GitHub zorgt voor authenticatie, governance, beleidshandhaving en factureringsintegratie.
Ga als volgende te werk om een cloud-sandboxsessie te starten:
copilot --cloud
Zodra het is gestart, kunt Copilot opdrachten uitvoeren, bestanden wijzigen, tests uitvoeren en ontwikkeltaken uitvoeren in de cloudomgeving in plaats van op uw lokale apparaat.
Voordelen van cloud-sandboxing
| Benefit | Description |
|---|---|
| Sterke isolatie | Workloads worden afzonderlijk uitgevoerd vanaf uw lokale computer. |
| Flexibiliteit van apparaten | Sessies op verschillende apparaten hervatten. |
| Resource-uitbesteding | Maakt gebruik van cloudresources in plaats van lokale CPU en geheugen. |
| Parallelle uitvoering | Voer tegelijkertijd meerdere agentgestuurde taken uit. |
Doorgaan met sessies op meerdere apparaten
Omdat cloud-sandboxsessies worden uitgevoerd in GitHub gehoste infrastructuur, is werk niet gekoppeld aan een specifieke computer.
Hiermee kunt u het volgende doen:
- Een sessie starten op één apparaat
- Dezelfde sessie hervatten vanaf een ander apparaat
- Doorgaan met werken zonder bestanden handmatig over te dragen of omgevingen opnieuw te maken
Deze flexibiliteit is vooral handig voor ontwikkelaars die op meerdere computers of locaties werken.
Levenscyclus van cloud-sandboxsessies
Cloud-sandboxsessies kunnen bestaan in drie statussen:
| State | Description |
|---|---|
| Actieve | De sessie is actief en beschikbaar voor interactie. |
| Gestopt | De sessie is gepauzeerd, maar de toestand blijft behouden voor later gebruik. |
| Verwijderd | De sessie en alle opgeslagen statussen worden definitief verwijderd. |
Wanneer een sessie wordt gestopt, slaat GitHub een momentopname van de omgeving op, inclusief bestanden, omgevingsvariabelen en werk dat wordt uitgevoerd. Als u de sessie hervat, wordt de opgeslagen status hersteld, zodat u kunt doorgaan waar u was gebleven.
Verificatie en toegang
Cloud sandboxes gebruiken hetzelfde verificatiemodel als GitHub Copilot CLI.
Als u zich kunt verifiëren bij GitHub Copilot CLI en toegang hebt tot GitHub Copilot, is er geen aanvullende configuratie van de cloudprovider vereist.
U hoeft het volgende niet te doen:
- API-sleutels beheren
- Cloudinfrastructuur configureren
- Virtuele machines inrichten
- Containeromgevingen onderhouden
Opmerking
Organisatie- of ondernemingsbeheerders moeten het toegangsbeleid voor cloud sandbox inschakelen voordat leden cloud-sandboxomgevingen kunnen gebruiken.
Lokale sandboxing tegenover sandboxing in de cloud
| Feature | Lokale sandbox | Cloud Sandbox |
|---|---|---|
| Locatie van uitvoering | Lokale computer | GitHub gehoste omgeving |
| Resourcegebruik | Lokale bronnen | Cloudbronnen |
| Isolatieniveau | Beperkte lokale omgeving | Volledig geïsoleerde cloudomgeving |
| Apparaatafhankelijkheid | Nee | Ja |
| Parallelle workloads | Beperkt door lokale hardware | Eenvoudig schaalbaar |
Wanneer moet u sandboxing gebruiken?
Overweeg het gebruik van sandboxing wanneer:
- Werken met onbekende opslagplaatsen
- Door agents gegenereerde opdrachten testen
- Autonome werkstromen uitvoeren
- Potentieel destructieve bewerkingen uitvoeren
- Werken op meerdere apparaten
- Rekenintensieve ontwikkelingstaken offloaden
Sandboxing biedt een extra beveiligingslaag en flexibiliteit, zodat u veilig kunt profiteren van de agentmogelijkheden van GitHub Copilot CLI.
Tips voor effectief gebruik van Copilot CLI
- Gebruik de interactieve modus (
copilot) voor verkennende taken. - Gebruik de modus met één opname (
copilot -i) voor snelle antwoorden. - Invoer in natuurlijke taal werkt. U hebt niet altijd slash-opdrachten nodig.
- Controleer opdrachten altijd vóór uitvoering.
- Combineer Copilot CLI met GitHub CLI (
gh) voor het beheer van opslagplaatsen en problemen. - Gebruik slash-opdrachten wanneer u gestructureerde acties of feedback wilt.