Praktyczne ćwiczenia z interfejsem wiersza poleceń Gemini

1. Wprowadzenie

W tym ćwiczeniu 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 wiersza poleceń Gemini
  3. Dostosowywanie interfejsu wiersza poleceń Gemini za pomocą pliku GEMINI.md
  4. Poznaj kilka przypadków użycia interfejsu wiersza poleceń Gemini

Czego potrzebujesz

To ćwiczenie można w całości wykonać w Google Cloud Shell, w którym interfejs wiersza poleceń Gemini jest już zainstalowany.

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

Potrzebujesz:

  • przeglądarki Chrome,
  • konto Gmail,

To ćwiczenie jest przeznaczone dla użytkowników i deweloperów na wszystkich poziomach zaawansowania (w tym dla początkujących). Przykłady użycia w tym laboratorium zostały podzielone na zadania dla deweloperów i osób niebędących 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 zrozumienie kodu, generowanie dokumentacji, rozwiązywanie problemów i nie tylko. 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 wyboru projektu 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 aktywowania Cloud Shell

  1. Po połączeniu z Cloud Shell sprawdź, czy uwierzytelnianie zostało już przeprowadzone, a projekt jest już 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 wiersza poleceń Gemini, 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 początkowy 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 poniżej. Pamiętaj, że interfejs wiersza poleceń Gemini jest wstępnie zainstalowany w Cloud Shell i Cloud Workstations.

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 powyższych metod, przy pierwszym uruchomieniu może pojawić się pytanie o wybór motywu. Jeśli tak, możesz użyć domyślnego motywu lub wybrać inny.

Kolejną ważną kwestią jest uwierzytelnianie. 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.

Jeśli wyczerpiesz obecny bezpłatny limit przypisany do kont Google, możesz użyć klucza 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 strony uwierzytelniania Google w przeglądarce. Przeprowadź uwierzytelnianie za pomocą konta Google, zaakceptuj warunki, a gdy uwierzytelnianie się powiedzie, zobaczysz, że interfejs wiersza poleceń Gemini jest gotowy i czeka na Twoje polecenie.

Przykładowy zrzut ekranu znajdziesz poniżej:

8fc80ad44c19f782.png

W tym przypadku wybraliśmy opcję Vertex AI, ale w Twoim przypadku może to być konto osobiste. Zauważysz, że wybraliśmy model Gemini 2.5 (widoczny w prawym dolnym rogu). W każdej chwili możesz wybrać konkretny model za pomocą polecenia /model.

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

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

Jeśli interfejs wiersza poleceń Gemini został zainstalowany na Twoim urządzeniu i uruchomiony po raz pierwszy, musisz wybrać motyw, a potem metodę uwierzytelniania.

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 (czyli /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.

{
  "security": {
    "auth": {
      "selectedType": "oauth-personal" or "cloud-shell"
    }
  },
  "ui": {
    "theme": "Default"
  }
}

5. Pierwsza interakcja z interfejsem wiersza poleceń Gemini

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

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

Oczekiwana odpowiedź jest widoczna poniżej:

 > Give me a famous quote on Artificial Intelligence and who said that?                 
✦ "The only way to do great work is to love what you do." - Steve Jobs (While not directly about AI, it's a famous quote related to technology and innovation, which underpins AI development.)
Alternatively:
  "The development of full artificial intelligence could spell the end of the human race." - Stephen Hawking

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 wpisać Ctrl-C w interaktywnej sesji terminala interfejsu wiersza poleceń Gemini. Po zamknięciu interfejsu wiersza poleceń Gemini wyświetli statystyki sesji, które zawierają informacje o sesji, wykorzystaniu modelu i innych wskaźnikach.

6. Interfejs wiersza poleceń Gemini – parametry poleceń

Podczas uruchamiania interfejsu wiersza poleceń Gemini 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 polega na skonfigurowaniu interfejsu wiersza poleceń Gemini tak, aby używał określonego trybu Gemini. Obecnie, w momencie aktualizacji tego laboratorium, lista obsługiwanych modeli wygląda następująco: Aby użyć konkretnego modelu, 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 ten sposób, możesz sprawdzić model w prawym dolnym rogu terminala interfejsu wiersza poleceń Gemini.

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.

69154a6bf6553f35.png

Tryb nieinteraktywny

Ciekawą opcją jest uruchomienie interfejsu wiersza poleceń Gemini w trybie nieinteraktywnym. Oznacza to, że bezpośrednio podajesz prompta, a model 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 zautomatyzowany sposób w ramach skryptu lub innego procesu automatyzacji. Parametru -p używasz do przekazywania prompta do interfejsu wiersza poleceń Gemini, jak pokazano poniżej:

gemini -p "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.

Pamiętaj, że jeśli pominiesz parametr -p i podasz tylko poniższe informacje, interfejs wiersza poleceń Gemini otworzy się z promptem i będzie kontynuować działanie w jego ramach.

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

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

Interfejs wiersza poleceń Gemini 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ń. Narzędzia te zwiększają możliwości interfejsu CLI, umożliwiając mu wyjście poza generowanie tekstu i pomagając w wykonywaniu wielu różnych zadań”.

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

Available Gemini CLI tools:
  - Activate Skill (activate_skill)
  - Ask User (ask_user)
  - Edit (replace)
  - Enter Plan Mode (enter_plan_mode)
  - FindFiles (glob)
  - GoogleSearch (google_web_search)
  - Invoke Subagent (invoke_agent)
  - List Background Processes (list_background_processes)
  - Read Background Output (read_background_output)
  - ReadFile (read_file)
  - ReadFolder (list_directory)
  - SearchText (grep_search)
  - Shell (run_shell_command)
  - Update Topic Context (update_topic)
  - WebFetch (web_fetch)
  - WriteFile (write_file)

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), ale 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, i który pozwoli Ci dobrze zrozumieć, 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 wiersza poleceń Gemini. 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:

 Searching for Finance News: 
  I will first search for the latest finance headlines and then save them to a file.
  ✓  GoogleSearch  Searching the web for: "latest finance headlines"
   → Search results for "latest finance headlines" returned.
  Saving Finance News: I will now save the finance headlines to the file 'finance-news-today.txt'.

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.

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

✦ I have saved the latest finance news to finance-news-today.txt.
  Finance News Saved: The task is complete.

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 jest widoczny poniżej:

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:

    ReadManyFiles  Attempting to read files from finance-news-today.txt  Read 1 file(s)
  Topic: Summarizing the financial news headlines.
 The latest finance headlines as of May 15, 2026, include:
  Global Markets & Economy:
   * The Dow Jones Industrial Average surpassed 50,000 for the first time, driven by strong earnings from Cisco
     Systems and a 2% rise in Nasdaq due to tech stocks.
   * Inflation concerns are growing, hinting at potential Fed interest rate hikes.
   * Kevin Warsh has been confirmed as the new Federal Reserve head.
   * A "constructive" U.S.-China summit took place in Beijing between President Trump and President Xi, with
     markets watching for impacts from proposed tariffs.
  Corporate & Tech News:
   
<REST OF THE CONTENT>

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

To dobry moment, aby dowiedzieć się, jak bezpośrednio korzystać z Shell 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:

aab5d032116fa5e8.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.

f6e6d45174a9997d.png

Zawartość pliku możesz też wydrukować za pomocą polecenia cat, np. cat finance-news-today.txt.

Ćwiczenie: oto krótkie ćwiczenie, które możesz wypróbować. Wybierz kanał RSS. Użyj prompta w interfejsie wiersza poleceń Gemini, 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 wiersza poleceń Gemini 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ć. Może pojawić się prośba o uprawnienia do wywoływania tych narzędzi. W takim przypadku przyznaj niezbędne uprawnienia.

9. Dodatki do interfejsu wiersza poleceń Gemini

Jak podano w dokumentacji, rozszerzenia interfejsu wiersza poleceń Gemini łączą 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. 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 to traktować jako „kontener wysyłkowy” dla dostosowań interfejsu wiersza poleceń Gemini, który zawiera wszystko, co jest potrzebne do określonego przepływu pracy, w jednym, uporządkowanym pakiecie.

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 znajdziesz wszystkie oficjalne rozszerzenia Google i firm zewnętrznych:

  1. Otwórz w przeglądarce ten adres URL: https://geminicli.com/extensions/
  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 lub kliknij ten link.
  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.

Dodatki do 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.
  gemini extensions config [name] [setting]                  
    Configure extension settings.
Options:

Polecenia są proste (instalacja/odinstalowanie, lista, aktualizacja, włączanie/wyłączanie itp.) i w tym ćwiczeniu 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 Cloud Run

Rozszerzenie Cloud Run dostępne w galerii rozszerzeń 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 poprosi Cię o podanie identyfikatora projektu Google i lokalizacji projektu Google. Podaj te informacje. 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: /Users/romin/.gemini/extensions/cloud-run
 Source: https://github.com/GoogleCloudPlatform/cloud-run-mcp (Type: github-release)
 Release tag: v1.10.0
 Enabled (User): true
 Enabled (Workspace): true
 Context files:
  /Users/romin/.gemini/extensions/cloud-run/gemini-extension/GEMINI.md
 MCP servers:
  cloud-run
 Settings:
  Project ID: YOUR_GCP_PROJEC_ID (User - /Users/romin/.gemini/extensions/cloud-run/.env)
  Region: YOUR_GCP_PROJECT_LOCATION (User - /Users/romin/.gemini/extensions/cloud-run/.env)

Jeśli teraz uruchomisz interfejs wiersza poleceń Gemini i wykonasz polecenie /mcp list, zobaczysz te informacje: Zwróć uwagę na narzędziaprompty serwera MCP Cloud Run.

Configured MCP servers:
🟢 cloud-run (from cloud-run) - Ready (8 tools, 2 prompts)
  Tools:
  - mcp_cloud-run_create_project
  - mcp_cloud-run_deploy_container_image
  - mcp_cloud-run_deploy_file_contents
  - mcp_cloud-run_deploy_local_folder
  - mcp_cloud-run_get_service
  - mcp_cloud-run_get_service_log
  - mcp_cloud-run_list_projects
  - mcp_cloud-run_list_services
  Prompts:
  - deploy
  - logs

To tylko jeden przykład dodatku do interfejsu wiersza poleceń Gemini, którego konfigurację pokazaliśmy. Więcej rozszerzeń znajdziesz w galerii rozszerzeń.

10. Przykłady zastosowań do wypróbowania

Interfejs wiersza poleceń Gemini można stosować w wielu przypadkach, które dotyczą zarówno programistów, jak i osób niebędących programistami. 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.

Vibe coding z interfejsem 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
  • Skonfiguruj gh ( narzędzie GitHub CLI).
  • Znajomość podstaw Gita i podstaw programowania

Zakładamy, że interfejs wiersza poleceń Gemini został uruchomiony w wybranym folderze. W naszym przypadku interfejs wiersza poleceń Gemini został uruchomiony z początkowego folderu domowego : gemini-cli-projects i innego folderu event-website w tym folderze.

Zacznij od początkowego prompta. Możesz traktować go jako specyfikację aplikacji. 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 całkowicie 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 przejdzie dalej. Postępuj zgodnie z instrukcjami. Oto przykładowy wątek rozmowy:

    Of course. I will start by creating a plan for the application.
  Plan:
   1. Backend (Node.js):
       * I'll set up a simple Node.js server using the Express.js framework.
       * This server will have two main purposes:
           1. Serve the static frontend files (HTML, CSS, JavaScript).
           2. Provide an API endpoint (e.g., /api/talks) that will send the event schedule data to the frontend as a JSON object.
       * The talk data will be stored in a separate talks.json file for easy management.
   2. Frontend (HTML, CSS, JS):
       * HTML: A single index.html file will define the structure of the page, including a container for the schedule and a search input field for filtering by category.
       * CSS: A style.css file will be used to style the website for a clean and professional look, ensuring the schedule is easy to read.
       * JavaScript: A script.js file will handle the dynamic aspects of the site:
           1. It will fetch the talk data from the backend API when the page loads.
           2. It will dynamically render the schedule on the page based on the fetched data.
           3. It will implement the search functionality. As the user types in the search box, it will filter the displayed talks based on the category keywords.
   3. Project Structure:
      I will organize the project with a clear and standard structure:
   1     /
   2     ├── public/
   3        ├── index.html
   4        ├── style.css
   5        └── script.js
   6     ├── talks.json
   7     └── server.js
   8     └── package.json
  Before I proceed with generating the code, I have a few questions to ensure the final product meets your expectations:

Zadaje mi nawet kilka pytań (które są widoczne poniżej i na które odpowiadam):

c6127207c54a776c.png

Następnie generuje kod, w kilku miejscach prosząc mnie o potwierdzenie, na co wyrażam zgodę.

Na koniec uruchomił serwer i poprosił mnie o sprawdzenie strony:

The server is now running in the background.
  3. View Your Website
  You can now open your web browser and navigate to the following address to see your website:
  http://localhost:3000 (http://localhost:3000)
  4. Test the Search Functionality
  Once the page is loaded, you can test the search functionality by typing a category into the search bar (e.g., "AI", "Frontend", "Cybersecurity"). The list of talks
  will filter in real-time.
  This completes the setup and implementation of your event website. Let me know if you have any other questions.

Oto przykładowa strona, którą wygenerował:

12664933302b3867.png

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

Najpierw utwórz plik .gitignore. Możesz skorzystać z pomocy interfejsu wiersza poleceń Gemini.

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. Do zarządzania lokalnym repozytorium Git będzie używać wielu poleceń Git : init, add i commit.
  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, repozytorium GitHub powinno być gotowe. Przykładowy zrzut ekranu znajdziesz poniżej:

b393c67b13ddf19a.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 i gh ( narzędzie GitHub CLI);
  • 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ć 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ć dostępne.

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 pojawią się 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. Może nawet robić to automatycznie. Zawsze możesz zapytać interfejs wiersza poleceń Gemini, co może, a czego nie może robić.

Generowanie problemów na podstawie sugerowanych funkcji

Spróbujmy czegoś ciekawego. Zapytasz interfejs wiersza poleceń Gemini o to, jak może poprawić wrażenia użytkowników tej aplikacji. Na podstawie swojej oceny może on tworzyć sugestie w postaci zgłoszeń 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 z nich zgłoszenia w repozytorium GitHub.

Najpierw udostępni Ci ulepszenia, a potem za Twoją zgodą utworzy zgłoszenia w repozytorium GitHub. Oto przykładowy zrzut ekranu z naszego testu:

10a31e665be46f9d.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 musisz 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 uporządkować pliki według typów w różnych folderach. 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, Filmy, a potem o uporządkowanie plików w tych folderach.

Interfejs wiersza poleceń Gemini często prosi o pozwolenie 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: w przypadku 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 głównych 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 graficznymi (np. JPG, PNG). Dołącz zdjęcia z danymi EXIF (większość zdjęć z aparatów i telefonów je zawiera).
  • 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ź najnowsze artykuły z wiadomościami na temat „interfejsu wiersza poleceń Gemini” za pomocą wyszukiwarki Google. 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: w 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.
  • Znajdź specyfikacje 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: korzystając z treści ze strony „https://www.who.int/news-room/fact-sheets/detail/climate-change-and-health”, jakie są 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 opinie 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ótki, interesujący biuletyn informacyjny (około 150 słów) do firmowego newslettera, w którym podkreślisz nową technologię i jej potencjał.
  • Utwórz wersję roboczą e-maila z podsumowaniem transkrypcji spotkania: oto plik transkrypcji spotkania: @meeting_transcript.txt. Napisz e-maila do zespołu, w którym podsumujesz kluczowe podjęte decyzje i przypisane działania, w tym osoby odpowiedzialne za każde z nich.

Obsługa wielu rodzajów danych w interfejsie wiersza poleceń Gemini

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

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

  • Utwórz folder na komputerze i pobierz z tego repozytorium GitHub kilka faktur.
  • uruchamiać interfejs 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.

Wynik powinien 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 za pomocą 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 wiersza poleceń Gemini 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, aby wyświetlić listę tabel w bazie danych. Wpisz ten prompt:

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łową instrukcję SQL spełniającą Twoje wymagania i podaje prawidłowe polecenie sqlite3.

Generowanie danych za pomocą interfejsu wiersza poleceń Gemini

Możesz użyć interfejsu wiersza poleceń Gemini, aby wygenerować dane 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