Abbiamo rilasciato le skill Android ufficiali ad aprile e la risposta ha superato tutte le nostre aspettative. In questo post del blog, risponderò ad alcuni dei feedback che abbiamo ricevuto, spiegando la filosofia e la metodologia alla base del progetto. Spero che questo ti aiuti anche a capire cosa succede dietro le quinte quando installi e utilizzi le skill, in modo da poter utilizzare al meglio i token e il tuo tempo.
Perché ci sono così poche skill ufficiali?
Al momento, prendiamo in considerazione le nuove skill solo quando esiste una lacuna di conoscenza verificabile nei modelli allo stato dell'arte (SOTA). In parole povere, non devi insegnare al modello ciò che già sa. (Anche se ci sono alcune eccezioni, continua a leggere per saperne di più.)
Finora abbiamo rilasciato circa 20 skill ufficiali, che mirano intenzionalmente ad aree altamente specifiche e in rapida evoluzione su cui i modelli standard non sono ancora completamente basati, come AGP 9, Navigation 3, API Camera avanzate e Perfetto SQL.
E le skill di base, più generali? Ogni skill installata inserisce 100-200 token nel contesto di base di ogni attività che avvii. Se la skill si attiva effettivamente, questo conteggio può raggiungere rapidamente le migliaia. Nella maggior parte dei casi, accumulare skill di base è sia controproducente che costoso. Prima di installare una skill per scrivere codice Kotlin o Compose di base, valuta se il LLM di tua scelta ne ha davvero bisogno o se conosce già abbastanza bene questi argomenti.
Valutazione delle skill
Prima del rilascio, ogni skill viene testata rispetto a un insieme completo di valutazioni che dimostrano che la skill offre un valore chiaro. Queste valutazioni devono essere superate quando la skill è attiva e non superate in caso contrario. Le valutazioni sono per le skill ciò che i test di integrazione sono per il codice.
timeout_s: 1200
repository:
url: [redacted - internal git repo]
working_dir: wear_compose_m3_empty_app
category_ids:
- wear
prompt: |-
Add a horizontal pager to MainActivity.kt. Have three pages in the pager. Each page should contain
the text "Page 1", "Page 2", and "Page 3" respectively in the center of the screen.
commands:
build:
- ./gradlew assembleDebug
acceptance_criteria:
project_builds: true
llm_diff_judge:
- Must use `HorizontalPagerScaffold`.
- Each page should use `AnimatedPage` to wrap a `ScreenScaffold`.Esempio di valutazione che controlla la corretta implementazione di un pager orizzontale in un'app Wear
Come minimo, testiamo la skill in Android Studio utilizzando l'ultimo modello Gemini Flash. A seconda della skill, garantiamo anche la compatibilità con altri modelli come Gemini Pro e altri agenti come Antigravity e sistemi di terze parti.
Tutte le valutazioni vengono eseguite con accesso alla Knowledge Base, quindi se le informazioni sono nella documentazione e i modelli decidono di cercarle, non pubblichiamo una skill per queste informazioni.
Utilizzo della Knowledge Base di Android (Android Studio o Android CLI)
Se sviluppi app Android, devi sempre utilizzare la Knowledge Base di Android per accedere alla documentazione ufficiale. Se utilizzi l'agente in Android Studio, è già disponibile come strumento, ma se utilizzi un altro agente, installa CLI Android. Tra le altre cose, contiene il comando docs, che consente all'agente di accedere alla documentazione ufficiale di Android. Avere un unico strumento è molto più efficiente rispetto all'installazione di centinaia di skill.
Se il modello si comporta in modo troppo sicuro di sé e vuoi che consulti la documentazione più spesso, un modo molto comune per motivarlo è aggiungere "Always consult the official Android documentation when dealing with Android APIs" (Consulta sempre la documentazione ufficiale di Android quando utilizzi le API Android) al file AGENTS.md o a un file equivalente. Naturalmente, puoi anche forzare questa operazione chiedendo all'agente di controllare la documentazione direttamente nei prompt.
Perché le richieste di pull sono disattivate?
Poiché il nostro framework di valutazione dipende da un'infrastruttura interna che non può essere open source, non siamo in grado di accettare richieste di pull dirette per le nuove skill. Senza questa infrastruttura, non avremmo modo di rivalutare le modifiche delle richieste di pull in entrata. Tuttavia, monitoriamo attivamente i feedback della community. Se vuoi segnalare un bug, suggerire un'ottimizzazione o richiedere una nuova skill ufficiale, apri un problema.
Quando hanno senso le skill di base o principali?
Sebbene i modelli SOTA in genere non abbiano bisogno di skill di base, in alcuni scenari l'abilitazione delle skill principali o create dalla community aggiunge un valore reale. Ad esempio:
- Utilizzi prompt vaghi: le skill amplificano la tua intenzione. Se fornisci un prompt generico come "aggiungi animazioni a questa schermata", una skill di animazione Compose specifica può ispirare il modello, spingendolo verso API moderne o pattern di test degli screenshot che altrimenti non avrebbe preso in considerazione.
- Vuoi utilizzare modelli più piccoli ed economici: i LLM di frontiera sono costosi. Se deleghi le attività di routine a modelli open-weight più piccoli come Gemma 4, l'abilitazione delle skill di base colma le lacune di conoscenza che i parametri più piccoli non riescono a colmare.
- Stai eseguendo il refactoring o la revisione del codice legacy: i modelli sono eccellenti nella generazione di codice funzionante, ma quando modificano codebase precedenti, spesso danno la priorità alla coerenza con i pattern legacy circostanti rispetto alla riscrittura con l'accuratezza moderna. Un agente di revisione specializzato dotato di skill di base può aiutarti a interrompere questa abitudine.
- Ti discosti dalla norma: i LLM amano il "modo Google" standard di progettare le app Android. Se il tuo team utilizza un'architettura del livello di visualizzazione altamente personalizzata, il modello avrà difficoltà a rimanere allineato. Una skill personalizzata che descrive esplicitamente la tua architettura è molto utile.
Dove posso trovare le skill di base?
La community Android è al tuo fianco. Chris Banes ha una raccolta completa di skill per Compose e Kotlin, Ivan Morgillo ha pubblicato una skill che esegue l'audit dei progetti Compose e Jaewoong Eum ne ha create due su test e prestazioni.
Scarica sempre le skill da fonti attendibili. Personalmente, non mi fiderei dei repository che contengono decine o centinaia di skill Android, perché probabilmente sono generate dall'AI e non testate e potrebbero persino contenere istruzioni dannose o distorte. Inoltre, non installare alla cieca le skill di ingegneria del software generale; molte di queste sono personalizzate per lo sviluppo web.
Obiettivo: deprecazione
Parafrasando Karpathy: le skill di oggi saranno nei modelli di domani. Man mano che i modelli SOTA continuano a migliorare, prevediamo che le skill diventeranno obsolete, soprattutto quelle create intorno alle nuove API. Per capire quando ritirarle, eseguiamo le nostre valutazioni quando vengono rilasciati nuovi modelli. Se le valutazioni vengono superate, le manterremo per alcuni mesi finché la maggior parte degli utenti non avrà eseguito la transizione.
-
CommunityGoogle Play sta lanciando il primo Indie Games Fund in Africa, investendo 1 milione di dollari per dare autonomia a 10 studi di sviluppo di giochi indie in tutta l'Africa subsahariana.
Steph Pio • Lettura di 1 minuto -
CommunityL'attesa è finita. Siamo incredibilmente entusiasti di condividere la classe 2026 dell'acceleratore di app di Google Play.
Robbie McLachlan • Lettura di 1 minuto -
CommunityNel nostro ultimo filmato #WeArePlay, incontriamo Adriano, Wagner e Grazyelle. Il trio è dietro Matraquinha, un'app che aiuta migliaia di bambini non verbali in più di 80 paesi a comunicare.
Robbie McLachlan • Lettura di 2 minuti
Ricevi settimanalmente nella tua casella di posta gli ultimi approfondimenti sullo sviluppo di Android.