Install
openclaw skills install instruments-profilingUse when profiling native macOS or iOS apps with Instruments/xctrace. Covers correct binary selection, CLI arguments, exports, and common gotchas.
openclaw skills install instruments-profilingUse this skill when the user wants performance profiling or stack analysis for native apps.
Focus: Time Profiler, xctrace CLI, and picking the correct binary/app instance.
xcrun xctrace list templatesxcrun xctrace record --template 'Time Profiler' --time-limit 60s --output /tmp/App.trace --launch -- /path/To/App.appxcrun xctrace record --template 'Time Profiler' --time-limit 60s --output /tmp/App.trace --attach <pid>open -a Instruments /tmp/App.traceNote: xcrun xctrace --help is not a valid subcommand. Use xcrun xctrace help record.
Gotcha: Instruments may profile the wrong app (e.g., one in /Applications) if LaunchServices resolves a different bundle.
Use these rules:
xcrun xctrace record ... --launch -- /path/App.app/Contents/MacOS/App.app, ensure it’s the intended bundle:
open -n /path/App.appps -p <pid> -o comm= -o command=/Applications/App.app and a local build exist, explicitly target the local build path.--template 'Time Profiler': template name from xctrace list templates.--launch -- <cmd>: everything after -- is the target command (binary or app bundle).--attach <pid|name>: attach to running process.--output <path>: .trace output. If omitted, file saved in CWD.--time-limit 60s|5m: set capture duration.--device <name|UDID>: required for iOS device runs.--target-stdout -: stream launched process stdout to terminal (useful for CLI tools).xcrun xctrace export --input /tmp/App.trace --tocxcrun xctrace export --input /tmp/App.trace --xpath '/trace-toc/run[@number="1"]/data/table[@schema="time-profile"]' --output /tmp/time-profile.xml--attach with known PID.xctrace may need Developer Tools permission.
time-profile exports are huge.
xcrun xctrace list devices and --device <UDID>.xctrace --attach.