Agent skill

Levyra R8 Proguard

by LUC4N3X in LUC4N3X/Levyra-deepsound

Automatically use for Levyra R8, Proguard, minification, resource shrinking, keep rules, consumer rules, release-only crashes, reflection/serialization/JNI shrinking issues, APK size, mapping files…

GPL-3.0Auto-check passedMobile

Install Levyra R8 Proguard

skills CLI
$ npx skills add LUC4N3X/Levyra-deepsound --skill levyra-r8-proguard -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install LUC4N3X/Levyra-deepsound levyra-r8-proguard --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/LUC4N3X/Levyra-deepsound.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/levyra-r8-proguard .claude/skills/levyra-r8-proguard && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
levyra-r8-proguard
GitHub stars
591
Token cost
~2.2k tokens
SKILL.md length
1,124 words
Files
1
Skills in repo
22
Repo updated
First seen
Licence
GPL-3.0

At a glance

Automatically use for Levyra R8, Proguard, minification, resource shrinking, keep rules, consumer rules, release-only crashes, reflection/serialization/JNI shrinking issues, APK size, mapping files…

  • Works in 7 steps: Establish the actual toolchain → Prefer quantitative R8 analysis when… → Heuristic review when quantitative… → …
  • Resource shrinking
  • SKILL.md covers Why this is a first-class skill, Required context, Current Levyra assumptions to… and Analysis workflow, plus 5 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Levyra R8 Proguard is an agent skill from LUC4N3X/Levyra-deepsound. Automatically use for Levyra R8, Proguard, minification, resource shrinking, keep rules, consumer rules, release-only crashes, reflection/serialization/JNI shrinking issues, APK size, mapping files, missing classes, or shrinker configuration review.

Its SKILL.md is about 2.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Mobile. It works with Gradle and Kotlin. The repository describes itself as: Open-source music player for Android and Windows with no accounts or tracking. Built for quick discovery, synced lyrics, radio, and rich artwork ♫. The licence is GPL-3.0.

When your agent uses it

  • Resource shrinking
  • Release-only crashes
  • Reflection/serialization/JNI shrinking issues
  • Missing classes

Example prompts

  • “/levyra-r8-proguard”

Workflow steps

7 steps, taken from the step headings in SKILL.md.

  1. Establish the actual toolchain
  2. Prefer quantitative R8 analysis when available
  3. Heuristic review when quantitative analysis is unavailable
  4. Consumer-rule awareness
  5. Reflection, serialization, and generated code
  6. JNI and native libraries
  7. dontwarn discipline

What it can do on your machine

Read from SKILL.md and the folder at commit c7de935. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are bash).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Levyra R8 Proguard loads about 2.2k tokens when it runs. Until then it costs about 67 tokens; SKILL.md has 1,124 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~67
When it runs · the whole SKILL.md, loaded when a task matches
~2.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from LUC4N3X/Levyra-deepsound at commit c7de935, republished under its GPL-3.0 licence (© LUC4N3X). 1,124 words, ~2,231 tokens.

Download SKILL.mdSave it as .claude/skills/levyra-r8-proguard/SKILL.md (or your agent's skills folder).
name
levyra-r8-proguard
description
Automatically use for Levyra R8, Proguard, minification, resource shrinking, keep rules, consumer rules, release-only crashes, reflection/serialization/JNI shrinking issues, APK size, mapping files, missing classes, or shrinker configuration review.

Levyra R8 / Proguard workflow

Why this is a first-class skill

Levyra release builds are minified and resource-shrunk. Shrinker changes can therefore improve size and optimization, but can also create failures that appear only in release builds. Treat R8/Proguard work as correctness-sensitive release engineering, not cosmetic cleanup.

This skill adapts the useful workflow from Google's official Android r8-analyzer skill to Levyra's current AGP 9.x setup and existing architecture. Do not vendor external analyzer scripts, blanket keep rules, or generic templates without proving they apply.

Required context

Before changing or judging shrinker configuration:

  1. Read root AGENTS.md, app/AGENTS.md, and docs/ARCHITECTURE.md.
  2. Read app/build.gradle.kts, gradle/libs.versions.toml, gradle.properties, app/proguard-rules.pro, and any affected library consumer-rules.pro files.
  3. Load levyra-ci-workflows for AGP/Gradle/tooling changes and levyra-release-check for release validation.
  4. Load the affected domain skill as well: player, extractor, database, Compose, security, etc.
  5. Inspect the exact code path that relies on reflection, generated serializers, JNI/native lookup, JavaScript bridges, service discovery, annotations, or class names before narrowing a rule.

Current Levyra assumptions to verify, not blindly duplicate

Levyra currently uses release minification and resource shrinking. Existing rules include targeted handling for Rhino/NewPipe runtime classes, WebView @JavascriptInterface methods, warnings, runtime annotations, and kotlinx.serialization-generated serializers.

Treat each of these as a compatibility contract until evidence shows it can be narrowed or removed. A broad rule is a review target, not automatically dead code.

Analysis workflow

1. Establish the actual toolchain

Read the repository versions instead of assuming them. Record AGP, Gradle, Kotlin, KSP, R8 behavior, minify/resource-shrink settings, and the exact release variant under investigation.

Do not upgrade AGP, Gradle, Kotlin, KSP, Compose, or dependencies as collateral cleanup.

2. Prefer quantitative R8 analysis when available

If the installed AGP exposes the official R8 configuration analyzer, prefer it over guessing from rule count or file size.

For AGP versions that support it, use the repository wrapper task for the app release variant, for example:

bash
./gradlew :app:analyzeReleaseR8Config

Inspect the generated analyzer report and available Gradle/R8 outputs. If the environment cannot decode a generated protobuf/report format with already-approved local tooling, do not copy random conversion scripts into Levyra. Fall back to a transparent heuristic review and label it as heuristic.

Never claim a rule is high-impact solely because it is long or package-wide; use analyzer evidence when available.

3. Heuristic review when quantitative analysis is unavailable

Review rules in this order:

  1. package-wide -keep rules;
  2. rules already supplied by dependency consumer rules;
  3. -keep class ... { *; } rules that may preserve unnecessary members;
  4. reflection/service-loader/class-name lookups;
  5. JNI/native entry points and names used across the Java/native boundary;
  6. serializers, generated code, annotations, and companion/object lookup;
  7. WebView JavaScript bridges;
  8. -dontwarn rules that may be hiding a real missing-class problem;
  9. retained attributes required by reflection or generated frameworks.

For every proposed removal or narrowing, identify the runtime mechanism that makes the rule necessary or unnecessary.

4. Consumer-rule awareness

Before adding a keep rule for a library, inspect whether the dependency already packages consumer rules. Avoid duplicating rules that the library already owns.

Before removing a Levyra rule because a library "should" provide it, verify the actual resolved artifact used by Levyra and its consumer rules. Do not rely on documentation for a different version.

5. Reflection, serialization, and generated code

Never shrink based on static references alone when runtime lookup is involved.

Check specifically for:

  • Class.forName, reflection APIs, names stored in strings, service loaders, plugin registries;
  • kotlinx.serialization generated serializers and companion/object lookup;
  • Room/KSP generated code and schema/runtime access;
  • NewPipe/Rhino runtime-generated or dynamically resolved classes;
  • WebView methods annotated with @JavascriptInterface;
  • Media3 or Android components referenced from manifest/resources rather than direct calls.

Prefer the narrowest correct member/class rule over a whole-package keep, but only after release validation proves it safe.

6. JNI and native libraries

For any JNI/native path, inspect both Kotlin/Java declarations and native symbol/name lookup. Renaming or removing a class/member used by JNI can fail only in release.

Do not add -keep class ** { *; } as a blanket JNI workaround. Keep only the actual entry points or name-sensitive types required by the native boundary.

Show full SKILL.md (458 more words)Show less
7. -dontwarn discipline

A -dontwarn rule suppresses diagnostics; it does not fix missing runtime behavior.

Before adding or keeping one, determine whether the missing type is:

  • truly optional and unreachable in Levyra;
  • platform/JDK-only and safe for the target environment;
  • provided at runtime by another artifact;
  • or a real packaging/dependency problem.

Do not silence new warnings just to make the release build green.

Size and optimization claims

Measure produced artifacts. Distinguish:

  • dex/code size;
  • resources;
  • native libraries;
  • assets/metadata;
  • packaging/compression differences.

Do not claim an APK/AAB size improvement from a Proguard diff alone. Compare equivalent release artifacts built from equivalent inputs.

When resource shrinking is involved, verify resources reached indirectly through names, reflection, WebView, XML, manifests, or native code before deleting keep/discard rules.

Release-only failure workflow

When debug works and release fails after shrinking:

  1. reproduce with the exact release/minified variant;
  2. capture the exception/crash and affected path;
  3. inspect mapping.txt, missing-rules output, usage/seeds/configuration reports when generated;
  4. identify whether the failure is removal, renaming, missing attributes, resource shrinking, or an unrelated release configuration difference;
  5. apply the narrowest rule or code fix that addresses the root cause;
  6. rebuild and rerun the same release reproduction;
  7. add a regression test or release-path verification when practical.

Do not "fix" a release crash by disabling minification or resource shrinking unless the owner explicitly requests that tradeoff.

Mapping and diagnostics

Treat mapping files and shrinker outputs as release evidence. Preserve them for the build being investigated and do not confuse outputs from different commits/variants.

Useful evidence may include:

  • mapping.txt;
  • usage.txt / removed-code reports when available;
  • seeds/kept-item reports;
  • missing rules / missing classes diagnostics;
  • R8 configuration analyzer output;
  • final merged configuration when the toolchain exposes it.

Do not commit generated reports unless the repository already tracks that exact artifact or the owner explicitly requests it.

Validation gate

After any R8/Proguard change:

  1. run the narrowest relevant release/minified build;
  2. verify the affected runtime path on a release-like build when environment permits;
  3. run focused tests for reflection/serialization/JNI/WebView/component behavior as applicable;
  4. compare artifact size only if size is part of the task;
  5. check for new R8 warnings, missing classes, or unexpectedly broad keeps;
  6. report every blocked device/runtime check as unverified, not passed.

For high-risk changes affecting playback, extraction, Room, WebView bridges, Android Auto, notifications, update logic, or native code, a successful Gradle build alone is not sufficient evidence.

Reporting standard

For each finding or change report:

  • rule/file and reason it exists;
  • evidence that it is redundant, too broad, missing, or required;
  • affected runtime mechanism;
  • proposed/applied minimal change;
  • release-only regression risk;
  • analyzer/build/runtime evidence;
  • before/after artifact size when measured;
  • tests performed and checks still unverified.

Separate measured findings from heuristic suspicions. Never present an analyzer hint as a proven runtime bug without confirming the affected path.

© LUC4N3X, GPL-3.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/levyra-r8-proguard of LUC4N3X/Levyra-deepsound.

Open the folder on GitHubat commit c7de935

Compare with similar skills

Levyra R8 Proguard next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Levyra R8 Proguard compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Levyra R8 Proguard this skillLUC4N3X/Levyra-deepsound591—~2.2kAutomated safety check: PassGPL-3.0
Android Developmentdpconde/claude-android-skill336—~1.7kAutomated safety check: PassMIT
Diagnosing Compose StabilityrosuH/EasyWatermark1.9k1 repos~3.3kAutomated safety check: PassApache-2.0
Claude Android NinjaDrjacky/claude-android-ninja124—~5.2kAutomated safety check: PassApache-2.0
Expo Brownfield Integrationmweinbach/agent-coworker1562 repos~900Automated safety check: NotesCustom licence
Wear Compose M3jameshnsears/QuoteUnquote1001 repos~3.2kAutomated safety check: PassApache-2.0

Similar skills

  • Android Development

    dpconde/claude-android-skill

    Create production-quality Android applications following Google's official architecture guidance and NowInAndroid best practices.

    336 GitHub stars~1.7k tokensUpdated 10 mo ago
    MobileAuto-check passed
  • Diagnosing Compose Stability

    rosuH/EasyWatermark

    A skill your agent uses to diagnose Jetpack Compose stability problems by enabling and reading the Compose Compiler Reports (classes.txt, composables.txt, composables.csv, module.json).

    1.9k GitHub starsUsed in 1 repo~3.3k tokens
    MobileAuto-check passed
  • Claude Android Ninja

    Drjacky/claude-android-ninja

    Build and migrate Android apps with Kotlin, Jetpack Compose, MVVM, Hilt, Room 3 (KSP, SQLiteDriver, Flow/suspend DAOs), Navigation3, and multi-module Gradle.

    124 GitHub stars~5.2k tokensUpdated 11 days ago
    MobileAuto-check passed
  • Expo Brownfield Integration

    mweinbach/agent-coworker

    Helps add Expo and React Native to an existing native iOS or Android app, and choose between a prebuilt AAR or XCFramework and a fully integrated build.

    156 GitHub starsUsed in 2 repos~900 tokens
    MobileAuto-check: notes
  • Wear Compose M3

    jameshnsears/QuoteUnquote

    Expert guidance for working with Wear OS Compose Material3. An agent skill from jameshnsears/QuoteUnquote.

    100 GitHub starsUsed in 1 repo~3.2k tokens
    MobileAuto-check passed
  • Jugg Android Dev Loop

    niki914/zafiro

    A skill your agent uses when editing source files (Java/Kotlin/XML/layout/AndroidManifest/Gradle) in a Android project, or when user asks to build/deploy/verify an Android app.

    241 GitHub stars~2k tokensUpdated today
    MobileAuto-check passed

More from LUC4N3X/Levyra-deepsound

All 22 skills in this repo
  • Levyra Android Intent Security

    LUC4N3X/Levyra-deepsound

    Automatically use for Levyra Android Intent, deep-link, PendingIntent, exported component, receiver, service, provider, URI-grant, FileProvider, caller-verification, or onNewIntent security work.

    591 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Levyra Context Efficiency

    LUC4N3X/Levyra-deepsound

    A skill your agent uses for genuinely high-volume Levyra work such as builds, tests, lint, logs, broad searches, dependency output, Git/GitHub or CodeRabbit inspection, CI diagnostics, agent setup…

    591 GitHub stars~1.3k tokensUpdated today
    Auto-check: notes
  • Levyra Android Performance

    LUC4N3X/Levyra-deepsound

    Automatically use for Android runtime performance investigations involving Perfetto/System Trace, jank, latency, startup, CPU scheduling, blocking, memory, I/O, IPC, graphics, power, or measured…

    591 GitHub stars~3.2k tokensUpdated today
    Auto-check passed
  • Levyra CI Workflows

    LUC4N3X/Levyra-deepsound

    Automatically use for Levyra GitHub Actions, CI, F-Droid, Gradle/AGP/Kotlin/KSP compatibility, build performance, configuration/build cache, artifacts, release automation, workflow security, or…

    591 GitHub stars~2k tokensUpdated today
    Auto-check passed
  • Levyra Design Taste

    LUC4N3X/Levyra-deepsound

    Automatically use together with the matching Levyra UI skill for any visual redesign, UI polish, visual hierarchy, spacing, typography, color, shape, motion, screenshot/reference recreation, or…

    591 GitHub stars~2.7k tokensUpdated today
    Auto-check passed
  • Levyra PR Review

    LUC4N3X/Levyra-deepsound

    Review a Levyra branch, commit, patch, or pull request for correctness, regressions, concurrency, lifecycle, security, data safety, UI behavior, CI, release risk, missing tests, and merge-readiness…

    591 GitHub stars~1.9k tokensUpdated today
    Auto-check passed

Works with

Categories

Questions about Levyra R8 Proguard

What does Levyra R8 Proguard do?

Automatically use for Levyra R8, Proguard, minification, resource shrinking, keep rules, consumer rules, release-only crashes, reflection/serialization/JNI shrinking issues, APK size, mapping files…. Levyra R8 Proguard is an agent skill from LUC4N3X/Levyra-deepsound. Automatically use for Levyra R8, Proguard, minification, resource shrinking, keep rules, consumer rules, release-only crashes, reflection/serialization/JNI shrinking issues, APK size, mapping files, missing classes, or shrinker configuration review.

When should I use Levyra R8 Proguard?

Levyra R8 Proguard fits situations like: resource shrinking; release-only crashes; reflection/serialization/JNI shrinking issues; missing classes.

How do I install Levyra R8 Proguard in Claude Code?

Run `npx skills add LUC4N3X/Levyra-deepsound --skill levyra-r8-proguard -a claude-code`. Or copy the skill folder (.agents/skills/levyra-r8-proguard in LUC4N3X/Levyra-deepsound) into .claude/skills/levyra-r8-proguard in your project. Claude Code loads it when a task matches its description.

How do I install Levyra R8 Proguard in Codex?

Run `npx skills add LUC4N3X/Levyra-deepsound --skill levyra-r8-proguard -a codex`. Or copy the skill folder (.agents/skills/levyra-r8-proguard in LUC4N3X/Levyra-deepsound) into .agents/skills/levyra-r8-proguard in your project. Codex loads it when a task matches its description.

Can I use Levyra R8 Proguard in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add LUC4N3X/Levyra-deepsound --skill levyra-r8-proguard -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/levyra-r8-proguard, .gemini/skills/levyra-r8-proguard, .github/skills/levyra-r8-proguard and .opencode/skills/levyra-r8-proguard in your project.

What does Levyra R8 Proguard need to run?

SKILL.md names no scripts, command-line tools or credentials: Levyra R8 Proguard is instructions for the agent only.

Does Levyra R8 Proguard access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Levyra R8 Proguard safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Levyra R8 Proguard use?

Levyra R8 Proguard is published under the GPL-3.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Levyra R8 Proguard use?

About 2.2k tokens (SKILL.md is roughly 8.9k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Levyra R8 Proguard?

Skills that share tags, products or a category with Levyra R8 Proguard: Android Development (dpconde/claude-android-skill, 336 stars), Diagnosing Compose Stability (rosuH/EasyWatermark, 1.9k stars), Claude Android Ninja (Drjacky/claude-android-ninja, 124 stars) and Expo Brownfield Integration (mweinbach/agent-coworker, 156 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Levyra R8 Proguard?

LUC4N3X (a GitHub user) maintains it in LUC4N3X/Levyra-deepsound, which has 591 GitHub stars. The repository holds 22 skills in this directory. The repository was last updated on October 11, 2026.

Source: LUC4N3X/Levyra-deepsound on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.