mcpbeat

Cleanup Unused Assets

flutter/cleanup-unused-assets

Reduce plugin size by scanning resources/icons and removing unreferenced assets.

377 tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
2013
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/flutter/flutter-intellij --skill cleanup-unused-assets

The instruction itself

9 sections, as written by the author

Skill: Unused Asset Cleanup

You are tasked with reducing plugin size by removing unused icons, images, and resources.

Objective

Reduce plugin size by removing unused icons, images, and resources.

Workflow Instructions

1. Baseline

  • Run ./gradlew test and ./gradlew verifyPlugin to ensure the project is stable.

2. Scan Assets

  • List all files in resources/icons and other asset directories.

3. Search Usages

  • Check if each asset is referenced in code or plugin.xml.

4. Remove

  • Delete assets with zero references.

5. Verify

  • Run ./gradlew buildPlugin and check that the plugin still loads correctly without missing resource exceptions.
  • Run ./gradlew testClasses, ./gradlew test and ./gradlew verifyPlugin to ensure no regressions.
  • Suggest manual test steps: Check code changes made and write test steps for a user to execute that trigger changed code paths. If needed, add logging statements to verify code paths successfully run.

6. Report & Review

  • Summarize assets removed.
  • Test Location: Explicitly state *where* in the IDE user should go to test changed functionality (e.g., "Go to Preferences > Languages & Frameworks > Flutter").
  • Action: Ask user to review deletions closely.
  • Do not commit or push.
  • Provide a suggested Git commit message (e.g., "Cleanup: Remove unused icon [Icon Name]").

How to use it

Copy the folder

Take flutter/cleanup-unused-assets from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.