Polecenia i sterowanie: koordynowanie tworzenia aplikacji za pomocą Gemini i MCP

1. Wprowadzenie

W tym praktycznym laboratorium przećwiczysz nowoczesne umiejętności programistyczne, koordynując działanie Antigravity w celu utworzenia kompletnej aplikacji opartej na chmurze. Dowiesz się też, jak używać MCP Developer Knowledge i umiejętności agenta, aby zwiększyć wiedzę agenta i poprawić jakość jego odpowiedzi.

Tworzymy „Cat Delivery System”, aplikację, która generuje obrazy kotów za pomocą Gemini 3.1 Flash Image, znanego też jako Nano Banana 2. Backend aplikacji zostanie opracowany przy użyciu pakietu Antigravity SDK i wdrożony w Cloud Run. Utworzymy też nowoczesny frontend za pomocą lit i vite. A wszystko to bez ręcznego pisania kodu.

Czego się nauczysz

  • Jak pracować z Antigravity CLI w trybie szybkim i planowania
  • Jak przyznać Antigravity dostęp do dokumentacji Google dla programistów za pomocą serwera MCP Developer Knowledge
  • Jak zainstalować umiejętności niestandardowe w Antigravity CLI
  • Jak używać Antigravity do wdrażania i sprawdzania aplikacji

Wymagania wstępne

  • Doświadczenie w korzystaniu z terminala
  • Czytanie i rozumienie kodu
  • Podstawowa wiedza o agentach AI do kodowania
  • Podstawowa znajomość pojęć związanych z chmurą

2. Konfiguracja

Aby zainicjować projekt Google Cloud potrzebny do tego ćwiczenia, wykonaj podane niżej instrukcje. Po zainicjowaniu projektu zalecamy wykonanie tego ćwiczenia w Cloud Shell, ponieważ zawiera ono wszystkie narzędzia potrzebne do jego uruchomienia.

Jeśli wolisz wykonać to ćwiczenie w środowisku lokalnym, przed rozpoczęciem musisz zainstalować Pythona, uv i edytor kodu. Wszystkie instrukcje w tym samouczku zakładają, że uruchamiasz go w Cloud Shell, chyba że zaznaczono inaczej.

Samodzielne konfigurowanie środowiska

  1. Zaloguj się w konsoli Google Cloud i utwórz nowy projekt lub użyj istniejącego. Jeśli nie masz jeszcze konta Gmail lub Google Workspace, musisz je utworzyć.

295004821bab6a87.png37d264871000675d.png96d86d3d5655cdbe.png

  • Nazwa projektu to wyświetlana nazwa dla uczestników tego projektu. Jest to ciąg znaków, który nie jest używany przez interfejsy API Google. Zawsze możesz ją zaktualizować.
  • Identyfikator projektu jest unikalny we wszystkich projektach Google Cloud i nie można go zmienić po ustawieniu. Konsola Cloud automatycznie generuje unikalny ciąg znaków. Zwykle nie musisz się nim przejmować. W większości ćwiczeń z programowania musisz odwoływać się do identyfikatora projektu (zwykle oznaczanego jako PROJECT_ID). Jeśli wygenerowany identyfikator Ci się nie podoba, możesz wygenerować inny losowy identyfikator. Możesz też spróbować własnej nazwy i sprawdzić, czy jest dostępna. Po tym kroku nie można go zmienić i pozostaje on taki przez cały czas trwania projektu.
  • Warto wiedzieć, że istnieje jeszcze trzecia wartość, numer projektu, której używają niektóre interfejsy API. Więcej informacji o tych 3 wartościach znajdziesz w dokumentacji.
  1. Następnie musisz włączyć płatności w konsoli Cloud, aby korzystać z zasobów i interfejsów API Google Cloud. Wykonanie tego laboratorium nie będzie kosztować dużo, a może nawet nic. Aby wyłączyć zasoby i uniknąć naliczania opłat po zakończeniu tego samouczka, możesz usunąć utworzone zasoby lub projekt. Nowi użytkownicy Google Cloud mogą skorzystać z bezpłatnego okresu próbnego, w którym mają do dyspozycji środki w wysokości 300 USD.

Uruchamianie Cloud Shell

Z Google Cloud można korzystać zdalnie na laptopie, ale w tym ćwiczeniu użyjesz Google Cloud Shell, czyli środowiska wiersza poleceń działającego w chmurze.

W konsoli Google Cloud kliknij ikonę Cloud Shell na pasku narzędzi w prawym górnym rogu:

Aktywowanie Cloud Shell

Uzyskanie dostępu do środowiska i połączenie się z nim powinno zająć tylko kilka chwil. Po zakończeniu powinno wyświetlić się coś takiego:

Zrzut ekranu terminala Google Cloud Shell pokazujący, że środowisko zostało połączone

Ta maszyna wirtualna zawiera wszystkie potrzebne narzędzia dla programistów. Zawiera również stały katalog domowy o pojemności 5 GB i działa w Google Cloud, co znacznie zwiększa wydajność sieci i usprawnia proces uwierzytelniania. Wszystkie zadania w tym laboratorium możesz wykonać w przeglądarce. Nie musisz niczego instalować.

3. Konfigurowanie i uwierzytelnianie interfejsu Antigravity CLI

W tym module będziesz pracować z Antigravity (AGY). Agent do kodowania od Google, który korzysta z modeli Gemini od Google, aby pomagać w tworzeniu oprogramowania. Dostępna jest aplikacja AGY na komputery, interfejs wiersza poleceń AGY (AGY CLI) oraz zintegrowane środowisko programistyczne (IDE), które umożliwia wyświetlanie i edytowanie kodu razem z agentem. W tym module będziesz używać interfejsu AGY CLI.

Dostępny jest też pakiet SDK do tworzenia własnych agentów ogólnego przeznaczenia za pomocą uprzęży agenta Antigravity (uprząż jest silnikiem Antigravity).

Uruchamianie i uwierzytelnianie AGY

Kliknij przycisk Otwórz edytor, aby otworzyć edytor Cloud Shell.

2cf4fca2471d60ac.png

Po otwarciu edytora możesz zmaksymalizować okno, klikając przycisk maksymalizacji na pasku menu:

1f8f9cf09e821b80.png

Otwórz panel terminala, wybierając w menu Terminal > Nowy terminal lub używając skrótu klawiszowego Ctrl+` (Ctrl + `):

307efeaef3537ba3.png

U dołu ekranu powinno otworzyć się nowe okno terminala z monitem bash:

e127f0fcd18d93fb.png

Następnie w terminalu utwórz katalog roboczy na pierwsze ćwiczenie i przejdź do niego:

mkdir -p ~/hello-agy && cd ~/hello-agy

W tym terminalu wpisz agy, aby uruchomić interfejs wiersza poleceń Antigravity:

agy

Po uruchomieniu agy pojawi się prośba o uwierzytelnienie. Wybierz Użyj projektu Google Cloud:

c307f5f610adb95a.png

Na ekranie pojawi się teraz link. Skopiuj podany link i wklej go na innej karcie w przeglądarce w trybie incognito.

Aby się zalogować, użyj tych samych danych logowania do konta do nauki, które zostały podane w tym module.

Skopiuj kod autoryzacji i wklej go z powrotem do agy:

6c1a2608ae353e3b.png

Gdy pojawi się prośba o podanie identyfikatora projektu, użyj identyfikatora projektu wyświetlanego w panelu bocznym na tej stronie.

9ee6b90385475721.png

Na koniec wybierz lokalizację Google Cloud global:

220a86cbed900bfb.png

Generowanie szybkiego skryptu do zwracania ciekawostek o kotach

Teraz wygenerujmy szybki skrypt, aby sprawdzić, jak działa interfejs AGY CLI.

Poproś AGY o napisanie krótkiego skryptu, który zwraca fakty o kotach, i uruchom go:

Write a simple node script that returns cat trivia and run it for me

AGY chwilę pomyśli i napisze dla Ciebie skrypt.

Gdy AGY poprosi o uprawnienia do uruchomienia skryptu węzła, wybierz Yes (Tak) i naciśnij Enter.

Prośba o uprawnienia wyglądała u mnie tak:

Requesting permission for: node cat-trivia.js

Do you want to proceed?
> 1. Yes
  2. Yes, and always allow in this conversation for commands that start with 'node cat-trivia\.js'
  3. Yes, and always allow for commands that start with 'node cat-trivia\.js' (Persist to settings.json)
  4. No

Po uruchomieniu skryptu AGY wyświetli podsumowanie wykonanych działań. Oto co mi powiedział:

I have created and executed a simple Node.js script that returns cat trivia.

### Created File

• cat-trivia.js: A standalone Node.js script that fetches random cat facts from a public API ( https://catfact.ninja/fact ) with built-in fallbacks and ASCII art.

### Execution Output

Running the script using  node cat-trivia.js  produced the following output:

     _._     _,-'""`-._
    (,-.`._,'(       |\`-/|
        `-.-' \ )-`( , o o)
              `-    \`_`"'-

    🐱 Here is your Cat Trivia:
    ----------------------------------------
    "In 1987 cats overtook dogs as the number one pet in America."
    ----------------------------------------

Podoba mi się, że dodał nawet rysunek kota w ASCII.

Teraz możesz dowiedzieć się więcej o tym, co zostało dla Ciebie utworzone. Możesz otworzyć edytor i sprawdzić kod źródłowy (zachęcam do tego), ale możesz też poprosić AGY o dodanie adnotacji i wyjaśnienie kodu:

Explain the code you generated please

Przeczytaj wyjaśnienie i zadaj dodatkowe pytania, jeśli chcesz dowiedzieć się więcej.

Na koniec zamknij agy, naciskając dwukrotnie Ctrl+D.

4. Łączenie się z dokumentacją dla deweloperów Google i wysyłanie do niej zapytań

Chociaż agenci i modele stają się coraz bardziej inteligentni, jakość odpowiedzi w dużej mierze zależy od dokładności i aktualności ich wiedzy. Dlatego ważne jest, aby udostępnić agentowi narzędzia do pobierania aktualnej dokumentacji dla programistów z wiarygodnego źródła. Dzięki temu uniknie on podejmowania błędnych decyzji na podstawie wewnętrznej wiedzy lub domysłów.

Serwer MCP Google Developer Knowledge umożliwia agentom kodowania wyszukiwanie w oficjalnej dokumentacji Google dla deweloperów informacji o Firebase, Google Cloud, Androidzie, Mapach i wielu innych usługach Google.

Dzięki połączeniu agenta bezpośrednio z oficjalną biblioteką dokumentacji Google masz pewność, że używany przez niego kod i wskazówki są aktualne i oparte na wiarygodnym kontekście.

Aby rozpocząć, włącz interfejs Developer Knowledge API:

gcloud services enable developerknowledge.googleapis.com

Konfigurowanie serwera MCP Developer Knowledge

Aby utworzyć przestrzeń roboczą dla tego projektu i skonfigurować serwer MCP Developer Knowledge dla Antigravity, wykonaj te czynności:

Pliki konfiguracyjne Antigravity dla Twojego użytkownika są przechowywane w folderze .gemini w katalogu głównym. Poniższy diagram przedstawia uproszczoną wersję z głównymi elementami, które znajdziesz w tym narzędziu:

~/.gemini
├── antigravity/
├── antigravity-cli/
│   ├── brain/            # Conversations and artifacts
│   └── settings.json     # CLI settings
├── config/
│   ├── plugins/          # Global / shared plugins
│   └── mcp_config.json   # Global / shared MCP config
├── skills/               # Global / shared skills
│   └── {skill_name}/
│       ├── SKILL.md      # Skill definition
│       └── ...           # [optional] support files, scripts, etc.
└── GEMINI.md             # Global rules

Aby dodać serwer MCP Developer Knowledge do AGY CLI, zmień plik mcp_config.json w folderze ~/.gemini/config.

Najpierw upewnij się, że folder konfiguracyjny istnieje, i utwórz pusty plik mcp_config.json:

mkdir -p ~/.gemini/config && touch mcp_config.json

Następnie otwórz ten plik w edytorze Cloud Shell za pomocą tego polecenia:

cloudshell edit ~/.gemini/config/mcp_config.json

Na koniec dodaj tę konfigurację do pliku mcp_config.json. Pamiętaj, aby zastąpić ciąg [[PROJECT_ID]] rzeczywistym identyfikatorem projektu. Identyfikator projektu znajdziesz w panelu bocznym tych instrukcji.

~/.gemini/config/mcp_config.json

{
  "mcpServers": {
    "google-developer-knowledge": {
      "url": "https://developerknowledge.googleapis.com/mcp",
      "authProviderType": "google_credentials",
      "oauth": {
        "scopes": [
          "https://www.googleapis.com/auth/cloud-platform"
        ]
      },
      "timeout": 30000,
      "headers": {
        "X-goog-user-project": "[[PROJECT_ID]]"
      }
    }
  }
}

Teraz możesz sprawdzić, czy Serwer MCP został prawidłowo wczytany za pomocą /mcp polecenia po ukośniku. Powinien pojawić się ekran podobny do tego:

f104490ade24fa5e.png

Platforma MCP Developer Knowledge jest skonfigurowana, więc zobaczmy, jak działa.

Generowanie skryptu do tworzenia zdjęć kotów za pomocą Nano Banana 2

Utwórzmy prosty skrypt, który generuje zdjęcia kotów za pomocą Nano Banana 2, aby pokazać możliwości MCP w zakresie wiedzy dla deweloperów.

Musisz uruchomić w terminalu te polecenia. Aby zamknąć agy, naciśnij dwukrotnie Ctrl+D, aby wrócić do powłoki.

Najpierw włącz AI Platform API. Ten interfejs API umożliwia projektowi wywoływanie interfejsu Gemini API:

gcloud services enable aiplatform.googleapis.com

Utwórz obszar roboczy dla generatora kociąt:

mkdir -p ~/nano-banana-kitten && cd ~/nano-banana-kitten

Zainicjuj menedżera zależności:

uv init

Uruchom teraz Antigravity i wpisz ten prompt:

Write a script that uses Nano Banana 2 through Vertex AI to generate a picture of a cute kitten, and run the script for me. Use the google-developer-knowledge MCP when researching.

Naciśnij Ctrl+O, aby rozwinąć pośrednie kroki myślowe i je przeczytać. Powinnaś(-ien) zobaczyć, jak AGY korzysta z usługi google-developer-knowledge, aby wysyłać zapytania, pisać skrypt, uruchamiać go i poprawiać znalezione błędy.

Wyświetl obraz kota =^_^=

8c74ee97ffb3caf3.png

5. Tworzenie agenta dostarczającego koty

Program Google Developer Knowledge MCP jest przydatny do odpowiadania na pytania na podstawie oficjalnej dokumentacji, ale czasami potrzebne nam informacje są bardzo specjalistyczne i nie można ich znaleźć w dokumentach. W takich przypadkach możemy użyć innego otwartego standardu: umiejętności agenta.

Umiejętności agenta to prosty, otwarty format rozszerzania możliwości agentów AI o specjalistyczną wiedzę i przepływy pracy. Cechą charakterystyczną umiejętności jest tzw. progresywne ujawnianie: zamiast od początku wczytywać całą zawartość umiejętności, agent aktywuje ją tylko w razie potrzeby, wczytując wymagane informacje na żądanie i oszczędzając cenne tokeny.

Aby ukończyć agenta dostarczającego koty, użyjemy pakietu Antigravity SDK jako uprzęży agenta. Aby zminimalizować trudności i uprościć wdrożenie agenta do kodowania, będziemy też korzystać z oficjalnej umiejętności pakietu Antigravity SDK.

Tworzenie obszaru roboczego i instalowanie zależności

Najpierw utwórz folder dla projektu końcowego:

mkdir -p ~/cat-delivery && cd ~/cat-delivery

Następnie użyj menedżera pakietów uv, aby zainicjować ten folder i zainstalować kilka zależności:

uv init && uv add fastapi uvicorn

Instalowanie umiejętności AGY SDK Python

Aby zainstalować umiejętności z kodu źródłowego i otwartych platform handlowych, możesz użyć interfejsu wiersza poleceń Skill od Vercel. Aby zainstalować umiejętność google-antigravity-sdk, uruchom w terminalu to polecenie: Upewnij się, że uruchamiasz go z folderu obszaru roboczego laboratorium (~/cdslab).

npx skills add Google-Antigravity/antigravity-sdk-python --skill google-antigravity-sdk --agent antigravity-cli --yes

Dane wyjściowe tego polecenia powinny wyglądać tak:

22091934f7a7f862.png

Zwróć uwagę, że polecenie npx skills add Google-Antigravity/antigravity-sdk-python automatycznie sklonowało repozytorium antigravity-sdk-python z GitHub. To polecenie umożliwia instalowanie umiejętności z dowolnego repozytorium GitHub, o ile zawierają one folder skills.

Instalowanie umiejętności z wtyczek

Innym sposobem instalowania umiejętności jest system wtyczek. Wtyczki w Antigravity umożliwiają umieszczanie w tym samym pakiecie nie tylko umiejętności, ale też serwerów MCP, reguł i haków. Przydają się do tworzenia spójnych rozszerzeń w jednym pakiecie wdrożeniowym.

Ponieważ tworzymy aplikację internetową, zainstaluj wtyczkę modern-web-guidance, używając tego polecenia:

agy plugin install https://github.com/GoogleChrome/modern-web-guidance

Ta wtyczka zawiera umiejętność, która zawiera sprawdzone metody tworzenia stron internetowych opracowane przez zespół Google Chrome.

Uruchom ponownie agy, aby zobaczyć, jak działają te umiejętności. W prompcie dla agy wpisz /skills, aby otworzyć menu umiejętności:

/skills

Zobaczysz coś takiego:

cfdb4b5212fa94e1.png

Po skonfigurowaniu zarówno MCP, jak i umiejętności agenta Antigravity jest gotowy do pracy nad naszym projektem i ma wszystkie informacje potrzebne do osiągnięcia sukcesu.

Planowanie aplikacji

Antigravity ma 2 tryby działania: szybki i planowania. W trybie szybkim Antigravity od razu zacznie pracować nad zadaniem. Ten tryb jest przeznaczony do prostszych, samodzielnych zadań. Tryb planowania jest przeznaczony do złożonych zadań, w przypadku których agent najpierw opracowuje plan, który możesz sprawdzić i zmodyfikować przed rozpoczęciem realizacji.

Aby włączyć tryb planowania, możesz użyć polecenia po ukośniku /planning:

/planning

Możesz wrócić do trybu szybkiego za pomocą tego symbolu: /fast

/fast

Podczas przełączania się między trybem planowania a trybem szybkim może być też przydatne przełączanie modeli. Możesz to zrobić za pomocą polecenia /model:

/model

Lista dostępnych modeli może się nieznacznie różnić w zależności od środowiska i trybu uwierzytelniania:

db085a557b145806.png

Na potrzeby tego samouczka wybierz Gemini 3.5 Flash (niski). Słowo „low” w nawiasie oznacza poziom myślenia modelu. Gemini 3.5 Flash z niskim poziomem myślenia to bardzo szybki i skuteczny model o korzystnej ekonomii tokenów. Wybór poziomu myślenia Średni lub Wysoki spowoduje, że model poświęci więcej tokenów i czasu na rozumowanie przed udzieleniem odpowiedzi.

W rzeczywistych scenariuszach możesz na przykład używać najbardziej zaawansowanego modelu na wysokim poziomie myślenia do planowania, a szybszego modelu do wdrażania. Jednak w przypadku naszego projektu wystarczy Gemini 3.5 Flash (Low).

Generowanie planu

Przywróć Antigravity do trybu planowania:

/planning

Następnie wyślij tego prompta, aby utworzyć plan wdrożenia:

Create an application named "Cat Delivery System". This application will be an agent that generates cat pictures using Gemini 3.1 Flash Image (aka Nano Banana 2). The user will interact with the agent whenever it feels the need for a cat picture in their life, whether it be to make them smile, laugh or just brighten their day. Cat pictures can take any form the user desires: anime, cartoon, photorealistic, 3D render, etc. The only rule is ABSOLUTELY NO DOGS - steer the user towards cats if necessary. P.S.: capybaras are allowed.

The tech stack should be as follows:
- uv package manager
- Backend: agent using Antigravity SDK
- Frontend: simple chat window, light mode, lit / vite
- Model: Gemini 3.5 Flash for the root agent, Gemini 3.1 Flash Image for image generation

TODO:
- backend should serve a static frontend
- define the contract between frontend and backend before starting implementation
- use Google Cloud Project auth

W fazie badań Antigravity może wywołać zarówno serwer MCP z wiedzą deweloperską, jak i co najmniej 1 umiejętność:

15194975b2519818.png

Po zakończeniu planu pojawi się prośba o jego sprawdzenie:

7fe5bc52f1abefe3.png

Zwróć uwagę na prawy dolny róg ekranu: wyświetla się tam komunikat 1 artefakt i wskazówka, aby użyć klawisza /artifact do sprawdzenia. W Antigravity pliki pomocnicze, takie jak plany, listy zadań i przewodniki, są nazywane „artefaktami”, aby odróżnić je od zwykłych plików, które są częścią rozwiązania (np. kodu źródłowego).

Wpisanie w prompcie polecenia /artifact umożliwi Ci wyświetlenie planu i dodanie do niego komentarzy, jeśli zajdzie potrzeba wprowadzenia zmian.

/artifact

Powinien pojawić się ekran podobny do tego:

2b5d9881a172ac7c.png

Zwróć uwagę, że jest tam plik o nazwie implementation_plan.md z opcjami otwierania, zatwierdzania i odrzucania. Aby go otworzyć, naciśnij Enter. Oto przykład, jak wygląda pakiet w moim systemie:

cda1079662bf731b.png

Za pomocą klawiszy strzałek możesz przewijać w górę i w dół, a w dowolnym wierszu możesz dodać komentarz, naciskając klawisz C.

Ważną sekcją do sprawdzenia jest „Plan weryfikacji”. W tym miejscu możesz zweryfikować i dodać kroki weryfikacji, aby model wiedział, że zadanie zostało wykonane.

b4f09e0084f7f6a1.png

Dodawaj komentarze do planu, aż będziesz z niego zadowolony(-a), a potem naciśnij ESC, aby wrócić. Następnie naciśnij Y, aby potwierdzić wysłanie komentarzy do agenta:

602addd55412527c.png

Gdy naciśniesz Y, agent natychmiast zacznie działać. W miarę postępów we wdrażaniu agent może poprosić o więcej potwierdzeń wywołań narzędzi.

Z czasem liczba artefaktów będzie się zwiększać. Oprócz planu Antigravity utworzy też listę zadań (task.md), aby śledzić każdy element, który musi wdrożyć, lub działanie, które musi wykonać. Po zakończeniu pracy utworzy plik z instrukcjami (walkthrough.md) zawierający wyjaśnienie osiągniętych celów. Możesz je wszystkie sprawdzić, używając ponownie polecenia /artifact.

384ffba82817aa8d.png

W każdej chwili możesz otworzyć te pliki i dodać do nich komentarze, które po wysłaniu do agenta zostaną umieszczone w kolejce do wykonania, tak jak prompt w kolejce. Warto komentować te pliki, aby przekazać agentowi dodatkowy kontekst dotyczący Twojej prośby.

6. Wdrażanie agenta w chmurze

Możesz teraz wdrożyć go w chmurze za pomocą Cloud Run. Ponieważ to zadanie nie wymaga skomplikowanego planu, możemy użyć trybu szybkiego.

Przełącz Antigravity na tryb szybki za pomocą /fast:

/fast

Użyj tego promptu, aby polecić Antigravity wdrożenie agenta CDS w Cloud Run:

Deploy the agent and frontend to Cloud Run.

TODO:
- backend should serve a static frontend
- frontend and backend are deployed in the same container

Acceptance Criteria
- Agent is deployed to cloud run
- Frontend is live and renders with no errors
- Backend is live and responds to requests with no errors

7. Gratulacje!

Podczas tych warsztatów ćwiczyliśmy nowoczesne programowanie z użyciem Antigravity, w tym rozszerzanie jego możliwości za pomocą serwerów MCP i umiejętności agenta. Utworzono też pełną aplikację korzystającą z pakietu Antigravity SDK i Gemini 3.1 Flash Image. To nie musi być koniec Twojej nauki: zapoznaj się z innymi ćwiczeniami w tej platformie i dalej rozwijaj swoje umiejętności kodowania.