CtrlK
BlogDocsLog inGet started
Tessl Logo

128-java-generics

Use when you need to review, improve, or refactor Java code for generics quality — including avoiding raw types, applying the PECS (Producer Extends Consumer Super) principle for wildcards, using bounded type parameters, designing effective generic methods, leveraging the diamond operator, understanding type erasure implications, handling generic inheritance correctly, preventing heap pollution with @SafeVarargs, and integrating generics with modern Java features like Records, sealed types, and pattern matching. Part of the skills-for-java project

77

Quality

71%

Does it follow best practices?

Impact

Pending

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./skills/128-java-generics/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

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 defines its scope around Java generics quality, provides an explicit 'Use when' trigger clause, and lists a comprehensive set of specific actions and concepts. The trigger terms are highly relevant and natural for developers working with Java generics. The only minor weakness is that it uses second-person 'you' in 'you need to', though this is within the 'Use when' clause rather than a direct address pattern like 'You can use this'.

DimensionReasoningScore

Specificity

The description lists numerous specific concrete actions: avoiding raw types, applying PECS principle, using bounded type parameters, designing generic methods, leveraging diamond operator, understanding type erasure, handling generic inheritance, preventing heap pollution with @SafeVarargs, and integrating with modern Java features like Records, sealed types, and pattern matching.

3 / 3

Completeness

The description explicitly answers both 'what' (review, improve, or refactor Java code for generics quality with a comprehensive list of specific areas) and 'when' (opens with 'Use when you need to review, improve, or refactor Java code for generics quality'), providing clear trigger guidance.

3 / 3

Trigger Term Quality

Excellent coverage of natural terms a user would say: 'Java code', 'generics', 'raw types', 'PECS', 'wildcards', 'bounded type parameters', 'diamond operator', 'type erasure', '@SafeVarargs', 'heap pollution', 'Records', 'sealed types', 'pattern matching'. These are all terms a developer would naturally use when seeking help with Java generics.

3 / 3

Distinctiveness Conflict Risk

This is highly distinctive — it targets a very specific niche of Java generics quality, with domain-specific terms like PECS, type erasure, @SafeVarargs, and heap pollution that are unlikely to conflict with other skills. The mention of 'skills-for-java project' further contextualizes it.

3 / 3

Total

12

/

12

Passed

Implementation

42%

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

This skill functions primarily as a table of contents pointing to a reference file, with almost no actionable content in the body itself. The compilation guard rails are a strength, but the complete absence of code examples or concrete patterns means Claude must rely entirely on the reference file for any real guidance. The bullet list of topics covered adds little value since it doesn't teach anything actionable.

Suggestions

Add at least 2-3 concrete before/after code examples for the most common patterns (e.g., raw type elimination, PECS wildcard application) directly in the skill body so Claude has immediate actionable guidance without needing to read the reference.

Expand the workflow into explicit numbered steps: e.g., 1) compile, 2) identify raw types and unsafe casts, 3) apply PECS where collections are passed, 4) add diamond operator, 5) verify — with specific things to look for at each step.

Remove or significantly condense the 'What is covered' bullet list — it explains concepts Claude already knows and doesn't provide actionable guidance. Replace it with a quick-reference decision table (e.g., 'If you see X pattern → apply Y fix').

DimensionReasoningScore

Conciseness

The 'What is covered' bullet list is somewhat verbose and reads like a table of contents rather than actionable content. The description of scope areas explains concepts Claude already knows (e.g., what PECS stands for, what CRTP is). However, it's not egregiously padded.

2 / 3

Actionability

There are no concrete code examples, no executable commands beyond compile/verify, and no specific patterns shown. Everything is deferred to the reference file. The skill body describes rather than instructs — it tells Claude what topics exist but not how to apply them.

1 / 3

Workflow Clarity

The constraints section provides a clear sequence (compile before → apply → verify after) with a blocking condition on compilation failure, which is good. However, the actual workflow of reviewing and improving generics code lacks specific steps — there's no guidance on how to identify issues, prioritize changes, or validate individual improvements.

2 / 3

Progressive Disclosure

The skill provides a clear overview with a single, well-signaled reference to the detailed file. The structure is clean with one level of depth, and the reference link is explicit and easy to navigate.

3 / 3

Total

8

/

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.

Validation11 / 11 Passed

Validation for skill structure

No warnings or errors.

Repository
jabrena/cursor-rules-java
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.