← ClaudeAtlas

macos-app-performancelisted

Benchmark and review one macOS app's performance against Apple's own documented thresholds — hangs, main-thread responsiveness, launch, CPU, memory, energy — and report what to fix first. Measures under conditions that make the numbers mean something, uses Instruments via xctrace and the command-line tools, and optionally records a baseline to compare later runs against. Works on any running app, and uses better tooling when it finds an Xcode, SwiftPM, Tauri or Electron project. Use for "profile my app", "benchmark this app", "why is my app slow", "my app beachballs", "is my app leaking", "app launch is slow", "my app drains battery", "did this release get slower", "performance review before shipping", "Time Profiler", "Instruments from the command line", "xctrace", "signposts", "XCTest performance test". Careful about what is macOS guidance and what is iOS-only.
k97/skills · ★ 1 · Data & Documents · score 78
Install: claude install-skill k97/skills
# macos-app-performance Measures how a macOS app performs (hangs, launch time, CPU, memory, energy) and judges every number against the thresholds Apple publishes, so you know what to fix first. Works on any running app, uses Instruments where Xcode is installed, and can keep a baseline to catch regressions between releases. Everything here is macOS-applicable and sourced from Apple's documentation; where Apple's guidance is iOS-only, this skill says so instead of borrowing it, and where Apple's own material is archived or does not affirm macOS support, the reference covering it says so. ## Step 1 — establish the subject A running app is named by name, pid, or bundle path. Detect a project in the working directory, because it decides what can be measured: ```bash find . -maxdepth 1 \( -name Package.swift -o -name '*.xcodeproj' -o -name '*.xcworkspace' \) # Swift / Xcode (a bare glob aborts under zsh) [ -f src-tauri/tauri.conf.json ] && echo tauri [ -f package.json ] && grep -q '"electron"' package.json && echo electron ``` **The app is usually not one process.** Tauri, Electron, and anything with XPC helpers or a WebKit content process spread work across several, and the one doing the work is rarely the one named on the bundle. Enumerate with `pgrep -fl <app-name>` and attribute every number to a named process. **Measure a release build**, with the accuracy settings Apple prescribes for performance work — see [references/measurement.md](references/measurement.md). If