CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

ios-ettrace-performance

Capture and interpret iOS Simulator ETTrace profiles. Use when profiling launch or runtime latency, comparing traces, or finding CPU-heavy stacks.

70

Quality

88%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Low

Low-risk findings worth noting

SKILL.md
Quality
Evals
Security

Quality

Content

88%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

An excellent operational skill: executable commands throughout, a numbered workflow mirrored by section order, and genuine validation gates with error-recovery paths. The only tightening opportunities are de-duplicating the two capture blocks and moving the long inline bash blocks into scripts/ to match the existing bundle structure.

DimensionReasoningScore

Conciseness

The body is lean and imperative with essentially no explanation of concepts Claude already knows — it goes straight to env-guarded bash, brew install, and xcodebuild commands. It is not a 5 because of repetition: the launch and runtime capture blocks repeat three identical lines, and the warning about `output.json` vs `output_*.json` appears in both 'Preserve Outputs' prose and again one paragraph later.

4 / 5

Actionability

Nearly everything is copy-paste-ready: guarded RUN_DIR setup, exact brew tap, full xcodebuild archive/create-xcframework invocations with flags, a concrete dSYM collection command with flag semantics, capture commands, and a preserve-outputs loop that writes a summary. The few placeholders (<path-to-built-simulator-App.app>) and the prose-only Xcode target wiring are the only non-executable bits, and the latter is inherently a manual IDE step.

5 / 5

Workflow Clarity

The 7-step Core Workflow is followed by sections in exactly that order, with explicit validation checkpoints and recovery loops: a symbolication gate ('Do not draw conclusions from an unsymbolicated flamegraph'), a capture marker that must exist before preserving, an error exit when no fresh output JSON is found, UUID verification when a report 'looks suspicious', and a retry instruction ('If the analyzer rejects the JSON shape, capture again...'). This matches the top anchor including feedback loops for error recovery.

5 / 5

Progressive Disclosure

The two bundle scripts (scripts/collect_ios_dsyms.sh, scripts/analyze_flamegraph_json.py) are real files, referenced one level deep via clear $SKILL_DIR paths, and sections are well-labeled. It is not a 5 because the body inlines two long multi-command blocks — the xcframework build (~25 lines) and the preserve-outputs loop (~20 lines) — that are script-shaped and would fit the existing scripts/ directory, keeping SKILL.md as a purer overview.

4 / 5

Total

18

/

20

Passed

Description

82%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description: concrete domain, explicit 'Use when' triggers in the user's own vocabulary, and third-person voice. Its only weakness is thin capability coverage — two verbs ('capture and interpret') undersell the symbolication, linking, and analysis steps the body delivers.

DimensionReasoningScore

Specificity

The description names its domain ("iOS Simulator ETTrace profiles") and exactly two concrete actions ("Capture and interpret"), which matches the anchor for naming a domain with 1-2 concrete actions but not comprehensive coverage — there is no mention of symbolication, linking, or the analysis artifacts the skill actually produces. It is not a 4 because 'Lists several specific actions' is not satisfied by two verbs.

3 / 5

Completeness

It explicitly answers both questions: the "what" is "Capture and interpret iOS Simulator ETTrace profiles" and the "when" is a concrete 'Use when' clause with three specific trigger conditions. Third person is used throughout. This matches the top anchor exactly.

5 / 5

Trigger Term Quality

Natural trigger phrases are present ("profiling launch or runtime latency", "comparing traces", "finding CPU-heavy stacks") and read like what a user would actually say. It is not a 5 because common synonyms a user might use — e.g. "slow startup", "time profiler", "flamegraph", "performance" — are absent.

4 / 5

Distinctiveness Conflict Risk

ETTrace + iOS Simulator is a clear niche with distinct triggers (profiling latency, comparing traces, CPU-heavy stacks) that would not naturally route to a generic build/debug skill. Conflict risk is minimal.

5 / 5

Total

17

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

openai/plugins

Path

plugins/build-ios-apps/skills/ios-ettrace-performance/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.