GitHub Copilot dla wiersza polecenia
Narzędzie GitHub Copilot nie jest przeznaczone tylko dla zintegrowanych środowisk deweloperskich (IDE) — jest to teraz zaawansowany asystent w terminalu. GitHub Copilot CLI umożliwia korzystanie z Copilot bezpośrednio w wierszu polecenia, gdzie może wyjaśniać polecenia, proponować polecenia powłoki na podstawie języka naturalnego oraz pomagać w bezpiecznej i interaktywnej pracy z plikami i projektami.
Copilot CLI używa uwierzytelniania GitHub i działa niezależnie od GitHub CLI, choć używa istniejących poświadczeń. Niezależnie od tego, czy jesteś nowym użytkownikiem wiersza polecenia, czy doświadczonym deweloperem, interfejs wiersza polecenia Copilot zmniejsza zgadywanie i przyspiesza codzienne przepływy pracy.
Ta jednostka obejmuje:
- Instalowanie i uruchamianie GitHub Copilot w konsoli
- Sesje interakcyjne w terminalu
- Komendy Slash i dane wejściowe języka naturalnego
- Konfiguracja i opcje
Instalowanie i uruchamianie Copilot CLI
Zainstaluj za pomocą oprogramowania Homebrew w systemach macOS i Linux:
brew install copilot-cli
Możesz też użyć oficjalnego skryptu instalacji:
curl -fsSL https://gh.io/copilot-install | bash
Uruchom Copilot CLI w trybie interaktywnym:
copilot
Wyświetlany jest baner powitalny i komunikat:
Przy pierwszym uruchomieniu Copilot pyta, czy ufasz plikom w bieżącym folderze. Copilot może odczytywać, modyfikować lub wykonywać pliki w tym katalogu podczas sesji, dlatego działaj wyłącznie w zaufanych lokalizacjach.
Możesz użyć polecenia , @ aby wybrać określony plik, z którym chcesz pracować jako kontekst.
Wewnątrz sesji interakcyjnej można wykonywać następujące czynności:
- Użyj poleceń slash (
/command), aby kontrolować sesję i konfigurować Copilot CLI. - Wpisz monity języka naturalnego , aby wyjaśnić, zasugerować lub poprawić polecenia.
W przypadku monitów jednorazowych bez wchodzenia w tryb interakcyjny:
copilot -i "explain brew install git"
copilot -i "suggest find large files and delete them"
Typowe komendy ukośnika
Polecenia Slash to jawne polecenia sterowania sesjami. Oto najczęstsze z nich:
| Polecenie Slash | Description |
|---|---|
/help |
Pokaż dostępne polecenia i opcje |
/explain <command> |
Poproś Copilota o wyjaśnienie dowolnego polecenia powłoki |
/suggest <task> |
Poproś Copilota o zasugerowanie komendy powłoki dla zadania. |
/revise |
Popraw ostatnią sugestię na podstawie instrukcji |
/feedback |
Prześlij opinię na temat odpowiedzi lub sugestii |
/exit |
Zamykanie trybu interakcyjnego |
/model <model> |
Wybieranie modelu sztucznej inteligencji do użycia |
/theme [auto|dark|light] |
Zmienianie motywu terminalu |
/skills |
Zarządzanie umiejętnościami w zakresie rozszerzonych możliwości |
/mcp |
Zarządzanie konfiguracją serwera MCP |
/list-dirs |
Pokaż dozwolone katalogi dla operacji na plikach |
/reset-allowed-tools |
Resetuj listę dozwolonych narzędzi |
Poleceń Slash nie można zastąpić monitami języka naturalnego. Są one jedynym sposobem kontrolowania ustawień sesji i konfiguracji.
Przykładowe przepływy pracy
1. Wyjaśnienie polecenia
> Explain what `git reset --hard HEAD` does
Copilot przedstawi szczegółowe wyjaśnienie.
2. Zasugeruj polecenie
> Find and delete all .log files in my home folder
Copilot generuje sugestię polecenia i zachęca do jego wykonania, jeśli jesteś zadowolony z tych sugestii.
Zrzut ekranu przedstawiający Copilot CLI sugerujący polecenie w trybie interaktywnym.
3. Popraw sugestię
Po otrzymaniu sugestii możesz wpisać monit, aby skorygować sugerowane polecenie:
> Include only files modified in the last 7 days
4. Prześlij opinię
Po odpowiedzi lub sugestii:
> /feedback
Copilot zachęca cię do wybrania rodzaju opinii, którą chcesz wysłać, i następnie przekierowuje cię do odpowiedniego formularza w celu uzupełnienia opinii.
5. Zakończ tryb interaktywny
> /exit
Opcje konfiguracji
W interfejsie wiersza polecenia platformy Copilot konfiguracja jest obsługiwana za pośrednictwem:
Polecenia slash wewnątrz trybu interaktywnego
-
/modelwybieranie modelu sztucznej inteligencji -
/themezmienianie motywu terminalu -
/skillszarządzanie rozszerzonymi możliwościami -
/reset-allowed-toolsresetowanie narzędzi -
/list-dirswyświetlanie dozwolonych katalogów -
/mcpUstawienia serwera MCP
-
Konfiguracja Copilot CLI (tryb nieinterakcyjny)
Konfiguracja Copilot CLI jest zarządzana za pomocą monitów dotyczących uprawnień, flag wiersza polecenia i lokalnych plików konfiguracyjnych. Te ustawienia kontrolują, co copilot może uzyskać dostęp i zrobić w Twoim imieniu.
Typowe opcje konfiguracji obejmują:
- Zaufane katalogi — kontrolowanie miejsca, w którym copilot może odczytywać, edytować i uruchamiać pliki.
- Uprawnienia narzędzi — pozwól lub zabroń Copilotowi wykonywania poleceń powłoki lub modyfikowania plików za pomocą flag takich jak
--allow-toollub--deny-tool. - Uprawnienia ścieżki — kontrolowanie, do których katalogów może uzyskiwać dostęp Copilot.
- Uprawnienia adresu URL — zarządzaj domenami zewnętrznymi, z którymi może się łączyć copilot.
Aby uzyskać pełną konfigurację, zapoznaj się z oficjalną dokumentacją interfejsu wiersza polecenia narzędzia GitHub Copilot .
Izolowane środowiska uruchomieniowe
Interfejs wiersza polecenia GitHub Copilot obsługuje izolowane środowiska wykonywania, które pomagają chronić Twój system, jednocześnie umożliwiając Copilotowi wykonywanie zadań w Twoim imieniu.
Piaskownica izoluje polecenia, operacje na plikach i inne działania z podstawowego środowiska programistycznego. W zależności od sposobu pracy możesz wybrać między izolacją lokalną a izolacją w chmurze.
Lokalne piaskownice
Lokalne środowisko izolowane umożliwia Copilotowi wykonywanie poleceń w ograniczonym środowisku na komputerze.
Po włączeniu Copilot dostęp do systemu plików, łączności sieciowej i możliwości systemu operacyjnego jest ograniczony, co pomaga zmniejszyć ryzyko niezamierzonych zmian, jednocześnie umożliwiając korzystanie z przepływów pracy wspomaganych przez agentów.
Aby włączyć lokalny tryb sandbox podczas sesji interaktywnej:
/sandbox enable
Po włączeniu piaskownicy polecenia wykonywane przez Copilot są uruchamiane w środowisku piaskownicy, a nie bezpośrednio w systemie hosta.
Korzyści z lokalnej piaskownicy
| Benefit | Description |
|---|---|
| Ulepszone zabezpieczenia | Ogranicza dostęp do poufnych zasobów systemowych. |
| Bezpieczniejsze eksperymentowanie | Umożliwia testowanie przepływów pracy opartych na agentach przy mniejszym ryzyku. |
| Wykonywanie lokalne | Używa zasobów maszyny bez konieczności infrastruktury chmury. |
| Większa kontrola | Zapewnia dodatkowe zabezpieczenia podczas korzystania z agentów autonomicznych. |
Piaskownica w chmurze
Sandboxing w chmurze umożliwia uruchamianie sesji Copilot CLI w w pełni odizolowanych środowiskach systemu Linux hostowanych przez GitHub.
W przeciwieństwie do lokalnego środowiska piaskownicy sesje piaskownicy w chmurze są uruchamiane w całości w infrastrukturze hostowanej przez GitHub i pozostają odseparowane zarówno od lokalnego komputera, jak i od innych sesji piaskownicy.
Piaskownica chmurowa opiera się na piaskownicach Azure Container Apps, a GitHub zapewnia uwierzytelnianie, nadzór, egzekwowanie zasad i integrację rozliczeń.
Aby rozpocząć sesję środowiska testowego w chmurze:
copilot --cloud
Po uruchomieniu Copilot mogą uruchamiać polecenia, modyfikować pliki, wykonywać testy i wykonywać zadania programistyczne w środowisku chmury, a nie na urządzeniu lokalnym.
Zalety sandboxingu w chmurze
| Benefit | Description |
|---|---|
| Silna izolacja | Obciążenia są uruchamiane oddzielnie od komputera lokalnego. |
| Elastyczność urządzenia | Wznów sesje z różnych urządzeń. |
| Odciążanie zasobów | Używa zasobów w chmurze zamiast lokalnego procesora CPU i pamięci. |
| Równoległe wykonanie | Uruchamiaj jednocześnie wiele zadań sterowanych przez agenta. |
Kontynuuj sesje między urządzeniami
Ponieważ sesje piaskownicy chmurowej działają w infrastrukturze hostowanej przez GitHub, praca nie jest związana z konkretnym komputerem.
Umożliwia to:
- Uruchamianie sesji na jednym urządzeniu
- Wznów tę samą sesję z innego urządzenia
- Kontynuuj pracę bez ręcznego przesyłania plików lub ponownego tworzenia środowisk
Ta elastyczność jest szczególnie przydatna dla deweloperów, którzy pracują na wielu maszynach lub lokalizacjach.
Cykl życia sesji piaskownicy chmurowej
Sesje piaskownicy w chmurze mogą istnieć w trzech stanach:
| Państwa | Description |
|---|---|
| Aktywny | Sesja jest uruchomiona i dostępna do interakcji. |
| Zatrzymany | Sesja jest wstrzymana, ale jej stan jest zachowywany do użytku w przyszłości. |
| Usunięto | Sesja i cały zapisany stan zostaną trwale usunięte. |
Po zatrzymaniu sesji GitHub zapisuje migawkę środowiska, w tym pliki, zmienne środowiskowe i prace w toku. Wznowienie sesji przywraca zapisany stan, dzięki czemu można kontynuować od miejsca, w którym przerwano.
Uwierzytelnianie i dostęp
Piaskownice chmurowe używają tego samego modelu uwierzytelniania co GitHub Copilot CLI.
Jeśli możesz uwierzytelnić się w interfejsie wiersza polecenia GitHub Copilot i mieć dostęp do GitHub Copilot, nie jest wymagana żadna dodatkowa konfiguracja dostawcy usług w chmurze.
Nie trzeba wykonywać następującej czynności:
- Zarządzaj kluczami API
- Konfigurowanie infrastruktury chmury
- Udostępnij maszyny wirtualne
- Obsługa środowisk kontenerów
Uwaga / Notatka
Administratorzy organizacji lub przedsiębiorstwa muszą włączyć zasady dostępu do piaskownicy w chmurze, zanim członkowie będą mogli korzystać ze środowisk piaskownicy w chmurze.
Lokalne kontra chmurowe piaskownice
| Funkcja | Lokalna piaskownica | Piaskownica w chmurze |
|---|---|---|
| Lokalizacja wykonywania | Maszyna lokalna | środowisko hostowane GitHub |
| Użycie zasobu | Zasoby lokalne | Zasoby w chmurze |
| Poziom izolacji | Środowisko lokalne z ograniczeniami | W pełni izolowane środowisko chmurowe |
| Niezależność urządzenia | No | Yes |
| Obciążenia równoległe | Ograniczone przez sprzęt lokalny | Łatwo skalowalne |
Kiedy należy używać piaskownicy?
Rozważ użycie piaskownicy w przypadku:
- Praca z nieznanymi repozytoriami
- Testowanie poleceń generowanych przez agentów
- Uruchamianie autonomicznych przepływów pracy
- Wykonywanie potencjalnie destrukcyjnych operacji
- Praca na wielu urządzeniach
- Odciążanie zadań programistycznych intensywnie korzystających z obliczeń
Piaskownica zapewnia dodatkową warstwę zabezpieczeń i elastyczności, umożliwiając bezpieczne korzystanie z możliwości agenta interfejsu wiersza polecenia GitHub Copilot.
Porady dotyczące efektywnego korzystania z interfejsu wiersza polecenia Copilot
- Użyj trybu interaktywnego (
copilot) dla zadań eksploracyjnych. - Użyj trybu jednoujęciowego (
copilot -i) dla szybkich odpowiedzi. - Dane wejściowe języka naturalnego działają — nie zawsze potrzebujesz poleceń ukośnika.
- Przed wykonaniem należy zawsze przeglądać polecenia.
- Połącz Copilot CLI z GitHub CLI (
gh) w celu zarządzania repozytoriami i zgłoszeniami. - Użyj komend ukośnika, gdy chcesz uzyskać ustrukturyzowane akcje lub informacje zwrotne.