CtrlK
BlogDocsLog inGet started
Tessl Logo

jspecify-skill

Use this skill when asked to perform any of the following actions in a Java project: - To add jspecify support - To prevent NullPointerExceptions - To better handle Nullability This skill will add jspecify dependency, configure Maven or Gradle build to automatically use jspecify for checking Nullability issues.

78

2.32x
Quality

78%

Does it follow best practices?

Impact

100%

2.32x

Average score across 2 eval scenarios

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./skills/jspecify/SKILL.md
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.

The content is highly actionable with complete executable code and well-organized progressive disclosure into real reference files. The main weakness is conciseness, due to an unnecessary opening concept sentence and inlined, time-sensitive version numbers.

Suggestions

Remove or trim the opening sentence 'Jspecify provides a set of annotations...' since Claude already knows what JSpecify is.

Move version pin numbers (e.g. plugin and dependency versions) into a single, clearly labeled block or reference file so they do not penalize conciseness and are easier to update.

Make the verification step unconditional and explicit (e.g. a numbered 'Verify' checkpoint) to strengthen the workflow's feedback loop for this batch operation.

DimensionReasoningScore

Conciseness

The body is mostly lean with tight code blocks, but it opens with a concept Claude already knows ('Jspecify provides a set of annotations to explicitly declare the nullness expectations') and inlines many time-sensitive version numbers (1.0.0, 0.4.2, 5.1.0, 3.1.0, JDK 25, error_prone 2.50.0, nullaway 0.13.7) outside any deprecated/old-patterns section.

3 / 5

Actionability

Provides fully executable, copy-paste-ready Maven pom.xml, Gradle build, and package-info.java snippets that cover the common cases, plus a concrete verification script invocation.

5 / 5

Workflow Clarity

Sections imply a clear sequence (configure build, add @NullMarked to package-info, verify, then migrate/adopt incrementally) with an explicit validation checkpoint (scripts/verify_nullmarked.py) and an explicit ordering constraint ('migrate before adding @NullMarked'); minor gaps are the conditional verify step and lack of numbering.

4 / 5

Progressive Disclosure

The body is a concise overview that pushes detailed material to one-level-deep, clearly signaled references (annotation-migration.md, incremental-adoption.md, kotlin-interop.md), all of which exist as real files in the bundle.

5 / 5

Total

17

/

20

Passed

Description

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

The description clearly conveys both purpose and trigger conditions with a concrete bulleted action list, but loses points on specificity for using second-person imperative voice and for one vague action phrase. It is otherwise well-targeted to its niche.

Suggestions

Rewrite in third person (e.g. 'Adds jspecify support... Use when adding jspecify support, preventing NullPointerExceptions, or handling nullability') to avoid the second-person voice penalty.

Replace the vague 'better handle Nullability' with a concrete action such as 'annotate nullness expectations on Java APIs'.

Consider including a file/extension trigger (e.g. 'pom.xml', 'build.gradle') to broaden natural trigger-term coverage.

DimensionReasoningScore

Specificity

Names concrete actions like 'add jspecify dependency' and 'configure Maven or Gradle build', but also includes vague phrasing like 'better handle Nullability'; reduced by 1 because the description uses second-person imperative voice ('Use this skill when asked to...').

3 / 5

Completeness

Explicitly answers both what ('add jspecify dependency, configure Maven or Gradle build to automatically use jspecify for checking Nullability issues') and when ('Use this skill when asked to perform any of the following actions in a Java project') with a concrete trigger list.

5 / 5

Trigger Term Quality

Includes natural phrases a Java developer would say such as 'add jspecify support' and 'prevent NullPointerExceptions', with good coverage though a few synonymous phrasings are missing.

4 / 5

Distinctiveness Conflict Risk

The JSpecify-specific niche and Java-project scoping make it mostly distinct with minimal conflict risk, though it could overlap with broader nullability-annotation skills.

4 / 5

Total

16

/

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
sivaprasadreddy/sivalabs-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.