{"id":"7fef39cc-b3cb-4a44-83d5-933458004fe5","shortId":"bM9gYP","kind":"skill","title":"android-setup","tagline":"27 Android skills for AI agents (Claude Code, Codex, Cursor). Fixes Supabase auth, Hilt errors, design inconsistency, kapt→ksp, missing UiState states. Reduced my token bills 5×. FitGenZ AI shipped in 18 days.","description":"# Android Project Setup\r\n\r\nCorrect project initialization prevents 80% of downstream agent errors. Read this entire skill before writing any build files.\r\n\r\n## Non-negotiables\r\n\r\n- Kotlin DSL only (`build.gradle.kts`, `settings.gradle.kts`) — never Groovy `.gradle`\r\n- Version Catalog only (`libs.versions.toml`) — never hardcode versions in build files\r\n- KSP only — never `kapt`\r\n- `minSdk = 24`, `targetSdk = 35`, `compileSdk = 35`\r\n- Kotlin `2.0.0+`, AGP `8.5.0+`\r\n- `namespace` declared in every module's `build.gradle.kts`\r\n\r\n## Project Structure\r\n\r\n```\r\nmy-app/\r\n├── app/\r\n│   ├── src/main/\r\n│   │   ├── java/com/company/app/\r\n│   │   │   ├── MainActivity.kt\r\n│   │   │   └── MyApplication.kt\r\n│   │   ├── res/\r\n│   │   └── AndroidManifest.xml\r\n│   └── build.gradle.kts\r\n├── core/\r\n│   ├── data/\r\n│   ├── domain/\r\n│   └── ui/\r\n├── feature/\r\n│   └── <feature-name>/\r\n├── gradle/\r\n│   └── libs.versions.toml       ← ALL versions live here\r\n├── build.gradle.kts              ← root, no dependencies\r\n├── settings.gradle.kts\r\n└── gradle.properties\r\n```\r\n\r\n## settings.gradle.kts\r\n\r\n```kotlin\r\npluginManagement {\r\n    repositories {\r\n        google { content { includeGroupByRegex(\"com\\\\.android.*\"); includeGroupByRegex(\"com\\\\.google.*\"); includeGroupByRegex(\"androidx.*\") } }\r\n        mavenCentral()\r\n        gradlePluginPortal()\r\n    }\r\n}\r\ndependencyResolutionManagement {\r\n    repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)\r\n    repositories {\r\n        google()\r\n        mavenCentral()\r\n    }\r\n}\r\nrootProject.name = \"MyApp\"\r\ninclude(\":app\")\r\n// include(\":core:data\")  // add modules as needed\r\n```\r\n\r\n## Root build.gradle.kts\r\n\r\n```kotlin\r\n// Top-level build file. Do NOT add dependencies here.\r\nplugins {\r\n    alias(libs.plugins.android.application) apply false\r\n    alias(libs.plugins.android.library) apply false\r\n    alias(libs.plugins.kotlin.android) apply false\r\n    alias(libs.plugins.kotlin.compose) apply false\r\n    alias(libs.plugins.ksp) apply false\r\n    alias(libs.plugins.hilt) apply false\r\n}\r\n```\r\n\r\n## App build.gradle.kts\r\n\r\n```kotlin\r\nplugins {\r\n    alias(libs.plugins.android.application)\r\n    alias(libs.plugins.kotlin.android)\r\n    alias(libs.plugins.kotlin.compose)\r\n    alias(libs.plugins.ksp)\r\n    alias(libs.plugins.hilt)\r\n}\r\n\r\nandroid {\r\n    namespace = \"com.company.app\"\r\n    compileSdk = 35\r\n\r\n    defaultConfig {\r\n        applicationId = \"com.company.app\"\r\n        minSdk = 24\r\n        targetSdk = 35\r\n        versionCode = 1\r\n        versionName = \"1.0\"\r\n        testInstrumentationRunner = \"androidx.test.runner.AndroidJUnitRunner\"\r\n    }\r\n\r\n    buildTypes {\r\n        release {\r\n            isMinifyEnabled = true\r\n            isShrinkResources = true\r\n            proguardFiles(getDefaultProguardFile(\"proguard-android-optimize.txt\"), \"proguard-rules.pro\")\r\n        }\r\n        debug {\r\n            applicationIdSuffix = \".debug\"\r\n            isDebuggable = true\r\n        }\r\n    }\r\n\r\n    compileOptions {\r\n        sourceCompatibility = JavaVersion.VERSION_17\r\n        targetCompatibility = JavaVersion.VERSION_17\r\n    }\r\n\r\n    kotlinOptions {\r\n        jvmTarget = \"17\"\r\n    }\r\n\r\n    buildFeatures {\r\n        compose = true\r\n        buildConfig = true\r\n    }\r\n}\r\n\r\ndependencies {\r\n    // Core\r\n    implementation(libs.androidx.core.ktx)\r\n    implementation(libs.androidx.lifecycle.runtime.ktx)\r\n    implementation(libs.androidx.activity.compose)\r\n\r\n    // Compose BOM — single version controls all Compose libs\r\n    implementation(platform(libs.androidx.compose.bom))\r\n    implementation(libs.androidx.ui)\r\n    implementation(libs.androidx.ui.graphics)\r\n    implementation(libs.androidx.ui.tooling.preview)\r\n    implementation(libs.androidx.material3)\r\n\r\n    // Navigation\r\n    implementation(libs.androidx.navigation.compose)\r\n\r\n    // Hilt\r\n    implementation(libs.hilt.android)\r\n    ksp(libs.hilt.compiler)\r\n    implementation(libs.androidx.hilt.navigation.compose)\r\n\r\n    // Testing\r\n    testImplementation(libs.junit)\r\n    androidTestImplementation(libs.androidx.junit)\r\n    androidTestImplementation(libs.androidx.espresso.core)\r\n    androidTestImplementation(platform(libs.androidx.compose.bom))\r\n    androidTestImplementation(libs.androidx.ui.test.junit4)\r\n    debugImplementation(libs.androidx.ui.tooling)\r\n    debugImplementation(libs.androidx.ui.test.manifest)\r\n}\r\n```\r\n\r\n## libs.versions.toml (Version Catalog)\r\n\r\n```toml\r\n[versions]\r\nagp = \"8.5.2\"\r\nkotlin = \"2.0.21\"\r\nksp = \"2.0.21-1.0.25\"\r\ncoreKtx = \"1.13.1\"\r\njunit = \"4.13.2\"\r\njunitVersion = \"1.2.1\"\r\nespressoCore = \"3.6.1\"\r\nlifecycleRuntimeKtx = \"2.8.6\"\r\nactivityCompose = \"1.9.2\"\r\ncomposeBom = \"2024.10.00\"\r\nnavigationCompose = \"2.8.3\"\r\nhilt = \"2.52\"\r\nhiltNavigationCompose = \"1.2.0\"\r\nroom = \"2.6.1\"\r\nretrofit = \"2.11.0\"\r\ncoroutines = \"1.9.0\"\r\ncoil = \"2.7.0\"\r\n\r\n[libraries]\r\nandroidx-core-ktx = { group = \"androidx.core\", name = \"core-ktx\", version.ref = \"coreKtx\" }\r\njunit = { group = \"junit\", name = \"junit\", version.ref = \"junit\" }\r\nandroidx-junit = { group = \"androidx.test.ext\", name = \"junit\", version.ref = \"junitVersion\" }\r\nandroidx-espresso-core = { group = \"androidx.test.espresso\", name = \"espresso-core\", version.ref = \"espressoCore\" }\r\nandroidx-lifecycle-runtime-ktx = { group = \"androidx.lifecycle\", name = \"lifecycle-runtime-ktx\", version.ref = \"lifecycleRuntimeKtx\" }\r\nandroidx-activity-compose = { group = \"androidx.activity\", name = \"activity-compose\", version.ref = \"activityCompose\" }\r\nandroidx-compose-bom = { group = \"androidx.compose\", name = \"compose-bom\", version.ref = \"composeBom\" }\r\nandroidx-ui = { group = \"androidx.compose.ui\", name = \"ui\" }\r\nandroidx-ui-graphics = { group = \"androidx.compose.ui\", name = \"ui-graphics\" }\r\nandroidx-ui-tooling = { group = \"androidx.compose.ui\", name = \"ui-tooling\" }\r\nandroidx-ui-tooling-preview = { group = \"androidx.compose.ui\", name = \"ui-tooling-preview\" }\r\nandroidx-ui-test-manifest = { group = \"androidx.compose.ui\", name = \"ui-test-manifest\" }\r\nandroidx-ui-test-junit4 = { group = \"androidx.compose.ui\", name = \"ui-test-junit4\" }\r\nandroidx-material3 = { group = \"androidx.compose.material3\", name = \"material3\" }\r\nandroidx-navigation-compose = { group = \"androidx.navigation\", name = \"navigation-compose\", version.ref = \"navigationCompose\" }\r\nhilt-android = { group = \"com.google.dagger\", name = \"hilt-android\", version.ref = \"hilt\" }\r\nhilt-compiler = { group = \"com.google.dagger\", name = \"hilt-compiler\", version.ref = \"hilt\" }\r\nandroidx-hilt-navigation-compose = { group = \"androidx.hilt\", name = \"hilt-navigation-compose\", version.ref = \"hiltNavigationCompose\" }\r\nroom-runtime = { group = \"androidx.room\", name = \"room-runtime\", version.ref = \"room\" }\r\nroom-ktx = { group = \"androidx.room\", name = \"room-ktx\", version.ref = \"room\" }\r\nroom-compiler = { group = \"androidx.room\", name = \"room-compiler\", version.ref = \"room\" }\r\nretrofit-core = { group = \"com.squareup.retrofit2\", name = \"retrofit\", version.ref = \"retrofit\" }\r\nretrofit-kotlin-serialization = { group = \"com.squareup.retrofit2\", name = \"converter-kotlinx-serialization\", version.ref = \"retrofit\" }\r\nkotlinx-coroutines-android = { group = \"org.jetbrains.kotlinx\", name = \"kotlinx-coroutines-android\", version.ref = \"coroutines\" }\r\ncoil-compose = { group = \"io.coil-kt\", name = \"coil-compose\", version.ref = \"coil\" }\r\n\r\n[plugins]\r\nandroid-application = { id = \"com.android.application\", version.ref = \"agp\" }\r\nandroid-library = { id = \"com.android.library\", version.ref = \"agp\" }\r\nkotlin-android = { id = \"org.jetbrains.kotlin.android\", version.ref = \"kotlin\" }\r\nkotlin-compose = { id = \"org.jetbrains.kotlin.plugin.compose\", version.ref = \"kotlin\" }\r\nksp = { id = \"com.google.devtools.ksp\", version.ref = \"ksp\" }\r\nhilt = { id = \"com.google.dagger.hilt.android\", version.ref = \"hilt\" }\r\n```\r\n\r\n## gradle.properties\r\n\r\n```properties\r\norg.gradle.jvmargs=-Xmx4096m -Dfile.encoding=UTF-8\r\norg.gradle.configuration-cache=true\r\norg.gradle.parallel=true\r\norg.gradle.caching=true\r\nandroid.useAndroidX=true\r\nkotlin.code.style=official\r\nandroid.nonTransitiveRClass=true\r\n```\r\n\r\n## MyApplication.kt\r\n\r\n```kotlin\r\n@HiltAndroidApp\r\nclass MyApplication : Application()\r\n```\r\n\r\n## AndroidManifest.xml (minimal)\r\n\r\n```xml\r\n<?xml version=\"1.0\" encoding=\"utf-8\"?>\r\n<manifest xmlns:android=\"http://schemas.android.com/apk/res/android\">\r\n    <application\r\n        android:name=\".MyApplication\"\r\n        android:allowBackup=\"true\"\r\n        android:icon=\"@mipmap/ic_launcher\"\r\n        android:label=\"@string/app_name\"\r\n        android:roundIcon=\"@mipmap/ic_launcher_round\"\r\n        android:supportsRtl=\"true\"\r\n        android:theme=\"@style/Theme.MyApp\">\r\n        <activity\r\n            android:name=\".MainActivity\"\r\n            android:exported=\"true\"\r\n            android:windowSoftInputMode=\"adjustResize\">\r\n            <intent-filter>\r\n                <action android:name=\"android.intent.action.MAIN\" />\r\n                <category android:name=\"android.intent.category.LAUNCHER\" />\r\n            </intent-filter>\r\n        </activity>\r\n    </application>\r\n</manifest>\r\n```\r\n\r\n## MainActivity.kt\r\n\r\n```kotlin\r\n@AndroidEntryPoint\r\nclass MainActivity : ComponentActivity() {\r\n    override fun onCreate(savedInstanceState: Bundle?) {\r\n        super.onCreate(savedInstanceState)\r\n        enableEdgeToEdge()\r\n        setContent {\r\n            MyAppTheme {\r\n                MyApp()\r\n            }\r\n        }\r\n    }\r\n}\r\n```\r\n\r\n## Common Mistakes\r\n\r\n❌ Using Groovy `.gradle` files instead of Kotlin `.kts`\r\n❌ Hardcoding versions in build files instead of version catalog\r\n❌ Using `kapt` instead of `ksp`\r\n❌ Missing `enableEdgeToEdge()` in MainActivity\r\n❌ Setting `compileSdk` lower than `targetSdk`\r\n❌ Forgetting `namespace` in module `build.gradle.kts`\r\n❌ Using `implementation` for annotation processors instead of `ksp`\r\n\r\n## Deep-dive references\r\n\r\n- `references/multi-module.md` — when to add core/feature modules and how\r\n- `references/build-variants.md` — flavor configuration for staging/prod environments","tags":["android","setup","agent","skills","piyushverma0","agent-skills","ai-agent","antigravity","claude-code","codex","cursor","gemini-cli"],"capabilities":["skill","source-piyushverma0","skill-android-setup","topic-agent-skills","topic-ai-agent","topic-android","topic-antigravity","topic-claude-code","topic-codex","topic-cursor","topic-gemini-cli","topic-hilt","topic-jetpack-compose","topic-kotlin","topic-material3"],"categories":["android-agent-skills"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/piyushverma0/android-agent-skills/android-setup","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add piyushverma0/android-agent-skills","source_repo":"https://github.com/piyushverma0/android-agent-skills","install_from":"skills.sh"}},"qualityScore":"0.454","qualityRationale":"deterministic score 0.45 from registry signals: · indexed on github topic:agent-skills · 8 github stars · SKILL.md body (9,935 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T19:09:08.745Z","embedding":null,"createdAt":"2026-05-18T13:14:48.195Z","updatedAt":"2026-05-18T19:09:08.745Z","lastSeenAt":"2026-05-18T19:09:08.745Z","tsv":"'-8':686 '1':231 '1.0':233 '1.0.25':332 '1.13.1':334 '1.2.0':352 '1.2.1':338 '1.9.0':358 '1.9.2':344 '17':254,257,260 '18':35 '2.0.0':90 '2.0.21':329,331 '2.11.0':356 '2.52':350 '2.6.1':354 '2.7.0':360 '2.8.3':348 '2.8.6':342 '2024.10.00':346 '24':84,227 '27':4 '3.6.1':340 '35':86,88,222,229 '4.13.2':336 '5':30 '8.5.0':92 '8.5.2':327 '80':44 'activ':418,424 'activity-compos':423 'activitycompos':343,427 'add':162,176,779 'agent':9,47 'agp':91,326,648,655 'ai':8,32 'alia':180,184,188,192,196,200,208,210,212,214,216 'android':2,5,37,138,218,525,531,619,626,643,650,658 'android-appl':642 'android-librari':649 'android-setup':1 'android.nontransitiverclass':698 'android.useandroidx':694 'androidentrypoint':711 'androidmanifest.xml':111,706 'androidtestimplement':307,309,311,314 'androidx':143,363,382,391,403,417,429,441,448,458,468,480,492,504,512,546 'androidx-activity-compos':416 'androidx-compose-bom':428 'androidx-core-ktx':362 'androidx-espresso-cor':390 'androidx-hilt-navigation-compos':545 'androidx-junit':381 'androidx-lifecycle-runtime-ktx':402 'androidx-material3':503 'androidx-navigation-compos':511 'androidx-ui':440 'androidx-ui-graph':447 'androidx-ui-test-junit4':491 'androidx-ui-test-manifest':479 'androidx-ui-tool':457 'androidx-ui-tooling-preview':467 'androidx.activity':421 'androidx.compose':433,507 'androidx.compose.ui':444,452,462,473,485,497 'androidx.core':367 'androidx.hilt':551 'androidx.lifecycle':408 'androidx.navigation':516 'androidx.room':563,574,585 'androidx.test.espresso':395 'androidx.test.ext':385 'androidx.test.runner.androidjunitrunner':235 'annot':767 'app':104,105,158,204 'appli':182,186,190,194,198,202 'applic':644,705 'applicationid':224 'applicationidsuffix':247 'auth':16 'bill':29 'bom':275,431,437 'build':56,77,172,739 'build.gradle.kts':64,99,112,124,167,205,763 'buildconfig':264 'buildfeatur':261 'buildtyp':236 'bundl':719 'cach':688 'catalog':70,323,744 'class':703,712 'claud':10 'code':11 'codex':12 'coil':359,630,637,640 'coil-compos':629,636 'com':137,140 'com.android.application':646 'com.android.library':653 'com.company.app':220,225 'com.google.dagger':527,538 'com.google.dagger.hilt.android':677 'com.google.devtools.ksp':672 'com.squareup':596,607 'common':726 'compil':536,542,583,589 'compileopt':251 'compilesdk':87,221,755 'componentact':714 'compos':262,274,280,419,425,430,436,514,520,549,556,631,638,665 'compose-bom':435 'composebom':345,439 'configur':786 'content':135 'control':278 'convert':611 'converter-kotlinx-seri':610 'core':113,160,267,364,370,393,399,594 'core-ktx':369 'core/feature':780 'corektx':333,373 'coroutin':357,618,625,628 'correct':40 'cursor':13 'data':114,161 'day':36 'debug':246,248 'debugimplement':317,319 'declar':94 'deep':773 'deep-div':772 'defaultconfig':223 'depend':127,177,266 'dependencyresolutionmanag':146 'design':19 'dfile.encoding':684 'dive':774 'domain':115 'downstream':46 'dsl':62 'enableedgetoedg':722,751 'entir':51 'environ':789 'error':18,48 'espresso':392,398 'espresso-cor':397 'espressocor':339,401 'everi':96 'fals':183,187,191,195,199,203 'featur':117 'file':57,78,173,731,740 'fitgenz':31 'fix':14 'flavor':785 'forget':759 'fun':716 'getdefaultproguardfil':243 'googl':134,141,153 'gradl':68,118,730 'gradle.properties':129,680 'gradlepluginport':145 'graphic':450,456 'groovi':67,729 'group':366,375,384,394,407,420,432,443,451,461,472,484,496,506,515,526,537,550,562,573,584,595,606,620,632 'hardcod':74,736 'hilt':17,297,349,524,530,533,535,541,544,547,554,675,679 'hilt-android':523,529 'hilt-compil':534,540 'hilt-navigation-compos':553 'hiltandroidapp':702 'hiltnavigationcompos':351,558 'id':645,652,659,666,671,676 'implement':268,270,272,282,285,287,289,291,295,298,302,765 'includ':157,159 'includegroupbyregex':136,139,142 'inconsist':20 'initi':42 'instead':732,741,747,769 'io.coil':633 'isdebugg':249 'isminifyen':238 'isshrinkresourc':240 'java/com/company/app':107 'javaversion.version':253,256 'junit':335,374,376,378,380,383,387 'junit4':316,495,502 'junitvers':337,389 'jvmtarget':259 'kapt':21,82,746 'kotlin':61,89,131,168,206,328,604,657,662,664,669,701,710,734 'kotlin-android':656 'kotlin-compos':663 'kotlin.code.style':696 'kotlinopt':258 'kotlinx':612,617,624 'kotlinx-coroutines-android':616,623 'ksp':22,79,300,330,670,674,749,771 'kt':634 'kts':735 'ktx':365,371,406,413,572,578 'level':171 'lib':281 'librari':361,651 'libs.androidx':292 'libs.androidx.activity.compose':273 'libs.androidx.compose.bom':284,313 'libs.androidx.core.ktx':269 'libs.androidx.espresso.core':310 'libs.androidx.hilt.navigation.compose':303 'libs.androidx.junit':308 'libs.androidx.lifecycle.runtime.ktx':271 'libs.androidx.navigation.compose':296 'libs.androidx.ui':286 'libs.androidx.ui.graphics':288 'libs.androidx.ui.test':315 'libs.androidx.ui.test.manifest':320 'libs.androidx.ui.tooling':318 'libs.androidx.ui.tooling.preview':290 'libs.hilt.android':299 'libs.hilt.compiler':301 'libs.junit':306 'libs.plugins.android.application':181,209 'libs.plugins.android.library':185 'libs.plugins.hilt':201,217 'libs.plugins.kotlin.android':189,211 'libs.plugins.kotlin.compose':193,213 'libs.plugins.ksp':197,215 'libs.versions.toml':72,119,321 'lifecycl':404,411 'lifecycle-runtime-ktx':410 'lifecycleruntimektx':341,415 'live':122 'lower':756 'mainact':713,753 'mainactivity.kt':108,709 'manifest':483,490 'material3':293,505,508,510 'mavencentr':144,154 'minim':707 'minsdk':83,226 'miss':23,750 'mistak':727 'modul':97,163,762,781 'my-app':102 'myapp':156,725 'myapplic':704 'myapplication.kt':109,700 'myappthem':724 'name':368,377,386,396,409,422,434,445,453,463,474,486,498,509,517,528,539,552,564,575,586,598,609,622,635 'namespac':93,219,760 'navig':294,513,519,548,555 'navigation-compos':518 'navigationcompos':347,522 'need':165 'negoti':60 'never':66,73,81 'non':59 'non-negoti':58 'offici':697 'oncreat':717 'org.gradle.caching':692 'org.gradle.configuration':687 'org.gradle.jvmargs':682 'org.gradle.parallel':690 'org.jetbrains.kotlin.android':660 'org.jetbrains.kotlin.plugin.compose':667 'org.jetbrains.kotlinx':621 'overrid':715 'platform':283,312 'plugin':179,207,641 'pluginmanag':132 'prevent':43 'preview':471,478 'processor':768 'proguard-android-optimize.txt':244 'proguard-rules.pro':245 'proguardfil':242 'project':38,41,100,150 'properti':681 'read':49 'reduc':26 'refer':775 'references/build-variants.md':784 'references/multi-module.md':776 'releas':237 'repo':151 'repositori':133,152 'repositoriesmode.fail':148 'repositoriesmode.set':147 'res':110 'retrofit':355,593,599,601,603,615 'retrofit-cor':592 'retrofit-kotlin-seri':602 'retrofit2':597,608 'room':353,560,566,569,571,577,580,582,588,591 'room-compil':581,587 'room-ktx':570,576 'room-runtim':559,565 'root':125,166 'rootproject.name':155 'runtim':405,412,561,567 'savedinstancest':718,721 'serial':605,613 'set':754 'setcont':723 'settings.gradle.kts':65,128,130 'setup':3,39 'ship':33 'singl':276 'skill':6,52 'skill-android-setup' 'source-piyushverma0' 'sourcecompat':252 'src/main':106 'staging/prod':788 'state':25 'structur':101 'supabas':15 'super.oncreate':720 'targetcompat':255 'targetsdk':85,228,758 'test':304,482,489,494,501 'testimplement':305 'testinstrumentationrunn':234 'token':28 'toml':324 'tool':460,466,470,477 'top':170 'top-level':169 'topic-agent-skills' 'topic-ai-agent' 'topic-android' 'topic-antigravity' 'topic-claude-code' 'topic-codex' 'topic-cursor' 'topic-gemini-cli' 'topic-hilt' 'topic-jetpack-compose' 'topic-kotlin' 'topic-material3' 'true':239,241,250,263,265,689,691,693,695,699 'ui':116,442,446,449,455,459,465,469,476,481,488,493,500 'ui-graph':454 'ui-test-junit4':499 'ui-test-manifest':487 'ui-tool':464 'ui-tooling-preview':475 'uistat':24 'use':728,745,764 'utf':685 'version':69,75,121,277,322,325,737,743 'version.ref':372,379,388,400,414,426,438,521,532,543,557,568,579,590,600,614,627,639,647,654,661,668,673,678 'versioncod':230 'versionnam':232 'write':54 'xml':708 'xmx4096m':683","prices":[{"id":"cf1d355d-3115-4bef-a370-ea720023116b","listingId":"7fef39cc-b3cb-4a44-83d5-933458004fe5","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"piyushverma0","category":"android-agent-skills","install_from":"skills.sh"},"createdAt":"2026-05-18T13:14:48.195Z"}],"sources":[{"listingId":"7fef39cc-b3cb-4a44-83d5-933458004fe5","source":"github","sourceId":"piyushverma0/android-agent-skills/android-setup","sourceUrl":"https://github.com/piyushverma0/android-agent-skills/tree/main/skills/android-setup","isPrimary":false,"firstSeenAt":"2026-05-18T13:14:48.195Z","lastSeenAt":"2026-05-18T19:09:08.745Z"}],"details":{"listingId":"7fef39cc-b3cb-4a44-83d5-933458004fe5","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"piyushverma0","slug":"android-setup","github":{"repo":"piyushverma0/android-agent-skills","stars":8,"topics":["agent-skills","ai-agent","android","antigravity","claude-code","codex","cursor","gemini-cli","hilt","jetpack-compose","kotlin","material3","open-source","skills","supabase"],"license":"mit","html_url":"https://github.com/piyushverma0/android-agent-skills","pushed_at":"2026-04-27T09:15:31Z","description":"27 Android skills for AI agents (Claude Code, Codex, Cursor). Fixes Supabase auth, Hilt errors, design inconsistency, kapt→ksp, missing UiState states. Reduced my token bills 5×. FitGenZ AI shipped in 18 days.","skill_md_sha":"7c59652ec62c2b3cfcaad10ab7b668036ad58350","skill_md_path":"skills/android-setup/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/piyushverma0/android-agent-skills/tree/main/skills/android-setup"},"layout":"multi","source":"github","category":"android-agent-skills","frontmatter":{},"skills_sh_url":"https://skills.sh/piyushverma0/android-agent-skills/android-setup"},"updatedAt":"2026-05-18T19:09:08.745Z"}}