Przegląd umiejętności związanych z Androidem

Umiejętności Androida to zoptymalizowane pod kątem AI instrukcje, które pomagają narzędziom i agentom AI lepiej rozumieć i wykonywać określone wzorce zgodne ze sprawdzonymi metodami i wskazówkami dotyczącymi tworzenia aplikacji na Androida. Znajdują się one w repozytorium GitHub z umiejętnościami Androida.

Umiejętności na Androida możesz wykorzystywać do wykonywania takich zadań jak:

  • Migracja z XML na Compose
  • Przejście na AGP 9
  • Konfigurowanie nowszych platform, takich jak Navigation 3
  • Ulepszanie interfejsu aplikacji przez rozszerzenie go na całą powierzchnię ekranu
  • Zwiększanie skuteczności przez sprawdzanie konfiguracji R8

Korzystając z umiejętności Androida, możesz dostarczać modelom LLM aktualniejsze informacje i kontekst dotyczące specjalistycznych przepływów pracy na Androidzie.

Umiejętności Androida są zgodne z otwartym standardem umiejętności agenta, więc są kompatybilne z każdym narzędziem AI, które obsługuje umiejętności. Z tej strony dowiesz się, jak korzystać z umiejętności w Android Studio oraz jak używać interfejsu wiersza poleceń Androida do instalowania umiejętności, które można wykorzystywać z dowolnym agentem i narzędziami.

Najważniejsze korzyści umiejętności związanych z Androidem

Umiejętności Androida zapewniają szereg kluczowych korzyści, które mają na celu przyspieszenie pracy agenta i umożliwienie mu wydajniejszego tworzenia wysokiej jakości kodu na Androida:

  • Wzbogacanie wiedzą ekspercką: dostarczanie agentom większej ilości kontekstu związanego z Androidem, wzbogacanie ich wiedzy na żądanie oraz rozszerzanie ich domyślnej wiedzy i ekspertyzy poza regularny cykl trenowania modelu.
  • Powtarzalne procesy: udostępniaj standardowe instrukcje, aby zapewnić spójne wykonywanie wieloetapowych zadań w procesie tworzenia aplikacji na Androida.
  • Pakietowanie zasobów: dołącz skrypty, szablony lub dodatkową dokumentację do głównych instrukcji w pliku SKILL.md, aby agent miał wszystko, czego potrzebuje, w jednym miejscu. Dzięki temu nie będzie trzeba ręcznie dołączać plików do promptu.
  • Wspólna wiedza: umieść wzorce programowania na Androida w zespole w folderach współdzielonych, aby zapewnić ujednolicony dostęp i współpracę.

Korzystanie z umiejętności związanych z Androidem

Umiejętności Androida są zintegrowane z interfejsem wiersza poleceń Androida i można ich używać z dowolnym agentem.

gemini_cli_skills_demo.gif

Android CLI

Zalecamy instalowanie umiejętności na Androida za pomocą interfejsu wiersza poleceń Androida, który ułatwia odkrywanie, pobieranie i zarządzanie umiejętnościami dowolnego agenta.

Android Studio

Umiejętność możesz pobrać z repozytorium GitHub z umiejętnościami na Androidazaimportować do projektu w Android Studio.

Aktywowanie umiejętności

Agent automatycznie aktywuje umiejętności, które są istotne w przypadku Twojego zadania. Aby użyć umiejętności, poproś agenta o wykonanie zadania związanego z tą umiejętnością, np. „Make my app UI edge-to-edge” (Spraw, aby interfejs mojej aplikacji zajmował całą powierzchnię ekranu). Jeśli umiejętność jest dostępna, agent powinien ją automatycznie znaleźć i wykorzystać.

Android Studio możesz też ręcznie wywołać funkcję, wpisując @skill-name w oknie czatu.

Tworzenie własnych umiejętności

Możesz tworzyć własne umiejętności, aby pakować i udostępniać przepływy pracy zespołu. Więcej informacji o wymaganiach dotyczących umiejętności znajdziesz w specyfikacji umiejętności agenta.

Agent wyszukuje umiejętności, zaczynając od katalogów .skills/ lub .agent/skills/ znajdujących się w katalogu głównym projektu. Aby utworzyć niestandardową umiejętność, wykonaj te czynności:

  1. Utwórz katalog dla swojej umiejętności (np. my-new-skill/).
  2. W nowym katalogu utwórz plik SKILL.md (wielkość liter ma znaczenie).

Umiejętności muszą być zgodne z tymi regułami:

  • Jeden katalog na umiejętność: każda umiejętność musi mieć własny, niepowtarzalny katalog, który zawiera plik SKILL.md i wszelkie dodatkowe zasoby.
  • Zagnieżdżanie: wszystkie umiejętności muszą znajdować się w katalogu .skills/ lub .agent/skills/ w katalogu głównym projektu. Możesz jednak używać podkatalogów, aby lepiej zorganizować pliki (np. skills/ui-flows/<skill name>/SKILL.md lub skills/testing/<skill name>/SKILL.md).
  • Zakres: obsługiwane są tylko umiejętności znajdujące się w bazie kodu projektu.
Struktura katalogów pokazująca lokalizację plików umiejętności w projekcie
Struktura plików umiejętności.

Plik SKILL.md zawiera blok YAML z metadanymi i standardowy format Markdown z instrukcjami.

  • name: unikalny identyfikator umiejętności. Powinna być zgodna z nazwą katalogu.
  • description: jasne wyjaśnienie, co robi umiejętność i kiedy agent powinien jej używać.
  • Treść: treść w formacie Markdown poniżej bloku YAML zawiera instrukcje, które określają zachowanie agenta, gdy umiejętność jest aktywna.
---
name: skill-name
description: A description of what this skill does and when to use it.
metadata:
  author: example-org
  version: "1.0"
---

Skill content

Wytyczne dotyczące formatowania

  • Nazwa: maksymalnie 64 znaki (tylko małe litery, cyfry i łączniki).
  • Opis: maksymalnie 1024 znaki.
  • Treść: staraj się, aby miała 10–20 tys. znaków (ok. 2500–5000 tokenów). Jeśli instrukcje przekraczają ten limit, rozważ przeniesienie szczegółowej dokumentacji do pliku zasobów, jak opisano w sekcji Opcjonalne katalogi umiejętności.

Opcjonalne katalogi umiejętności

Aby plik SKILL.md był zwięzły i modułowy, możesz umieścić dodatkowe zasoby w tych opcjonalnych katalogach w folderze umiejętności:

  • scripts/: zawiera kod wykonywalny (np. w języku Python lub Bash), który może uruchomić agent.
  • references/: Zawiera szczegółową dokumentację techniczną, odniesienia do interfejsów API lub przewodniki dotyczące konkretnych domen.
  • assets/: zawiera statyczne zasoby, takie jak szablony dokumentów, diagramy interfejsu czy schematy JSON.

Gdy odwołujesz się do tych plików w SKILL.mdinstrukcjach, używaj ścieżek względnych od katalogu głównego umiejętności. Na przykład: Run the script at scripts/cleanup.py.

Jak działają umiejętności

Umiejętności to wiedza specjalistyczna na żądanie. Ta struktura umożliwia agentowi utrzymanie dużej liczby specjalistycznych funkcji bez zaśmiecania okna kontekstu modelu.

Model autonomicznie decyduje, kiedy użyć umiejętności, na podstawie Twojej prośby i opisu umiejętności. Gdy zostanie zidentyfikowana odpowiednia umiejętność, model dynamicznie pobiera pełne instrukcje i zasoby wymagane do wykonania zadania.