asset-catalog-optimizer

Analyze and optimize Xcode asset catalogs - find unused assets, missing resolutions, compress images

16 stars

Best use case

asset-catalog-optimizer is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Analyze and optimize Xcode asset catalogs - find unused assets, missing resolutions, compress images

Teams using asset-catalog-optimizer should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/asset-catalog-optimizer/SKILL.md --create-dirs "https://raw.githubusercontent.com/diegosouzapw/awesome-omni-skill/main/skills/development/asset-catalog-optimizer/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/asset-catalog-optimizer/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How asset-catalog-optimizer Compares

Feature / Agentasset-catalog-optimizerStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Analyze and optimize Xcode asset catalogs - find unused assets, missing resolutions, compress images

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# Asset Catalog Optimizer

Analyze `.xcassets` folders to optimize image assets and find issues.

## Capabilities

- List all assets in catalogs
- Find unused images (not referenced in code)
- Check for missing @2x/@3x versions
- Analyze image file sizes
- Compress images losslessly
- Detect duplicate images
- Validate asset naming
- Generate asset inventory
- Calculate total asset size
- Suggest optimizations

## Tools Included

###  `asset_optimizer.py`
Python script for asset analysis and optimization

**Commands:**
```bash
# Analyze asset catalog
./asset_optimizer.py PaleoRose/Assets.xcassets analyze

# Find unused assets
./asset_optimizer.py PaleoRose/Assets.xcassets find-unused --source-dir PaleoRose

# Check missing resolutions
./asset_optimizer.py PaleoRose/Assets.xcassets check-resolutions

# Compress images
./asset_optimizer.py PaleoRose/Assets.xcassets compress --quality 85

# Generate report
./asset_optimizer.py PaleoRose/Assets.xcassets report --output report.html

# Calculate sizes
./asset_optimizer.py PaleoRose/Assets.xcassets sizes
```

## Features

### Unused Asset Detection
Searches Swift/ObjC code for asset references like:
- `NSImage(named: "icon")`
- `UIImage(named: "logo")`
- `Image("background")`
- `[NSImage imageNamed:@"button"]`

### Resolution Checking
Verifies all imagesets have:
- @1x (universal or Mac)
- @2x (required for Retina)
- @3x (iOS only, warns if missing)

### Compression
- PNG: lossless optimization with pngquant/optipng
- JPEG: quality-based compression
- Preserves transparency
- Maintains color profiles

## Usage

Run when:
- App bundle is too large
- Need to audit assets
- Before App Store submission
- Cleaning up old/unused assets
- Optimizing performance

## Output Examples

```
Asset Catalog Analysis: Assets.xcassets
========================================

Total Assets: 47
Total Size: 12.3 MB

Missing Resolutions (5):
  - icon.imageset: Missing @2x
  - logo.imageset: Missing @3x
  - background.imageset: Missing @2x, @3x

Unused Assets (8):
  - old-button.imageset (45 KB)
  - deprecated-icon.imageset (23 KB)
  - test-image.imageset (156 KB)

Potential Savings:
  - Compression: 3.2 MB (26%)
  - Remove unused: 1.8 MB (15%)
  - Total: 5.0 MB (41%)

Recommendations:
  1. Compress 23 PNG files to save 3.2 MB
  2. Remove 8 unused assets to save 1.8 MB
  3. Add missing @2x/@3x versions for 5 assets
```

Related Skills

antipattern-catalog

16
from diegosouzapw/awesome-omni-skill

Document technical debt, anti-patterns, and patterns to avoid from analyzed frameworks. Use when (1) creating a "Do Not Repeat" list from framework analysis, (2) categorizing observed code smells and issues, (3) assessing severity of architectural problems, (4) generating remediation suggestions, or (5) synthesizing lessons learned across multiple frameworks.

asset-placement-strategy

16
from diegosouzapw/awesome-omni-skill

Specialized logic for strategic placement of Northcote Curio design artifacts (Seeds, Pebbles, Lenses, Stones) based on biological asymmetry and curiosity specimen aesthetics. Ensures organic balance and avoids "slop" by enforcing strict archetype constraints and structural integrity.

Asset Manager

16
from diegosouzapw/awesome-omni-skill

Organize design assets, optimize images and fonts, maintain brand asset libraries, implement version control for assets, and enforce naming conventions. Keep design assets organized and production-ready.

context-optimizer

16
from diegosouzapw/awesome-omni-skill

Analyzes Copilot Chat debug logs, agent definitions, skills, and instruction files to audit context window utilization. Provides log parsing, turn-cost profiling, redundancy detection, hand-off gap analysis, and optimization recommendations. Use when optimizing agent context efficiency, identifying where to add subagent hand-offs, or reducing token waste across agent systems.

asset-tracking

16
from diegosouzapw/awesome-omni-skill

Use when managing asset metadata, dependencies, and delivery workflows across teams.

asset-forge

16
from diegosouzapw/awesome-omni-skill

Creates new skills, rules, and MCPs for ai-driven-dev-system or project-specific use. Use when user requests a new reusable component, wants to add coding standards, needs to document a workflow, or asks to create a skill or rule.

asset-bundles

16
from diegosouzapw/awesome-omni-skill

Create and configure Databricks Asset Bundles (DABs) with best practices for multi-environment deployments. Use when working with: (1) Creating new DAB projects, (2) Adding resources (dashboards, pipelines, jobs, alerts), (3) Configuring multi-environment deployments, (4) Setting up permissions, (5) Deploying or running bundle resources

agentv-prompt-optimizer

16
from diegosouzapw/awesome-omni-skill

Iteratively optimize prompt files against AgentV evaluation datasets by analyzing failures and refining instructions.

image-optimizer

16
from diegosouzapw/awesome-omni-skill

Optimize and compress images for web use. Reduces file sizes of JPEG, PNG, GIF images using lossy/lossless compression. Can resize images to maximum dimensions, convert to WebP format, and process entire directories recursively. Use when images are too large for web, need compression, or need format conversion.

article-title-optimizer

16
from diegosouzapw/awesome-omni-skill

This skill analyzes article content in-depth and generates optimized, marketable titles in the format 'Title: Subtitle' (10-12 words maximum). The skill should be used when users request title optimization, title generation, or title improvement for articles, blog posts, or written content. It generates 5 title candidates using proven formulas, evaluates them against success criteria (clickability, SEO, clarity, emotional impact, memorability, shareability), and replaces the article's title with the winning candidate.

asset-packager

16
from diegosouzapw/awesome-omni-skill

Automated asset packaging—converts validated PNG + IDF JSON into complete production bundle (context.md, tokens.json, usage.md). Eliminates 30 manual file generations across 10 assets.

asset-optimization

16
from diegosouzapw/awesome-omni-skill

Asset optimization skill for mesh and texture budgets.