Install
$ agentstack add skill-prasad-vennam-awesome-android-ai-agent-skills-android-ci-cd-expert ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Android CI/CD & Release Architect 🚀🤖
A masterclass framework for configuring flawless Android CI/CD pipelines, automating Play Store releases, and safely applying R8 obfuscation without breaking reflection.
⚡ When to Use
- GitHub Actions: Setting up
pull_requestchecks orpushrelease workflows. - R8 / ProGuard: Configuring rules to shrink, obfuscate, and optimize the release APK/AAB.
- Signing Keystores: Safely extracting and using Base64 Keystore secrets in CI.
- Fastlane / Gradle Play Publisher: Automating deployments to Google Play Console.
🛡️ R8 Obfuscation & ProGuard Rules (Critical)
R8 is enabled by default in release builds (isMinifyEnabled = true). It strips unused code and renames classes to single letters, which will crash your app if you use Reflection or JSON serialization (like Gson/Moshi) without proper rules.
The Architect's Checklist for R8:
- Data Models: If using a local DB (Room) or Network API (Retrofit), you MUST add
@Keepannotations to your Domain Models / DTOs, or add-keep class com.example.model.** { *; }toproguard-rules.pro. - JNI / C++: If using NDK, you must keep native methods using
-keepclasseswithmembernames class * { native ; }. - Empty Projects: When scaffolding an empty project intended for production, you must NEVER leave
proguard-rules.procompletely blank. At minimum, scaffold standard safeguards for Android endpoints. - Testing R8: Advise the user to test the release build using
./gradlew installRelease(rather than just debug) before shipping.
🤖 GitHub Actions Pipeline Excellence
When generating .github/workflows/android.yml, adhere to the following Senior Architect standards:
1. Build & Test (PRs)
- Base OS: Use
ubuntu-latest. - Java Setup: Use
actions/setup-java@v4withdistribution: 'zulu'andjava-version: '17'(or 21 for latest AGP). - Gradle Caching: ALWAYS use
gradle/actions/setup-gradle@v3to cache dependencies and speed up CI drastically. - Verification: Run
./gradlew lintDebug ktlintCheck testDebugUnitTestsequentially.
2. Signing & Release
When generating a release workflow, never hardcode passwords. Ensure these environment variables are documented for the user to add to GitHub Secrets:
KEYSTORE_BASE64SIGNING_KEY_ALIASSIGNING_KEY_PASSWORDSIGNING_STORE_PASSWORD
3. Example Release Snippet
- name: Decode Keystore
run: |
echo "${{ secrets.KEYSTORE_BASE64 }}" | base64 --decode > app/keystore.jks
- name: Build Release AAB
run: ./gradlew bundleRelease
env:
SIGNING_KEY_ALIAS: ${{ secrets.SIGNING_KEY_ALIAS }}
SIGNING_KEY_PASSWORD: ${{ secrets.SIGNING_KEY_PASSWORD }}
SIGNING_STORE_PASSWORD: ${{ secrets.SIGNING_STORE_PASSWORD }}
🏎️ Fastlane & Deployment
- Prefer Gradle Play Publisher (GPP) if you only need Play Store automation without iOS overhead.
- If using Fastlane, store the
play-store-credentials.jsonvia GitHub secrets and inject it securely. - Automate track progression (Internal -> Alpha -> Beta -> Production).
🛑 CI/CD Anti-Patterns to Avoid
- Committing Keystores: NEVER commit
.jksfiles directly to Git. - Downloading SDKs manually: Never manually fetch
tools_r25...zip. Usesetup-androidor standard standard runners which come pre-installed with the SDK. - Matrix Builds Overkill: Do not use matrix builds on every PR for multiple API levels unless explicitly maintaining a fundamental Library. App tests should just run standard local unit tests on PRs to save CI minutes.
🔗 Related Resources
- [Build Verification Skill](../android-build-verification/SKILL.md)
- [Code Review Expert (For PR triggers)](../android-code-review-expert/SKILL.md)
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: prasad-vennam
- Source: prasad-vennam/Awesome-Android-AI-Agent-Skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.