Praktyczne ćwiczenia z interfejsem wiersza poleceń Gemini

1. Wprowadzenie

Z tego przewodnika dowiesz się więcej o interfejsie wiersza poleceń Gemini, czyli agencie AI o otwartym kodzie źródłowym, który udostępnia możliwości Gemini bezpośrednio w terminalu.

Czego się nauczysz

  1. Instalowanie i konfigurowanie interfejsu wiersza poleceń Gemini
  2. Poznawanie narzędzi, wbudowanych poleceń i konfigurowanie serwerów MCP w interfejsie Gemini CLI
  3. Dostosowywanie interfejsu wiersza poleceń Gemini za pomocą pliku GEMINI.md
  4. Poznaj kilka przypadków użycia interfejsu wiersza poleceń Gemini

Czego potrzebujesz

Ten samouczek można w całości wykonać w Google Cloud Shell, w którym jest już zainstalowany interfejs Gemini CLI.

Jeśli wolisz pracować na własnym komputerze, możesz zainstalować interfejs wiersza poleceń Gemini lokalnie.

Potrzebujesz:

  • przeglądarki Chrome,
  • konto Gmail,

Ten przewodnik został opracowany z myślą o użytkownikach i deweloperach na wszystkich poziomach zaawansowania (w tym początkujących). Przykłady użycia w tym laboratorium zostały podzielone na zadania dla deweloperów i osób, które nie są deweloperami. Przykłady zastosowań dla programistów pokazują, jak używać interfejsu wiersza poleceń Gemini do tworzenia kodu i pracy z repozytorium GitHub w celu wykonywania typowych zadań programistycznych, takich jak wyjaśnianie i rozumienie kodu, generowanie dokumentacji, rozwiązywanie problemów i inne. Zalecamy wykonanie tych przypadków użycia w ramach laboratorium. Na końcu znajduje się sekcja opcjonalna, która obejmuje kilka codziennych zadań niezwiązanych z programowaniem.

2. Zanim zaczniesz

Utwórz projekt

  1. W konsoli Google Cloud na stronie selektora projektów wybierz lub utwórz projekt Google Cloud.
  2. Sprawdź, czy w projekcie Cloud włączone są płatności. Dowiedz się, jak sprawdzić, czy w projekcie są włączone płatności.
  3. Będziesz używać Cloud Shell, czyli środowiska wiersza poleceń działającego w Google Cloud, które jest wstępnie załadowane narzędziem bq. U góry konsoli Google Cloud kliknij Aktywuj Cloud Shell.

Obraz przycisku aktywacji Cloud Shell

  1. Po połączeniu z Cloud Shell sprawdź, czy jesteś już uwierzytelniony i czy projekt jest ustawiony na Twój identyfikator projektu, używając tego polecenia:
gcloud auth list
  1. Aby potwierdzić, że polecenie gcloud zna Twój projekt, uruchom w Cloud Shell to polecenie:
gcloud config list project
  1. Jeśli projekt nie jest ustawiony, użyj tego polecenia, aby go ustawić:
gcloud config set project <YOUR_PROJECT_ID>

3. Instalacja

Zanim skonfigurujesz i uruchomisz interfejs Gemini CLI, utwórz folder, który będzie służyć jako folder domowy dla wszystkich projektów, które w nim utworzysz. Jest to punkt wyjścia dla interfejsu wiersza poleceń Gemini, ale w razie potrzeby będzie on też odwoływać się do innych folderów w systemie, o których dowiesz się później.

Utwórz przykładowy folder (gemini-cli-projects) i przejdź do niego za pomocą poleceń pokazanych poniżej. Jeśli wolisz użyć innej nazwy folderu, możesz to zrobić.

mkdir gemini-cli-projects

Przejdźmy do tego folderu:

cd gemini-cli-projects

Interfejs wiersza poleceń Gemini możesz uruchomić bezpośrednio za pomocą polecenia gemini.

Przejdź bezpośrednio do następnej sekcji (konfiguracja interfejsu wiersza poleceń Gemini za pomocą pliku settings.json).

Jeśli chcesz zainstalować interfejs wiersza poleceń Gemini lokalnie, wykonaj instrukcje podane poniżej.

Pierwszym krokiem jest zainstalowanie na komputerze Node 20 lub nowszego. Po zakończeniu tego procesu możesz zainstalować i uruchomić interfejs wiersza poleceń Gemini za pomocą jednej z tych metod:

  1. Najpierw możesz zainstalować interfejs wiersza poleceń Gemini globalnie w systemie. Aby wykonać ten krok, możesz potrzebować dostępu administratora.
# option 1: install Gemini CLI

npm install -g @google/gemini-cli

# .. and then run
gemini
  1. Uruchom go za pomocą tego polecenia:
# option 2: run without installing Gemini CLI

npx https://github.com/google-gemini/gemini-cli

Aby sprawdzić, czy interfejs wiersza poleceń jest zainstalowany, uruchom to polecenie:

gemini --version

Jeśli interfejs wiersza poleceń Gemini został uruchomiony jedną z wyżej wymienionych metod, powinien pojawić się ekran z pytaniem o wybór motywu. Wybierz jeden z nich:

35a98edaf7f22e8e.png

Po wybraniu tej opcji pojawi się prośba o podanie metody uwierzytelniania. W tym module zalecamy używanie osobistego konta Google, a nie kont niezwiązanych z Google ani Google Workspace. Bezpłatna licencja daje dostęp do Gemini 2.5 Pro i okna kontekstu z milionem tokenów. Bezpłatny poziom umożliwia wysyłanie 60 żądań modelu na minutę i 1000 żądań dziennie bez opłat.

Jeśli wyczerpiesz obecny bezpłatny limit przypisany do kont Google, możesz użyć klucza interfejsu Gemini API lub nawet Google Cloud Vertex AI, gdzie musisz mieć identyfikator projektu i nazwę lokalizacji tego projektu. Jeśli planujesz używać innych metod uwierzytelniania, zapoznaj się z sekcją Uwierzytelnianie w dokumentacji.

57bad75cedaaaa38.png

Kliknij Enter. Spowoduje to otwarcie w przeglądarce strony uwierzytelniania Google. Przeprowadź uwierzytelnianie za pomocą konta Google, zaakceptuj warunki, a gdy uwierzytelnianie się powiedzie, zobaczysz, że interfejs Gemini CLI jest gotowy i czeka na Twoje polecenie. Przykładowy zrzut ekranu znajdziesz poniżej:

4dbc0138b78dc354.png

4. Konfigurowanie interfejsu wiersza poleceń Gemini za pomocą pliku settings.json

Jeśli do uruchomienia Gemini wybierzesz Cloud Shell, domyślny motyw interfejsu Gemini CLI i metoda uwierzytelniania zostaną wybrane i skonfigurowane za Ciebie.

Jeśli interfejs wiersza poleceń Gemini został zainstalowany na komputerze i uruchomiony po raz pierwszy, wybrano motyw, a następnie metodę autoryzacji.

Podczas kolejnych uruchomień interfejsu wiersza poleceń Gemini nie będzie już wyświetlana prośba o wybranie motywu i metody uwierzytelniania. Oznacza to, że jest on gdzieś zapisywany, a plik, którego używa, nazywa się settings.json. Jest to sposób na dostosowanie interfejsu wiersza poleceń Gemini.

Ustawienia są stosowane w następującej kolejności (Cloud Shell udostępnia tylko ustawienia użytkownika):

  1. System: /etc/gemini-cli/settings.json (dotyczy wszystkich użytkowników, zastępuje ustawienia użytkownika i przestrzeni roboczej).
  2. Obszar roboczy: .gemini/settings.json (zastępuje ustawienia użytkownika).
  3. Użytkownik: ~/.gemini/settings.json.

Użytkownik Windows: %USERPROFILE%.gemini\settings.json (zwykle rozwija się do C:\Users&lt;YourUsername>.gemini\settings.json)

System: %ProgramData%\gemini-cli\settings.json (zwykle C:\ProgramData\gemini-cli\settings.json)

Użytkownik Maca: ~/.gemini/settings.json (który rozwija się do /Users/<YourUsername>/.gemini/settings.json)

System: /etc/gemini-cli/settings.json

Jeśli pamiętasz, podczas wybierania motywu ustawienia zostały zapisane w Ustawieniach użytkownika. Otwórz ~/.gemini folder, a zobaczysz plik settings.json.

Mój plik settings.json jest widoczny poniżej. Gdyby był wybrany inny motyw, jego nazwa byłaby widoczna w tym miejscu.

{
  "theme": "Default",
  "selectedAuthType": "oauth-personal" or "cloud-shell"
}

5. Pierwsza interakcja z interfejsem wiersza poleceń Gemini

Zacznijmy od interfejsu wiersza poleceń Gemini i wpisz pierwsze zapytanie, jak pokazano poniżej:

Give me a famous quote on Artificial Intelligence and who said that?

Oczekiwana odpowiedź jest widoczna poniżej:

GoogleSearch Searching the web for: "famous quote on Artificial Intelligence and who said it"                                                                                                                 ...
Search results for "famous quote on Artificial Intelligence and who said it" returned.                                                                                                                             

✦ "The development of full artificial intelligence could spell the end of the human race." - Stephen Hawking.

Zauważysz, że w wyniku naszego zapytania wywołane zostało narzędzie GoogleSearch (wbudowane w interfejs wiersza poleceń Gemini). Innymi słowy, masz już dostęp do jednego z zaawansowanych wbudowanych narzędzi interfejsu Gemini CLI, czyli GoogleSearch, które generuje odpowiedzi na podstawie informacji z internetu. Więcej informacji o narzędziach znajdziesz w następnej sekcji.

Aby szybko poznać interfejs wiersza poleceń Gemini i różne obsługiwane przez niego polecenia, wpisz /help (ukośnik). Zobaczysz różne polecenia i skróty klawiszowe.

Na razie zamknijmy interfejs wiersza poleceń Gemini. Możesz to zrobić za pomocą polecenia /quit lub dwukrotnie wpisując Ctrl-C w interaktywnej sesji terminala interfejsu wiersza poleceń Gemini.

6. Interfejs wiersza poleceń Gemini – parametry poleceń

Podczas uruchamiania interfejsu Gemini CLI można podać kilka parametrów wiersza poleceń. Aby uzyskać pełną listę opcji, możesz użyć znaku --help, jak pokazano poniżej.

gemini --help

Powinna się wyświetlić pełna lista dostępnych opcji. Zachęcamy do zapoznania się z dokumentacją tutaj.

Przyjrzyjmy się kilku z nich. Pierwszy sposób to skonfigurowanie interfejsu wiersza poleceń Gemini tak, aby korzystał z modelu Pro lub Flash. W momencie pisania tego przewodnika obsługiwane są tylko te 2 modele. Domyślnie używany jest model Gemini 2.5 Pro, ale jeśli chcesz użyć modelu Flash, możesz to zrobić podczas uruchamiania interfejsu wiersza poleceń Gemini za pomocą parametru -m, jak pokazano poniżej:

gemini -m "gemini-2.5-flash"

Jeśli zaczniesz w opisany powyżej sposób, możesz sprawdzić model w prawym dolnym rogu terminala interfejsu wiersza poleceń Gemini, jak pokazano poniżej:

60c4c0e6d277ade7.png

Po otwarciu aplikacji interfejsu wiersza poleceń Gemini możesz użyć polecenia /model, aby otworzyć okno dialogowe umożliwiające wybór modelu. Przykładowe uruchomienie pokazano poniżej. W zależności od wymagań i podanych wskazówek możesz przełączać modele, aby wybrać odpowiedni do danego zadania w zależności od jego złożoności i potrzeby kontrolowania kosztów.

4bd48822b92ba012.png

Tryb nieinteraktywny

Ciekawą opcją jest uruchomienie interfejsu wiersza poleceń Gemini w trybie nieinteraktywnym. Oznacza to, że bezpośrednio podajesz prompta, a Gemini odpowiada na niego bez otwierania interaktywnego terminala interfejsu wiersza poleceń Gemini. Jest to bardzo przydatne, jeśli planujesz używać interfejsu wiersza poleceń Gemini w sposób zautomatyzowany w ramach skryptu lub innego procesu automatyzacji. Parametru -p używasz do przekazywania prompta do interfejsu wiersza poleceń Gemini, jak pokazano poniżej. Możesz też użyć argumentu pozycyjnego, aby podać prompta.

gemini "What is the gcloud command to deploy to Cloud Run"

Pamiętaj, że nie możesz kontynuować rozmowy, zadając dodatkowe pytania. Ten tryb nie pozwala też na autoryzowanie narzędzi (w tym WriteFile) ani na uruchamianie poleceń powłoki.

7. Interfejs wiersza poleceń Gemini – wbudowane narzędzia

Interfejs Gemini CLI zawiera zestaw wbudowanych narzędzi, a w dokumentacji narzędzi czytamy: „Model Gemini używa tych narzędzi do interakcji z lokalnym środowiskiem, uzyskiwania dostępu do informacji i wykonywania działań. Te narzędzia zwiększają możliwości interfejsu CLI, umożliwiając mu wyjście poza generowanie tekstu i pomagając w wykonywaniu szerokiego zakresu zadań”.

Aby uzyskać listę bieżących narzędzi wbudowanych, wywołaj polecenie /tools w sposób pokazany poniżej:

Available Gemini CLI tools:

  - Codebase Investigator Agent (codebase_investigator)
  - Edit (replace)
  - FindFiles (glob)
  - GoogleSearch (google_web_search)
  - ReadFile (read_file)
  - ReadFolder (list_directory)
  - SaveMemory (save_memory)
  - SearchText (search_file_content)
  - Shell (run_shell_command)
  - WebFetch (web_fetch)
  - WriteFile (write_file)
  - WriteTodos (write_todos)

Jedną z pierwszych rzeczy, które powinny Cię zainteresować, jest pytanie, czy interfejs wiersza poleceń Gemini może po prostu wywoływać te narzędzia, gdy tego potrzebuje. W przypadku operacji wrażliwych, które mogą obejmować zapisywanie w systemie lokalnym, odczytywanie z systemu zewnętrznego, łączenie się z siecią zewnętrzną itp., domyślna odpowiedź to nie.

Po uruchomieniu interfejsu wiersza poleceń dostępny jest parametr --yolo (zwykle nie jest zalecany). Interfejs wiersza poleceń Gemini poprosi Cię o zezwolenie na uruchomienie wybranego narzędzia. Możesz odmówić przyznania uprawnień, zezwolić na jednorazowe uruchomienie lub przyznać uprawnienia do zawsze uruchamiania. Masz pełną kontrolę nad tym, co się dzieje.

Użyjmy prompta, który sprawi, że interfejs wiersza poleceń Gemini wybierze jedno z wbudowanych narzędzi do wykonania zadania. Dzięki temu lepiej zrozumiesz, jak to wszystko działa.

Wyobraź sobie, że chcesz uzyskać informacje o najnowszych wiadomościach finansowych z całego świata i zapisać je w pliku w lokalnym katalogu roboczym, z którego uruchomiono interfejs Gemini CLI. Użyj tego prompta:

Search for the latest headlines today in the world of finance and save them in a file named finance-news-today.txt

Wyobraź sobie, co powinno robić. Najlepiej, gdyby wyszukiwało w Google wiadomości z odpowiednich źródeł informacji, które mogą dostarczać wiadomości finansowe. Następnie musi utworzyć plik o nazwie finance-news-today.txt (operacja zapisu w systemie lokalnym, która będzie wymagać Twojej zgody) z jego zawartością.

Zobaczmy, co się stanie (zrób to samo na swoim komputerze).

Najpierw wywołuje narzędzie GoogleSearch, aby wyszukać informacje w internecie i pobrać wyniki, jak pokazano poniżej:

GoogleSearch Searching the web for: "latest finance headlines today"                                                                                                                                            

Search results for "latest finance headlines today" returned.  

Gdy to zrobi, będzie gotowy do zapisania tych informacji w pliku. Użyje do tego narzędzia WriteFile, ale ponieważ jest to operacja wymagająca szczególnej ostrożności (zapis), poprosi Cię o zgodę. Możesz określić typ uprawnień , np. zezwól raz, zezwalaj zawsze itp. Na razie wybierz zezwól raz.

c84c5b58e202f98f.png

Spowoduje to zapisanie informacji w pliku i wyświetlenie poniżej komunikatu o powodzeniu:

✦ I have successfully saved the latest finance headlines into the file finance-news-today.txt.

Jak sprawdzić, czy plik jest zapisany? Możesz użyć @file, aby poprosić o odczytanie treści. Gdy wpiszesz @, wyświetli się lista plików w bieżącym folderze, w tym nowo utworzony plik. Wybierz go i prześlij prompta. Mój prompt wygląda tak:

read the contents of @finance-news-today.txt

W rezultacie zostaną wywołane wymagane narzędzia (ReadManyFiles, ReadFile), a zawartość zostanie wyświetlona w sposób pokazany poniżej:

7a5fc5d834cbb93b.png

8. Interfejs wiersza poleceń Gemini – tryb powłoki

To dobry moment, aby dowiedzieć się, jak bezpośrednio korzystać z powłoki w interfejsie wiersza poleceń Gemini. Aby przejść do trybu powłoki, naciśnij ! w polu wiadomości. Spowoduje to przełączenie na tryb Shell. Aby wrócić, naciśnij ponownie ! lub klawisz ESC.

W trybie powłoki na początku promptu zobaczysz znak !, jak pokazano poniżej:

a87f54bb3066b82d.png

Możesz to sprawdzić bezpośrednio za pomocą standardowych poleceń, takich jak pwdls, jak pokazano poniżej. Pamiętaj, że polecenia zakładają system operacyjny typu Linux. Jeśli korzystasz z innego systemu operacyjnego (Windows), użyj odpowiednich poleceń, np. cd, dirtype. Pamiętaj, że wynik tych wywołań jest uwzględniany w oknie kontekstu modelu.

33a18abe5581ff74.png

Możesz wydrukować zawartość pliku za pomocą polecenia cat.

6dbe0049ed002553.png

Ćwiczenie: oto krótkie ćwiczenie, które możesz wypróbować. Wybierz kanał RSS. Użyj w wierszu poleceń Gemini prompta, aby pobrać zawartość kanału RSS i sformatować wyniki w określony sposób. To dobry sposób na zautomatyzowanie czegoś na początku dnia. Możesz nawet poprosić interfejs Gemini CLI o sprawdzenie, czy w określonym obszarze jest dostępny kanał RSS, np. w przypadku informacji o wersjach Google Cloud Platform.

Przykładowy prompt:

Get the latest release notes for Google Cloud from its RSS Feed and display the key points in a well-formatted list.

Ten prompt powinien najpierw wywołać narzędzie GoogleSearch, aby znaleźć kanał RSS Google Cloud Platform, a następnie użyć narzędzia WebFetch, aby pobrać zawartość kanału RSS i ją wyświetlić.

9. Rozszerzenia interfejsu wiersza poleceń Gemini

Jak podano w dokumentacji, rozszerzenia interfejsu wiersza poleceń Gemini pakują prompty, serwery MCP i niestandardowe polecenia w znajomy i przyjazny dla użytkownika format. Dzięki rozszerzeniom możesz zwiększyć możliwości interfejsu wiersza poleceń Gemini i udostępniać je innym osobom. Jest to podstawowy mechanizm rozszerzania funkcjonalności interfejsu wiersza poleceń Gemini poza wbudowane narzędzia.

Rozszerzenie to samodzielny pakiet z możliwością określania wersji i łatwego rozpowszechniania. Możesz go traktować jako „kontener wysyłkowy” dla dostosowań interfejsu wiersza poleceń Gemini, który łączy wszystko, co jest potrzebne do określonego przepływu pracy, w jeden, przejrzysty pakiet.

f5ae3e229462c130.png

Rozszerzenie może zawierać dowolną kombinację tych elementów:

  • niestandardowe polecenia po ukośniku (pliki .toml);
  • Konfiguracje serwera MCP (które wcześniej znajdowały się w pliku settings.json).
  • Pliki kontekstu (GEMINI.md) zawierające szczegółowe instrukcje i wytyczne dla modelu.
  • Ograniczenia narzędzi (excludeTools), aby stworzyć bezpieczniejsze i bardziej ukierunkowane środowisko.

Galeria rozszerzeń to centralne miejsce, w którym można znaleźć wszystkie oficjalne rozszerzenia Google i firm zewnętrznych:

  1. Otwórz w przeglądarce ten adres URL: https://geminicli.com/extensions/browse/.
  2. Ta galeria to mechanizm wykrywania w ekosystemie. Możesz zobaczyć rozszerzenia od firm takich jak GitHub, Redis i DynaTrace, co pokazuje szeroki zakres dostępnych narzędzi.
  3. Przewiń w dół i znajdź kartę rozszerzenia Cloud Run.
  4. Zwróć uwagę, że karta zawiera opis, autora (Google) i przycisk polecenia Copy, który można kliknąć. Jest to najprostszy sposób uzyskania polecenia instalacji rozszerzenia.

Rozszerzenia interfejsu wiersza poleceń Gemini – polecenia zarządzania

Polecenie gemini extensions to punkt wejścia do zarządzania lokalnymi rozszerzeniami.

Uruchom je w terminalu, aby wyświetlić listę dostępnych poleceń.

gemini extensions <command>

Manage Gemini CLI extensions.

Commands:
  gemini extensions install <source> [--auto-update] [--pre-release]   
      Installs an extension from a git repository URL or a local path.
  gemini extensions uninstall <names..>                                  
      Uninstalls one or more extensions.
  gemini extensions list
      Lists installed extensions.
  gemini extensions update [<name>] [--all]                           
      Updates all extensions or a named extension to the latest version.
  gemini extensions disable [--scope] <name>                          
      Disables an extension.
  gemini extensions enable [--scope] <name>                           
      Enables an extension.
  gemini extensions link <path>                                       
     Links an extension from a local path. Updates made to the local path 
     will always be reflected.
  gemini extensions new <path> [template]                             
     Create a new extension from a boilerplate example.
  gemini extensions validate <path>                                   
     Validates an extension from a local path.

Polecenia są proste (instalacja/odinstalowanie, lista, aktualizacja, włączanie/wyłączanie itp.). W tym laboratorium użyjemy niektórych z nich.

Sprawdzanie bieżącej listy rozszerzeń

Zanim cokolwiek zainstalujemy, sprawdźmy, czy mamy „czystą kartę”.

  1. Uruchom polecenie gemini extensions list:
  2. Powinny się wyświetlić te dane wyjściowe, potwierdzające, że nie zainstalowano jeszcze żadnych rozszerzeń.
No extensions installed.

Konfigurowanie serwera MCP GitHub

Jednym z typów dodatków do interfejsu wiersza poleceń Gemini jest serwer MCP. Serwer MCP to aplikacja, która udostępnia narzędzia i zasoby interfejsowi Gemini CLI za pomocą protokołu Model Context Protocol, co umożliwia interakcję z systemami zewnętrznymi i źródłami danych. Serwery MCP działają jako pomost między modelem Gemini a środowiskiem lokalnym lub innymi usługami, takimi jak interfejsy API.

Serwer MCP GitHub jest dostępny w Galerii rozszerzeń do Gemini. Kliknij tę opcję, aby otworzyć kartę Rozszerzenia, na której znajdziesz też polecenie zainstalowania rozszerzenia:

4eee33951dabd2db.png

Możesz go skopiować lub użyć polecenia poniżej:

gemini extensions install https://github.com/github/github-mcp-server

Przyznaj niezbędne uprawnienia. Po zainstalowaniu to rozszerzenie powinno być widoczne na liście rozszerzeń po wpisaniu polecenia gemini extensions list.

✓ github (1.0.0)
 ID: faa318861b48de8d83c95eb8cd5e82c02393493978d198a0e7bf67fcb1bd22cb
 name: c0b0109d9439de57fe3cf03abeccbc52f4c98170c732d3b69af5e6395ace574e
 Path: /home/romin/.gemini/extensions/github
 Source: https://github.com/github/github-mcp-server (Type: git)
 Enabled (User): true
 Enabled (Workspace): true
 MCP servers:
  github

Zobaczysz ścieżkę rozszerzenia, a w tym folderze znajdziesz plik o nazwie gemini-extension.json, którego zawartość jest pokazana poniżej:

{
  "name": "github",
  "version": "1.0.0",
  "mcpServers": {
    "github": {
      "description": "--description–",
      "httpUrl": "https://api.githubcopilot.com/mcp/",
      "headers": {
            "Authorization": "Bearer $GITHUB_MCP_PAT"
      }
     }
  }
}

Zauważysz, że osobisty token dostępu (PAT) jest odczytywany za pomocą zmiennej środowiskowej. Najpierw musisz mieć osobisty token dostępu (PAT) z GitHuba. Gdy to zrobisz, upewnij się, że masz utworzony plik .env i umieszczoną w nim tę wartość lub utworzoną zmienną środowiskową w ten sposób (zastąp PAT_VALUE rzeczywistą wartością):

export GITHUB_MCP_PAT=PAT_VALUE

Musisz ponownie uruchomić interfejs wiersza poleceń Gemini. Po uruchomieniu możesz użyć polecenia /mcp list, aby wyświetlić listę serwerów MCP i dostępnych na nich narzędzi. Serwer MCP GitHub powinien być widoczny na zielono wraz z narzędziami (ponad 30). Poniżej znajduje się częściowa lista:

🟢 github (z github) – gotowe (40 narzędzi)

Narzędzia:

  • add_comment_to_pending_review
  • add_issue_comment
  • assign_copilot_to_issue
  • create_branch
  • create_or_update_file
  • create_pull_request
  • create_repository
  • delete_file
  • fork_repository
  • get_commit
  • get_file_contents
  • get_label
  • get_latest_release
  • get_me
  • get_release_by_tag
  • get_tag
  • get_team_members
  • get_teams
  • issue_read

Zacznijmy od prompta, który wywoła jedno z narzędzi z serwera Github MCP. Wpisz ten prompt: (kim jestem w GitHubie?). Spowoduje to, że interfejs wiersza poleceń Gemini wybierze odpowiednie narzędzie i poprosi Cię o zezwolenie.

c9873c3f51b26866.png

Gdy to zrobisz, wyświetli się wynik, jak pokazano poniżej:

✦ You are rominirani, a Developer Advocate at Google Cloud, located in Mumbai. You have 125 public repositories and 256 followers.

Teraz możesz pracować nad jednym z projektów w GitHubie. Zadawaj zapytania w języku naturalnym, np.:

  • Opisz mi <repo-name>.
  • Sklonuj <repo-name> na moim komputerze lokalnym.
  • Opisz @<nazwa-pliku> lub @<nazwa-katalogu>/
  • Jakie są poszczególne komponenty tego repozytorium?
  • Wprowadziłem(-am) niezbędne zmiany. Czy możesz przesłać zmiany do GitHub i użyć narzędzi serwera MCP GitHub?

Ćwiczenie dotyczące szczegółowej pracy z serwerem MCP GitHub znajdziesz w dalszej części tego modułu.

Konfigurowanie serwera MCP Cloud Run

Rozszerzenie Cloud Run dostępne w galerii rozszerzeń do interfejsu wiersza poleceń Gemini to serwer MCP, który umożliwia wdrażanie aplikacji w Cloud Run.

Poniżej znajduje się karta rozszerzenia Cloud Run z galerii rozszerzeń:

ed9b19eac1fbde78.png

Najpierw zainstaluj rozszerzenie Cloud Run, klikając Skopiuj polecenie instalacji, jak pokazano powyżej. Następnie wklej to polecenie w terminalu Cloud Shell (powinno być podobne do tego poniżej):

gemini extensions install https://github.com/GoogleCloudPlatform/cloud-run-mcp

Po uruchomieniu powyższego polecenia zobaczysz prośbę o potwierdzenie. Zatwierdź je. Rozszerzenie Cloud Run powinno zostać zainstalowane.

Jeśli teraz wykonasz polecenie gemini extensions list, powinna się wyświetlić zainstalowana usługa Cloud Run, jak pokazano poniżej:

✓ cloud-run (1.0.0)
 ID: 3c1a38909b6d7d90b6acc8ca1e80d97b4a867253a3cd12d841b2aab4e556a58f
 name: 0b1820c1f0c043bbb3b54f496d862c02172424c930eb965d61f468be52e6f127
 Path: /home/romin/.gemini/extensions/cloud-run
 Source: https://github.com/GoogleCloudPlatform/cloud-run-mcp (Type: git)
 Enabled (User): true
 Enabled (Workspace): true
 Context files:
  /home/romin/.gemini/extensions/cloud-run/gemini-extension/GEMINI.md
 MCP servers:
  cloud-run

Jeśli teraz uruchomisz interfejs wiersza poleceń Gemini i wykonasz polecenie /mcp list, zobaczysz te informacje:

🟢 cloud-run (from cloud-run) - Ready (8 tools, 2 prompts)
  Tools:
  - create_project
  - deploy_container_image
  - deploy_file_contents
  - deploy_local_folder
  - get_service
  - get_service_log
  - list_projects
  - list_services
  Prompts:
  - deploy
  - logs

To tylko kilka dodatków do interfejsu wiersza poleceń Gemini, które pokazaliśmy, jak skonfigurować. Więcej rozszerzeń znajdziesz w Galerii rozszerzeń. Możesz też skorzystać z samouczka „Pierwsze kroki z rozszerzeniami interfejsu wiersza poleceń Gemini”.

10. Przykłady zastosowań do wypróbowania

Interfejs wiersza poleceń Gemini można stosować w wielu przypadkach, które dotyczą zarówno deweloperów, jak i osób niebędących deweloperami. Poniżej znajdziesz kilka scenariuszy. W zależności od tego, co Cię interesuje, możesz wypróbować dowolny z nich lub wszystkie.

W każdym z tych przypadków podajemy prompt. Możesz to wypróbować w trybie interaktywnym lub nieinteraktywnym interfejsu wiersza poleceń Gemini za pomocą parametru -p podczas uruchamiania interfejsu wiersza poleceń Gemini.

Kodowanie w dobrym nastroju dzięki interfejsowi wiersza poleceń Gemini

Użyjmy interfejsu wiersza poleceń Gemini, aby wygenerować kod aplikacji. W tym zadaniu poprosisz interfejs wiersza poleceń Gemini o wygenerowanie aplikacji, a następnie prześlesz jej początkową wersję do repozytorium GitHub.

Wymagania wstępne

Aby wykonać zadania w tej sekcji, musisz spełnić kilka wymagań wstępnych:

  • Git
  • Interfejs wiersza poleceń Gemini z rozszerzeniem Github Gemini CLI (zrobiliśmy to wcześniej) lub jeśli masz skonfigurowane narzędzie gh ( narzędzie Github CLI), to też będzie działać.
  • Znajomość podstaw Gita i podstaw programowania

Zakładamy, że interfejs wiersza poleceń Gemini został uruchomiony w wybranym folderze.

Zacznij od początkowego prompta. Możesz go dowolnie modyfikować. Pamiętaj, że podczas sesji z interfejsem wiersza poleceń Gemini poprosi Cię o uprawnienia do tworzenia plików itp. Przyznaj wymagane uprawnienia.

W tym zadaniu nie oczekujemy, że interfejs wiersza poleceń Gemini uruchomi aplikację lub ją przetestuje, ponieważ chcemy mieć większą kontrolę. Ale to zależy tylko od Ciebie.

Generate a website for a 1-day event filled with technical talks. There are going to be 6 talks in a single track of 1 hour each. Each talk has the following information: title, 1 or maximum of 2 speakers, category (1 or maximum of 3 keywords), duration and a description. The website has a single page where users can see the schedule for the entire day with the timings. There will be one lunch break of an hour and the event starts at 10:00 AM. Keep a 10 minute transition between talks. I would like to use Node.js on the server side and standard HTML, JavaScript and CSS on the front-end. The users should be able to search the talks based on category.

I would like you to proceed in the following way: 
1. Plan out how you would design and code this application.
2. Ask me for any clarifications along the way.
3. Once I am fine with it, do generate the code and provide me instructions to run and test locally. 

Kolejne prompty i odpowiedzi to przykładowy przepływ, który zaobserwowaliśmy. Interfejs wiersza poleceń Gemini zaproponuje plan i poprosi Cię o potwierdzenie lub wyjaśnienie pewnych kwestii albo od razu przejdzie do działania. Postępuj zgodnie z instrukcjami. Oto przykładowy wątek rozmowy:

   1. Backend (Node.js/Express):
       * Set up an Express server to serve the static frontend files.
       * Create an /api/schedule endpoint that will:
           * Generate the event schedule dynamically, including talk timings and the lunch break, based on your requirements.
           * Store mock talk data (title, speakers, category, description).
           * Filter the schedule based on a category query parameter.

   2. Frontend (HTML, CSS, JavaScript):
       * Create an index.html file for the main structure.
       * Develop style.css for a clean and responsive design.
       * Write script.js to:
           * Fetch the schedule data from the backend.
           * Dynamically render the talks and lunch break on the page.
           * Implement a search input that filters talks by category, updating the displayed schedule without a full page reload.

   3. Schedule Logic:
       * The backend will handle calculating the precise start and end times for each 1-hour talk, factoring in the 10:00 AM start, 10-minute transitions, and the 1-hour lunch break.

  Before I proceed with the code, could you please clarify the following:

   * Example Talk Data: Could you provide some example talk titles, speakers, categories (keywords), and descriptions? This will help me create realistic dummy data for the schedule.
   * Lunch Break Placement: Where should the 1-hour lunch break be placed in the schedule? (e.g., after the 3rd talk, at 1 PM, etc.)
   * Styling Preferences: Do you have any specific styling preferences (e.g., color scheme, modern/minimalist, etc.)? If not, I will go with a clean, simple design.

 I will create a single-page website for your event. Here's my plan:

  WriteTodos Set 7 todo(s)                                                                                                                                                                                        

 I am waiting for your clarifications regarding the example talk data, lunch break placement, and styling preferences before I proceed with generating the code.

Na koniec wyświetlił mi to podsumowanie:

 Instructions to Run and Test Locally:

   1. Start the server:
      Open your terminal in the project directory (/home/romin/gemini-cli-projects/event-website/) and run:
   1     node server.js
      You should see a message in the terminal indicating: Server running on http://localhost:3000.

   2. Open in your browser:
      Open your web browser and navigate to:
      http://localhost:3000

   3. Test functionality:
       * You should see the event schedule displayed on the page, with talks and a lunch break.
       * Search by category: In the "Search by category..." input box, type a category keyword (e.g., "AI", "Web Development", "Python", "Security").
       * Click the "Search" button. The schedule displayed should filter to only show talks matching that category.
       * Click the "Reset" button to clear the search filter and view the full schedule again.

  Let me know if you encounter any issues or if you'd like to make any modifications or additions to the website!

Po wykonaniu instrukcji dotyczących uruchomienia serwera i przejścia na stronę główną otrzymaliśmy przykładową witrynę, jak pokazano poniżej (jeśli użyjesz tego samego prompta, powinna Ci się wyświetlić podobna witryna):

78c224b7ce29bb4d.png

Możesz wprowadzać kolejne zmiany za pomocą interfejsu wiersza poleceń Gemini. Gdy zmiany będą Ci odpowiadać, możesz przesłać je do repozytorium GitHub.

Najpierw utwórzmy plik .gitignore. Możesz skorzystać z pomocy interfejsu Gemini CLI.

Create a .gitignore file for this project.

Następnym krokiem jest przekazanie interfejsowi wiersza poleceń Gemini instrukcji wypchnięcia tego repozytorium na nasze konto GitHub. W tle powinny zostać uruchomione narzędzia serwera MCP GitHub.

Wpisz prompt podobny do tego:

Great! I would now like to push all of this to a new repository in my Github account. I would like to name this repository <Your-Name>-event-talks-app

Wykonuje ona kilka poleceń:

  1. Utwórz repozytorium.
  2. Będzie używać wielu poleceń Git : init, add, commit do zarządzania lokalnym repozytorium Git.
  3. Następnie skonfiguruje zdalne repozytorium Git i wykona operację push.

Uwaga: w niektórych przypadkach interfejs wiersza poleceń Gemini może przekroczyć limit czasu lub użyć nieprawidłowej nazwy użytkownika itp. Wchodź z nim w interakcję i sugeruj poprawki.

Jeśli wszystko pójdzie dobrze, powinno powstać repozytorium GitHub. Przykładowy zrzut ekranu znajdziesz poniżej:

d046ee11d28e4d33.png

Pamiętaj, że w tym projekcie nie wygenerowano README.md. To dobre ćwiczenie na następną sekcję, w której będziemy pracować z utworzonym właśnie repozytorium.

Korzystanie z interfejsu wiersza poleceń Gemini do pracy z repozytorium GitHub

W tym przypadku użyjesz interfejsu wiersza poleceń Gemini do pracy z repozytorium GitHub. Wykonasz wiele zadań, w tym:

  • Zrozumienie bazy kodu
  • Generowanie dokumentacji
  • Wdrażanie nowej funkcji
  • Zatwierdź i prześlij zmiany z powrotem do repozytorium.
  • Praca nad problemem w GitHubie i wdrażanie proponowanych zmian

Powinno to stanowić dobrą podstawę do pracy z repozytoriami i używania interfejsu wiersza poleceń Gemini jako asystenta w tych zadaniach związanych z programowaniem.

Wymagania wstępne

Aby wykonać zadania w tej sekcji, musisz mieć:

  • Git
  • Interfejs wiersza poleceń Gemini z rozszerzeniem Github MCP Gemini CLI (zrobiliśmy to wcześniej) lub jeśli masz skonfigurowane gh ( narzędzie wiersza poleceń Github), to też zadziała.
  • Znajomość podstaw Git i podstaw programowania (w tym przykładzie użyjemy Node.js, ponieważ możesz mieć już gotowe środowisko na swoim komputerze ze względu na zainstalowany interfejs wiersza poleceń Gemini). Możesz później wybrać dowolne repozytorium z innym językiem programowania i platformą.
  • Powinna być już ukończona poprzednia sekcja, a repozytorium, w którym utworzyliśmy witrynę Event Talks, powinno być pod ręką.

Nadal używaj interfejsu wiersza poleceń Gemini z folderu lub katalogu, w którym została wygenerowana aplikacja Event Talks. W razie potrzeby możesz sklonować repozytorium na komputer lokalny, a następnie uruchomić interfejs wiersza poleceń Gemini z tego katalogu. Wypróbuj te scenariusze:

Zrozumienie bazy kodu

  • Chcę szczegółowo poznać ten projekt. Wyjaśnij mi główne funkcje, a potem podziel je na funkcje po stronie serwera i po stronie klienta. Pokaż mi przykładowy przepływ i wyjaśnij, jak działają żądania i odpowiedzi.
  • Explain @server.js

Generowanie pliku README

  • Wygeneruj plik README dla tego projektu.

Wdrażanie nowej funkcji

  • Chcę wdrożyć nową funkcję, która umożliwi użytkownikowi wyszukiwanie według konkretnego głośnika. Najpierw pokaż mi plan wprowadzenia tej zmiany, a potem wygenerujemy kod.

Powinien on zaproponować Ci plan, który możesz zatwierdzić. Po zatwierdzeniu interfejs wiersza poleceń Gemini wprowadzi te zmiany. Przetestuj zmiany, a jeśli znajdziesz błędy (co jest prawdopodobne), poproś interfejs wiersza poleceń Gemini o ich naprawienie.

Gdy zmiany będą wyglądać dobrze, możesz wykonać te same czynności, aby zatwierdzić i wypchnąć je do repozytorium zdalnego.

Generowanie zgłoszeń na podstawie sugerowanych funkcji

Spróbujmy czegoś ciekawego. Zapytasz interfejs wiersza poleceń Gemini, jak można poprawić wrażenia użytkowników tej aplikacji. Na podstawie jego oceny możesz utworzyć te sugestie jako problemy w tym samym repozytorium GitHub. Użyje narzędzia „create_issue” z serwera MCP GitHub.

Wypróbuj ten prompt:

  • Chcę, abyś ocenił aplikację z punktu widzenia wygody użytkownika. łatwość obsługi, szybkość reakcji, pomocne wiadomości i inne. Przygotuj listę ulepszeń, a potem utwórz je jako problemy w repozytorium GitHub.

Najlepiej, jeśli najpierw poinformuje Cię o proponowanych ulepszeniach, a potem za Twoją zgodą utworzy zgłoszenia w repozytorium GitHub. Oto przykładowy zrzut ekranu z naszego testu:

86c33b7815c7872a.png

Praca nad problemem w GitHubie i wdrażanie proponowanych zmian

Możesz teraz wybrać jeden z wcześniej wygenerowanych problemów i poprosić interfejs wiersza poleceń Gemini o jego rozwiązanie.

Poniżej znajdziesz przykładowy problem, który został wygenerowany:

2778bde35f41efe9.png

Skopiuj cały adres URL problemu i wpisz prompta podobnego do tego:

  • Zapoznaj się z sekcją Problem: <YOUR_ISSUE_URL> i dowiedz się, jakie zmiany należy wprowadzić. Najpierw omów plan, a potem pokaż proponowane zmiany w kodzie.

Możesz zatwierdzić zmiany i wypchnąć je do repozytorium. Możesz nawet poprosić o zamknięcie zgłoszenia.

(Opcjonalnie) Codzienne zadania

Poniższe przypadki użycia to zadania, które możesz wykonywać regularnie. Obejmują one m.in. porządkowanie plików w folderach, pobieranie i podsumowywanie treści z internetu, przetwarzanie plików graficznych i wyodrębnianie z nich treści, pracę z bazami danych i inne działania.

Możesz zapoznać się z dowolnymi przypadkami użycia.

Porządkowanie plików i folderów

Za pomocą interfejsu wiersza poleceń Gemini możesz w razie potrzeby organizować pliki w różnych folderach w zależności od ich typów. Otwórz na komputerze folder z kilkoma plikami w formatach TXT, PNG, JPG, PDF, MP4 i innych. Najprawdopodobniej będzie to pulpit lub folder Pobrane.

Oto przykładowy folder, a poniżej jego zawartość (możesz mieć inne pliki):

7011e3dfaf628e9b.png

Przejdź do tego folderu i uruchom interfejs wiersza poleceń Gemini. Najpierw poproś interfejs wiersza poleceń Gemini o utworzenie folderów: Obrazy, Dokumenty i Filmy, a następnie o uporządkowanie plików w tych folderach.

Interfejs wiersza poleceń Gemini często prosi o zezwolenie przed wykonaniem poleceń, zwłaszcza tych, które modyfikują system plików (np. zapisywanie, przenoszenie lub usuwanie plików). Zanim udzielisz pozwolenia, zawsze dokładnie sprawdzaj te prośby. To Twoja siatka bezpieczeństwa.

Create the following folders "Images","Documents","Videos"

Następnie wpisz ten prompt:

Go through all the files in this folder and then organize them by moving all the files ending with .jpg, .jpeg, .gif into the "Images" folder. Move all ".txt" files into the "Documents" folder. Move all the ".mp4" files in the "Videos" folder.

Poniżej znajdziesz przykład tego, jak powinien wyglądać folder po zakończeniu procesu. Powinny pojawić się nowe podfoldery, a pliki zostaną przeniesione do odpowiednich podfolderów w zależności od ich typu.

4c1ee9ddea4b3f5f.png

Kilka innych scenariuszy porządkowania (podpowiedzi są podane obok każdego scenariusza):

  1. Podsumowanie: dla każdego dokumentu w folderze „Dokumenty” utwórz w tym samym folderze plik tekstowy o nazwie „summary_ORIGINAL_FILENAME.txt”, który zawiera 3-zdaniowe podsumowanie najważniejszych punktów dokumentu.
  2. Kategoryzacja według typu: skanuj wszystkie pliki PDF i DOCX w tym katalogu. Przenieś wszystkie pliki, które mają w nazwie lub treści słowo „invoice”, do folderu „Financial/Invoices”. Przenieś pliki z „paragonem” do folderu „Finanse/Paragony”. Wszystkie inne pliki .docx trafią do folderu „Raporty”.
  3. Wyodrębnianie kluczowych informacji (i „tagowanie”): w przypadku każdego pliku PDF w folderze „Financial/Invoices” odczytaj jego zawartość. Jeśli znajdziesz datę, zmień nazwę pliku, aby zawierała tę datę w formacie RRRR-MM-DD, np. ‘invoice_2025-07-26_original_name.pdf'.

Porządkowanie obrazów

Zobaczmy, jak możesz uporządkować treści graficzne na swoim urządzeniu.

Aby to wypróbować:

  • Musisz mieć katalog lub folder z różnymi plikami obrazów (np. JPG, PNG). Uwzględnij niektóre z danymi EXIF (większość zdjęć z aparatów i telefonów ma te dane).
  • Przejdź do tego katalogu.
  • Uruchom interfejs wiersza poleceń Gemini.

Wypróbuj dowolny z tych scenariuszy (prompty są podane obok każdego z nich):

  • Zmień nazwę według daty (dane EXIF): zmień nazwy wszystkich plików .jpg i .png w tym katalogu, aby zawierały datę utworzenia z danych EXIF w formacie „RRRRMMDD_GGMMSS_oryginalna_nazwa.jpg”. Jeśli nie znajdziesz daty EXIF, użyj daty ostatniej modyfikacji pliku.
  • Utwórz opisy obrazów: dla każdego obrazu w tym folderze opisz, co się na nim znajduje, i zapisz ten opis w pliku tekstowym o nazwie „description_ORIGINAL_FILENAME.txt” w tym samym katalogu.
  • Identyfikowanie duplikatów (koncepcyjne, wymaga bardziej zaawansowanej logiki): znajdź w tym folderze wszystkie zduplikowane obrazy na podstawie ich zawartości wizualnej i wyświetl ich nazwy plików. Nie usuwaj ich jeszcze.

Streszczanie artykułów (plików lokalnych lub stron internetowych)

W każdym z poniższych scenariuszy możesz zmienić adres URL, temat zainteresowania i nazwy plików lokalnych. Podane nazwy plików są przykładowe. Możesz je zastąpić nazwami plików, które masz w systemie.

Wypróbuj dowolny z tych scenariuszy (prompty są podane obok każdego z nich):

  • Podsumuj artykuł w internecie (jeden adres URL): wejdź na stronę https://medium.com/google-cloud/getting-started-with-gemini-cli-8cc4674a1371 i podsumuj 3 najważniejsze wnioski z tego artykułu.
  • Podsumowywanie wielu artykułów w internecie (np. z wyszukiwarki): znajdź w wyszukiwarce Google najnowsze artykuły o „Gemini CLI”. W przypadku 5 najbardziej trafnych artykułów podsumuj każdy z nich w 2–3 zdaniach i podaj ich adresy URL.
  • Podsumuj lokalny plik tekstowy: podsumuj najważniejsze punkty artykułu w pliku „my_research_paper.txt”. Skup się na metodologii i wnioskach.
  • Podsumuj lokalny plik PDF: przeczytaj „financial_report_Q2_2025.pdf”. Podaj podsumowanie wyników finansowych i wymienionych kluczowych wyzwań.

Wyodrębnianie konkretnych informacji (pliki lokalne lub internet)

W każdym z poniższych scenariuszy możesz zmienić adres URL, temat zainteresowania i nazwy plików lokalnych. Podane nazwy plików są przykładowe. Możesz je zastąpić nazwami plików, które masz w systemie.

Wypróbuj dowolny z tych scenariuszy (prompty są podane obok każdego z nich):

  • Wyodrębnij podmioty z lokalnego artykułu: z pliku „biography.txt” wypisz wszystkie osoby i ważne daty z nimi związane.
  • Wyodrębnij dane z tabeli w pliku PDF: z pliku „quarterly_sales.pdf” wyodrębnij dane z tabeli na stronie 3, która zawiera informacje o „Sprzedaży produktów według regionu”, i przedstaw je w formacie tabeli Markdown.
  • Wyodrębnianie nagłówków i źródeł wiadomości ze strony internetowej z wiadomościami: wejdź na stronę „https://news.google.com/” (lub podobną stronę z wiadomościami). Wyodrębnij główne nagłówki ze strony głównej i odpowiednie źródła wiadomości. Przedstaw je w formie listy punktowanej.
  • Znajdowanie specyfikacji produktu na stronie e-commerce: otwórz stronę „https://www.amazon.in/Google-Cloud-Certified-Associate-Engineer/dp/1119871441” (przykład dla książki). Wyodrębnij tytuł książki, autora i inne szczegóły. Przedstaw to w formacie JSON.
  • Wyodrębnij czas trwania z filmu w określonym formacie (np. „2h37m42s”).

Odpowiadanie na pytania na podstawie treści (działanie podobne do RAG)

W każdym z poniższych scenariuszy możesz zmienić adres URL, temat zainteresowania i nazwy plików lokalnych. Podane nazwy plików są przykładowe. Możesz je zastąpić nazwami plików, które masz w systemie.

Wypróbuj dowolny z tych scenariuszy (prompty są podane obok każdego z nich):

  • Pytania i odpowiedzi dotyczące dokumentu lokalnego: załączam plik „user_manual.pdf”. Jakie kroki należy wykonać, aby rozwiązać problemy z połączeniem sieciowym?
  • Pytania i odpowiedzi na stronie internetowej: na podstawie treści ze strony „https://www.who.int/news-room/fact-sheets/detail/climate-change-and-health” podaj główne zagrożenia dla zdrowia związane ze zmianami klimatu według WHO.
  • Porównaj informacje z różnych źródeł: mam 2 artykuły: „article1.txt” i „article2.txt”. Oba omawiają ostatnie zmiany w polityce gospodarczej. Porównaj ich poglądy na temat potencjalnego wpływu na małe firmy.

Generowanie treści na podstawie wyodrębnionych informacji

W każdym z poniższych scenariuszy możesz zmienić adres URL, temat zainteresowania i nazwy plików lokalnych.

Wypróbuj dowolny z tych scenariuszy (prompty są podane obok każdego z nich):

  • Generowanie podsumowania wiadomości na podstawie artykułu: przeczytaj @tech_innovation_article.txt. Napisz krótką, interesującą notatkę prasową (około 150 słów) odpowiednią do newslettera firmowego, w której podkreślisz nową technologię i jej potencjał.
  • Napisz e-maila z podsumowaniem transkrypcji spotkania: oto plik z transkrypcją spotkania: @meeting_transcript.txt. Przygotuj e-maila do zespołu z podsumowaniem kluczowych decyzji i przypisanych działań, w tym z informacją o tym, kto jest za nie odpowiedzialny.

Obsługa wielu trybów w interfejsie wiersza poleceń Gemini

Interfejs wiersza poleceń Gemini obsługuje wiele modeli za pomocą Gemini i możesz poprosić go o przetwarzanie plików w różnych formatach treści zgodnie z Twoimi wymaganiami.

Za pomocą interfejsu wiersza poleceń Gemini przetworzysz wiele obrazów faktur i wyodrębnisz z nich kluczowe informacje. Wykonaj te czynności:

  • Utwórz folder na komputerze i pobierz faktury z tego repozytorium w GitHubie.
  • Uruchamianie interfejsu wiersza poleceń Gemini z tego folderu

Wpisz ten prompt, aby wyodrębnić informacje z faktur w formie tabeli.

The current folder contains a list of invoice files in Image format. Go through all the files in this folder and extract the following invoice information in the form of a table: Invoice No, Invoice Date, Invoice Sent By, Due Date, Due Amount.

Dane wyjściowe powinny wyglądać tak:

7203d699d875a91f.png

Oto kolejny scenariusz, w którym możesz poprosić o dodatkowe kolumny pochodne. Załóżmy, że chcesz wyświetlać emoji czerwonego krzyżyka przy wszystkich datach płatności faktur, które już minęły. Możesz podać prompta w ten sposób:

list all files with .png extension in this folder. Extract the invoice information from it by reading them locally and display it in a table format containing the following column headers: : Invoice No, Invoice Date, Invoice Sent By, Due Date, Due Amount. Add a column at the end of the table that shows a red cross emoji in case the due date is in the past.

Wygeneruje to te dane wyjściowe:

e11fcde0400f5a0b.png

Zastosuj tę metodę do wszystkich swoich plików w formatach innych niż tekstowe.

Korzystanie z interfejsu wiersza poleceń Gemini do pracy z bazami danych

Interfejsu wiersza poleceń Gemini możesz używać do wydajniejszej pracy z różnymi bazami danych. Możesz go używać w wielu scenariuszach: do wysyłania zapytań w języku naturalnym, eksportowania danych, projektowania schematów baz danych, generowania realistycznych danych testowych i nie tylko.

Do wykonania tego zadania użyjesz SQLite3. Musisz zainstalować SQLite3 i mieć przykładową bazę danych Chinook.

Oto krótkie instrukcje konfigurowania SQLite3:

  1. macOS: SQLite3 jest zainstalowany fabrycznie. Zweryfikuj u sqlite3 --version. W razie potrzeby zainstaluj za pomocą Homebrew: brew install sqlite3.
  2. Windows: pobierz wstępnie skompilowane pliki binarne ze strony SQLite. Wyodrębnij pliki do katalogu (np. C:\sqlite). Dodaj ten katalog do zmiennej środowiskowej PATH w systemie.
  3. Linux: Debian/Ubuntu: sudo apt update && sudo apt install sqlite3

Pobierz przykładową bazę danych Chinook (bezpośredni link do pobrania).

Aby uruchomić te prompty, zalecamy utworzenie folderu (database-tasks) w katalogu gemini-cli-projects. Skopiuj do tego folderu plik bazy danych Chinook. Sprawdź, czy narzędzie sqlite3 jest skonfigurowane w systemie i dostępne w ścieżce, aby interfejs Gemini CLI mógł z niego korzystać. Uruchom interfejs wiersza poleceń Gemini.

Diagram schematu bazy danych jest widoczny poniżej:

4178b54e03a07d60.png

Załóżmy, że znajdujesz się w folderze o nazwie database-tasks, a plik bazy danych Chinook ma nazwę chinook.db.

Poniżej znajdziesz kilka promptów, które pomogą Ci pracować z bazami danych. Omówmy pokrótce pierwszą z nich, aby pokazać, o jakie uprawnienia będzie prosić aplikacja.

Zacznij od promptu z prośbą o wyświetlenie listy tabel w bazie danych:

What tables are present in the file: chinook.db 

Narzędzie odczytuje plik, a następnie chce użyć narzędzia sqlite3 dostępnego w systemie, aby wykonać niezbędne czynności:

a8d782201eba1eb8.png

Przyznaj uprawnienia do jednorazowego uruchomienia, aby uzyskać oczekiwane dane wyjściowe:

69e96f22610e7892.png

Wypróbuj te prompty lub dowolny inny prompt:

  • Ilu jest pracowników?
  • Jaki jest schemat tabeli faktur?
  • Które 3 faktury mają najwyższą wartość i którzy klienci je wystawili?

Zauważysz, że interfejs wiersza poleceń Gemini wykonuje 2 czynności: generuje prawidłowe polecenie SQL, które spełnia Twoje wymagania, i podaje prawidłowe polecenie sqlite3.

Generowanie danych za pomocą interfejsu wiersza poleceń Gemini

Możesz użyć w wierszu poleceń Gemini prompta skutkującego wygenerowaniem danych w różnych formatach. Mogą to być elementy treści lub dane JSON, które chcesz zasymulować. Skupmy się na scenariuszach, które dotyczą deweloperów i testerów.

Oto kilka promptów, które możesz wypróbować:

Generowanie danych JSON przykładowych opinii klientów

Generate a JSON array of 3 synthetic customer reviews for a new smartphone. Each review should have 'reviewId' (string, UUID-like), 'productId' (string, e.g., 'SMARTPHONE_X'), 'rating' (integer, 1-5), 'reviewText' (string, 20-50 words), and 'reviewDate' (string, YYYY-MM-DD format).

Generowanie odpowiedzi interfejsu API (JSON)

Generate a JSON array representing 7 daily sales records for a mock API endpoint. Each record should include 'date' (YYYY-MM-DD, chronologically increasing), 'revenue' (float, between 5000.00 and 20000.00), 'unitsSold' (integer, between 100 and 500), and 'region' (string, either 'North', 'South', 'East', 'West').

Generowanie przykładowych instrukcji wstawiania do bazy danych (SQL)

Generate 5 SQL INSERT statements for a table named 'users' with columns: 'id' (INTEGER, primary key), 'username' (VARCHAR(50), unique), 'email' (VARCHAR(100)), 'password_hash' (VARCHAR(255)), 'created_at' (DATETIME, current timestamp). Ensure the password_hash is a placeholder string like 'hashed_password_X'.

Generowanie danych CSV na potrzeby wczytywania i analizy danych

Generate 10 lines of CSV data, including a header row, for customer transactions. Columns should be: 'TransactionID' (unique string), 'CustomerID' (integer), 'ItemPurchased' (string, e.g., 'Laptop', 'Monitor', 'Keyboard'), 'Quantity' (integer, 1-3), 'UnitPrice' (float, between 100.00 and 1500.00), 'TransactionDate' (YYYY-MM-DD).

Wygeneruj plik konfiguracji (YAML)

Generate a sample YAML configuration for a 'user_service'. Include sections for 'database' with 'host', 'port', 'username', 'password', 'database_name'. Also include a 'api_keys' section with 'payment_gateway' and 'email_service' placeholders. Use realistic default values.

Generowanie danych testowych dla przypadków brzegowych i weryfikacji

Generate a JSON array of 8 email addresses for testing purposes. Include a mix of: 2 valid standard emails, 2 with missing '@', 2 with invalid domains (e.g., '.com1'), and 2 with special characters in the local part that are usually invalid (e.g., spaces or multiple dots).

11. Gratulacje

Gratulacje! Udało Ci się poznać interfejs wiersza poleceń Gemini, jego możliwości i zastosować go w kilku przypadkach użycia.

Dokumentacja