CtrlK
BlogDocsLog inGet started
Tessl Logo

122-java-type-design

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 Plinth Toolkit

70

Quality

85%

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

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

A well-structured skill body that keeps the overview concise and defers detailed patterns to a single clearly-signaled reference, with strong compile/verify validation gates in the workflow. Main weaknesses are slight redundancy with the frontmatter and reliance on the external reference for the actual refactor examples and the retry loop.

Suggestions

Promote the compile-fail 'stop and resolve' rule into an explicit numbered workflow step with a fix-and-revalidate retry loop, rather than only stating it in Constraints, to make the feedback loop unmistakable.

Trim the overlap between the frontmatter description and the 'What is covered in this Skill?' list so the body adds context (type weights, type contrast, Optional/Set-vs-List selection) rather than restating triggers.

Include one or two compact good/bad Java snippets inline (e.g., primitive obsession → value object) so the body is actionable without requiring the model to open the reference for the most common case.

DimensionReasoningScore

Conciseness

The body is lean and assumes Claude's competence — no padding explaining Java or BigDecimal — but the 'What is covered' list partially reiterates the frontmatter description, so not every token fully earns its place.

4 / 5

Actionability

Provides concrete executable commands (./mvnw compile, mvn clean verify) and a clear reference path, but the actual refactor code patterns live in the external 890-line reference rather than as copy-paste examples in the body.

4 / 5

Workflow Clarity

A clear four-step sequence with explicit validation gates (compile-before with stop-on-failure, verify-after), but the error-recovery fix-and-retry loop is stated in the Constraints section rather than as an explicit numbered workflow step.

4 / 5

Progressive Disclosure

The SKILL.md body is a well-organized overview that points to a single one-level-deep, clearly signaled reference file (references/122-java-type-design.md, verified present) for detailed good/bad patterns, with easy navigation.

5 / 5

Total

17

/

20

Passed

Description

92%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, specific description that clearly states what the skill does and when to trigger it, with concrete enumerated capabilities and natural trigger phrases. The only gap is minor: missing synonyms and file extensions in the trigger-term coverage.

DimensionReasoningScore

Specificity

Enumerates many concrete capabilities — establishing type hierarchies, eliminating primitive obsession with value objects, generic type parameters, fluent interfaces, BigDecimal for financials — giving comprehensive coverage of the skill's actions.

5 / 5

Completeness

Explicitly answers both 'what' (review/improve/refactor Java type design with enumerated capabilities) and 'when' ('Use when you need to...', 'This should trigger for requests such as...') with concrete trigger phrases.

5 / 5

Trigger Term Quality

Includes natural trigger phrases users would say ('Review Java code for type design', 'Fix primitive obsession in Java code', 'Create value objects in Java code'), but misses common synonyms and file extensions like 'refactor Java' or '.java files', so it falls short of fully comprehensive coverage.

4 / 5

Distinctiveness Conflict Risk

Occupies a clear niche (Java type design quality) with vocabulary-specific triggers tied to value objects, type hierarchies, and fluent interfaces, giving minimal overlap risk with general Java skills.

5 / 5

Total

19

/

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.

Validation16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
jabrena/plinth
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.