mcpbeat

Mobile Performance

cosmicstack-labs/mobile-performance

App startup, memory management, battery efficiency, network optimization, and profiling tools

397 tokens
context cost
the whole folder, loaded on every use
1
files
instructions only
0
copies elsewhere
how many repositories repackaged it
365
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/cosmicstack-labs/mercury-agent-skills --skill mobile-performance

The instruction itself

7 sections, as written by the author

Mobile Performance

Profile, diagnose, and optimize mobile app performance.

Key Metrics

| Metric | Target | Tool |

|--------|--------|------|

| Cold Start | <1.5s | Xcode Organizer, Play Console |

| Warm Start | <0.5s | Systrace, os_signpost |

| Frames | 60fps (16ms) | Profile GPU, Perfetto |

| APK/IPA Size | <50MB | size-report, analyzer |

| Memory | <150MB | Xcode Memory Debugger, Memory Profiler |

| Network Latency | <200ms p95 | Proxyman, Charles |

Startup Optimization

iOS

  • Reduce dynamic framework loading (prefer static libraries)
  • Lazy-load non-critical services
  • Profile with Instruments - App Launch
  • Use dispatch_once for singletons

Android

  • Apply App Startup library for content providers
  • Profile with Android Studio - Startup Profiler
  • Use baseline profiles (Android 12+)
  • Defer heavy init to background threads

Memory Management

  • Watch for retain cycles (weak/unowned references)
  • Image caching: use NSCache/LruCache with size limits
  • Monitor for OOMs in production with crash reporting
  • Release view controllers when off-screen

Network Optimization

  • HTTP/2 multiplexing for concurrent requests
  • Response caching with ETags
  • Prefetch data predictively
  • Compress with Brotli or gzip
  • Use Protocol Buffers over JSON for large payloads

How to use it

Copy the folder

Take cosmicstack-labs/mobile-performance 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.