CtrlK
BlogDocsLog inGet started
Tessl Logo

profile-optimizer

Analyzes React DevTools Profiler exports, Chrome DevTools Performance traces, and Chrome heap snapshots / heap-timelines / heap-profiles. Identifies the highest-impact bottlenecks (long tasks, expensive renders, layout thrash, wasted memoisation, blocking scripts, retained memory, leaks) and proposes concrete code fixes ranked by measured impact. Auto-detects the input format (React `.json` profile, Chrome trace `.json` / `.cpuprofile`, or `.heapsnapshot` / `.heaptimeline` / `.heapprofile`). Iterates via the `/confidence` skill — if root-cause certainty is below 90%, it digs deeper before recommending a fix. Use when handed a profile file, asked "why is this slow?", "why is memory growing?", or asked to optimise a hot path with evidence. Triggers on "analyze profile", "react profiler", "chrome performance", "optimize from profile", "profile this", "why is this slow", "memory leak", "heap snapshot", "/profile-optimizer".

69

Quality

87%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

73%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.

The body is a well-architected orchestrator: excellent gated workflow with numeric confidence thresholds, feedback loops, and a completion checklist, plus mostly executable inline commands. Its progressive-disclosure design is broken as bundled, though — nearly all rule and template files it depends on are absent, so the detailed analysis guidance it repeatedly defers to cannot be loaded.

Suggestions

Create the missing bundle files — rules/input-detection.md, rules/measurement-methodology.md, rules/react-profile-analysis.md, rules/chrome-trace-analysis.md, rules/heap-snapshot-analysis.md, rules/optimization-playbook.md, rules/confidence-loop.md, and templates/analysis-report.md — or inline their essential content; 8 of the 12 referenced paths currently resolve to nothing, including every phase's primary rule file.

Merge the 'Workflow' phase table with the 'Required reading by phase' table: both repeat the same rule-file list and gates, so a single table with Phase / Rule files / Gate columns would remove the duplication.

Add a minimal inline fallback for Phase 2 hotspot extraction (e.g., which Chrome trace events or React commit fields to inspect first) so the skill remains actionable when the rule files are unavailable, mirroring how the memory quickstart already inlines the heap-summary/heap-diff commands.

DimensionReasoningScore

Conciseness

Mostly dense, skill-specific material — input-detection tables, numeric gates, copy-paste commands — with essentially no explanation of concepts Claude already knows. However, the 'Workflow' phase table and the 'Required reading by phase' table duplicate the same rule-file list, and the six explained 'Core principles' could each be tightened. This is level 4 ('efficient; minor instances of over-explanation that could be trimmed') rather than level 5, whose 'every token earns its place' is violated by the duplicated table; not level 3 since no section is genuinely padded or unnecessary.

4 / 5

Actionability

Concrete, executable guidance throughout: 'node --max-old-space-size=4096 <skill_dir>/scripts/heap-summary.mjs <snapshot.heapsnapshot>', 'gunzip -k', 'Skill(skill="confidence", args="analysis")', precise detection signals ('Top-level traceEvents array', 'dataForRoots'), and numeric gates ('≥ 90%', 'max 2 deep-dives'). Level 5 ('specific examples cover the common cases') is not met because the actual hotspot-extraction and fix guidance for phases 2–3 is delegated to rule files rather than exemplified inline; it stays above level 3 because what is written is real commands and thresholds, not pseudocode or high-level hints.

4 / 5

Workflow Clarity

Six phases in an explicit ordered sequence, each with a named gate ('Do not skip a gate'), plus a numeric confidence feedback loop with error recovery ('≥ 90% proceed', '70–89% run one deeper pass', '< 70% surface the gap to the user — do not propose code changes'), an explicit iteration cap ('After two deep-dive iterations... stop and present findings as a hypothesis'), and a Definition of Done checklist. This matches level 5 ('clear sequence with explicit validation steps; feedback loops for error recovery; checklists'); level 4's 'minor validation gaps' does not apply — validation is present at every phase boundary.

5 / 5

Progressive Disclosure

On paper the body is a thin orchestrator with well-signaled one-level-deep references, but scored against the actual bundle, 8 of the 12 referenced paths are dead: the entire rules/ directory (input-detection.md, measurement-methodology.md, react-profile-analysis.md, chrome-trace-analysis.md, heap-snapshot-analysis.md, optimization-playbook.md, confidence-loop.md) and templates/analysis-report.md do not exist — only references/react-optimization-patterns.md, references/chrome-optimization-patterns.md, scripts/heap-summary.mjs, and scripts/heap-diff.mjs are real. As bundled, navigation to the core phase content is impossible, which is level 2's non-functional structure ('references are buried / structure fails') rather than level 3's merely imperfect organization — the signposting is clear, but the destinations are missing.

2 / 5

Total

15

/

20

Passed

Description

100%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.

An exemplary description: comprehensive concrete actions in third person, both 'what' and 'when' answered explicitly with natural trigger phrases, synonyms, and file extensions, and a well-bounded niche with low conflict risk. No vague fluff or over-claims.

DimensionReasoningScore

Specificity

Lists multiple concrete third-person actions with comprehensive coverage: 'Analyzes React DevTools Profiler exports, Chrome DevTools Performance traces, and Chrome heap snapshots', 'Identifies the highest-impact bottlenecks (long tasks, expensive renders, layout thrash, wasted memoisation, blocking scripts, retained memory, leaks)', 'proposes concrete code fixes ranked by measured impact', 'Auto-detects the input format'. This matches the level-5 anchor ('multiple specific concrete actions; comprehensive coverage'); level 4 requires 'minor gaps in coverage' and none are evident — input formats, bottleneck taxonomy, and output (ranked fixes) are all named.

5 / 5

Completeness

Explicitly answers both questions with concrete trigger phrases: what — 'Analyzes... Identifies the highest-impact bottlenecks... proposes concrete code fixes ranked by measured impact'; when — 'Use when handed a profile file, asked "why is this slow?", "why is memory growing?", or asked to optimise a hot path with evidence'. This is the exact level-5 pattern ('clearly and explicitly answers both what AND when with concrete trigger phrases'); level 4's caveat ('when could be more explicit') does not apply since the when-clause enumerates specific user scenarios.

5 / 5

Trigger Term Quality

Natural user phrases are comprehensively covered: 'why is this slow', 'why is memory growing', 'profile this', 'memory leak', 'heap snapshot', 'optimize from profile', plus synonyms ('analyze profile', 'react profiler', 'chrome performance') and file extensions (.json, .cpuprofile, .heapsnapshot, .heaptimeline, .heapprofile). This matches level 5 ('natural terms including synonyms and file extensions'); level 4 ('a few natural terms missing') does not apply since both colloquial questions and technical extensions are present.

5 / 5

Distinctiveness Conflict Risk

Clear niche — measured performance analysis of profiling artifacts — with distinct triggers ('react profiler', 'heap snapshot', '/profile-optimizer', 'chrome performance') that would not fire for generic coding, debugging, or optimization skills. Matches level 5 ('clear niche with distinct triggers; minimal conflict risk'); it is more bounded than level 4's example, which still overlaps adjacent document formats.

5 / 5

Total

20

/

20

Passed

Validation

81%

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

Validation — 13 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

metadata_field

'metadata' should map string keys to string values

Warning

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

relative_links

Relative link issues: 22 missing

Warning

Total

13

/

16

Passed

Repository
mthines/agent-skills
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.