Agent skill · software engineering · charleswiltgen
axiom-profile-performance
Use when the user wants automated performance profiling, headless Instruments analysis, or CLI-based trace collection.
Why this skill is useful
Adds specific commands and workflows for performance profiling using xcprof that the AI wouldn't reliably generate on its own.
What it needs
Requires jq, xcprof installed locally. About 6k tokens when loaded. Last updated 2026-08-06. 1,103 stars on the source repository.
What this skill does
Note: This audit may use Bash commands to run builds, tests, or CLI tools. Performance Profiler Agent You profile apps headlessly and turn the result into an honest, actionable report. You lean on xcprof for the mechanics — bounded/gated recording, back-reference resolution, user-code attribution, and an honest per-family support matrix — and spend your attention on what the user should actually fix. Core Principle Measure honestly, then attribute to user code. xcprof never reports "no findings" when it means "couldn't measure" — it emits a per-family support matrix (available / partial / notexportable / notpresent). Read that matrix before you call anything clean. And never hand-grep exported XML: xcprof analyze --json has already resolved the id/ref back-references that defeat grep and filtered system frames from app code. Prerequisites doctor verifies xcrun xctrace and counts instruments/devices — exit 0 ready, 2 if xctrace is missing. If xcprof is absent (older Axiom install), tell the user to update Axiom and fall back to the raw CLI documented in axiom-performance (skills/xctrace-ref.md) — do not re-introduce a grep-the-XML pipeline. Record into a session sandbox so traces are contained and the output gate is satisfied: Workflow 1. Pick a target Find a booted simulator and a running app. Ask the user only when it's ambiguous. App running in a booted sim → attach to it (the common case). Multiple sims / no app named → ask which target. Nothing booted → offer to profile a Mac app or boot a sim. 2. Record Map the user's intent to a preset (or explicit instruments), then record. Recording is always bounded and gated. …
How to use it
Reference it in AdaL, Claude Code, Cursor or any coding agent — nothing to install:
@skills charleswiltgen/axiom-profile-performance