Use when you need to set up Java application profiling to detect and measure performance issues — including automated async-profiler v4.0 setup, problem-driven profiling (CPU, memory, threading, GC, I/O), interactive profiling scripts, JFR integration with Java 25 (JEP 518, JEP 520), or collecting profiling data with flamegraphs and JFR recordings. This should trigger for requests such as Improve the code with profiling; Apply Profiling; Refactor the code with profiling; Add profiling support. Part of cursor-rules-java project
59
67%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Advisory
Suggest reviewing before use
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/161-java-profiling-detect/SKILL.mdQuality
Discovery
100%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
This is a strong skill description that clearly communicates what the skill does (Java profiling setup with specific tools and techniques) and when to use it (with explicit trigger phrases and a 'Use when' clause). It is highly specific, includes natural trigger terms, and occupies a distinct niche that minimizes conflict with other skills.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Lists multiple specific concrete actions: automated async-profiler v4.0 setup, problem-driven profiling (CPU, memory, threading, GC, I/O), interactive profiling scripts, JFR integration with Java 25 (JEP 518, JEP 520), collecting profiling data with flamegraphs and JFR recordings. | 3 / 3 |
Completeness | Clearly answers both 'what' (set up Java profiling, async-profiler setup, problem-driven profiling, JFR integration, flamegraphs) and 'when' with an explicit 'Use when' clause at the start and specific trigger phrases like 'Apply Profiling', 'Refactor the code with profiling'. | 3 / 3 |
Trigger Term Quality | Includes strong natural trigger terms users would say: 'profiling', 'performance issues', 'CPU', 'memory', 'flamegraphs', 'JFR', 'async-profiler', and explicit example phrases like 'Improve the code with profiling', 'Add profiling support'. Good coverage of natural variations. | 3 / 3 |
Distinctiveness Conflict Risk | Highly distinctive — focuses specifically on Java application profiling with named tools (async-profiler v4.0, JFR, Java 25 JEPs). Unlikely to conflict with general Java development, testing, or other skills due to the narrow profiling focus and specific technology references. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
35%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill provides a reasonable structural overview of a Java profiling workflow but critically lacks any concrete, executable content — no actual script templates, JVM flags, or commands are included in the body despite repeatedly instructing to 'copy exact templates.' The workflow sequence is present but missing validation checkpoints and error recovery. The skill is essentially a pointer to a reference file rather than a self-contained actionable guide.
Suggestions
Include at minimum the key JVM flags and a representative script snippet (or the core profiling command) directly in the SKILL.md body so Claude has actionable content without needing to read the reference file first.
Add explicit validation steps to the workflow, e.g., 'Verify async-profiler downloaded successfully by checking file exists' and 'If profiler attachment fails, check that the target JVM has -XX:+UnlockDiagnosticVMOptions set.'
Remove the 'What is covered in this Skill?' bullet list as it duplicates the workflow steps and description — this would improve conciseness.
Include at least one concrete example command (e.g., the chmod command, a sample java launch command with flags) to make the skill minimally actionable on its own.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill includes some unnecessary explanation (e.g., 'What is covered in this Skill?' section largely duplicates the workflow and description), and the description paragraph explains concepts Claude could infer. However, it's not egregiously verbose — the constraints and workflow sections are reasonably tight. | 2 / 3 |
Actionability | The skill repeatedly says to 'copy exact templates' and 'use script templates exactly as provided' but never includes any actual script content, code, commands, or JVM flags. All concrete guidance is deferred to a reference file. The skill body itself provides only vague direction like 'Start Java process with required profiling JVM flags' without specifying what those flags are. | 1 / 3 |
Workflow Clarity | The workflow has a clear 4-step sequence, but lacks explicit validation checkpoints or feedback loops. Step 3 mentions 'verify target process availability' but doesn't specify how. There's no error recovery guidance (e.g., what to do if async-profiler download fails or process attachment fails), which is important for this kind of multi-step setup operation. | 2 / 3 |
Progressive Disclosure | The skill references a single detailed file (references/161-java-profiling-detect.md) which is appropriate one-level-deep disclosure. However, since no bundle files were provided, we can't verify the reference exists or is well-structured. The main issue is that the SKILL.md itself is too thin — it defers almost all actionable content to the reference, making the overview insufficient to act on independently. | 2 / 3 |
Total | 7 / 12 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 — 11 / 11 Passed
Validation for skill structure
No warnings or errors.
26e9744
Table of Contents
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.