Use when you need to review, improve, or refactor Java code for type design quality — including establishing clear type hierarchies, applying consistent naming conventions, eliminating primitive obsession with domain-specific value objects, leveraging generic type parameters, creating type-safe wrappers, designing fluent interfaces, ensuring precision-appropriate numeric types (BigDecimal for financial calculations), and improving type contrast through interfaces and method signature alignment. This should trigger for requests such as Review Java code for type design; Improve type design in Java code; Fix primitive obsession in Java code; Create value objects in Java code. Part of cursor-rules-java project
88
85%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
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 excels across all dimensions. It provides comprehensive, specific capabilities, includes natural trigger terms users would actually use, explicitly addresses both 'what' and 'when', and occupies a clearly distinct niche within Java development skills. The only minor weakness is that it's somewhat verbose, but the detail serves the purpose of disambiguation.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | The description lists multiple specific concrete actions: establishing type hierarchies, applying naming conventions, eliminating primitive obsession with value objects, leveraging generic type parameters, creating type-safe wrappers, designing fluent interfaces, ensuring precision-appropriate numeric types (BigDecimal), and improving type contrast through interfaces. | 3 / 3 |
Completeness | The description clearly answers both 'what' (review/improve/refactor Java code for type design quality with a comprehensive list of specific capabilities) and 'when' (opens with 'Use when...' and includes explicit trigger phrases like 'This should trigger for requests such as...'). | 3 / 3 |
Trigger Term Quality | Includes strong natural keywords users would say: 'Java code', 'type design', 'primitive obsession', 'value objects', 'refactor', 'review', 'naming conventions', 'BigDecimal', 'fluent interfaces', 'type-safe wrappers'. The explicit trigger examples ('Review Java code for type design', 'Fix primitive obsession in Java code') further reinforce natural language matching. | 3 / 3 |
Distinctiveness Conflict Risk | The description carves out a very specific niche — Java type design quality — which is distinct from general Java code review, general refactoring, or other language skills. The focus on type hierarchies, primitive obsession, value objects, and type-safe wrappers makes it unlikely to conflict with broader code review or other Java skills. | 3 / 3 |
Total | 12 / 12 Passed |
Implementation
70%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
The skill has strong workflow clarity with explicit compile-before and verify-after checkpoints, and good progressive disclosure pointing to a single reference file. However, it is weakened by a verbose overview section that explains concepts Claude already knows, and by the complete absence of concrete Java code examples in the SKILL.md itself — all actionable patterns are deferred to the reference file.
Suggestions
Add 1-2 brief, executable Java code examples directly in the SKILL.md (e.g., a before/after for replacing a primitive String with an EmailAddress value object) to improve actionability without requiring the reference file.
Trim the 'What is covered' bullet list to a compact summary — remove explanatory parentheticals like '(EmailAddress, Money)' and '(financial/monetary operations)' that Claude doesn't need.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The 'What is covered' bullet list is somewhat verbose and explains concepts Claude already understands (e.g., 'value objects replacing primitive obsession', 'contract vs implementation separation'). The workflow and constraints sections are reasonably tight, but the overview section could be significantly trimmed. | 2 / 3 |
Actionability | The skill provides concrete commands (./mvnw compile, mvn clean verify) and a clear workflow sequence, but lacks any executable code examples of the actual type design patterns. All concrete guidance is deferred to the reference file, so the SKILL.md itself gives no copy-paste-ready Java code for any of the listed improvements. | 2 / 3 |
Workflow Clarity | The workflow is clearly sequenced with explicit validation checkpoints: compile before changes (blocking on failure), read reference, apply changes, then verify with full build. The feedback loop for compilation failure is explicit ('stop immediately'), satisfying the requirement for destructive/batch operation validation. | 3 / 3 |
Progressive Disclosure | The SKILL.md serves as a clear overview with a single, well-signaled reference to the detailed guide (references/122-java-type-design.md). Content is appropriately split — the skill body covers when/how/constraints while deferring detailed patterns to one level of reference. | 3 / 3 |
Total | 10 / 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.
762cb86
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.