CtrlK
BlogDocsLog inGet started
Tessl Logo

crud-rest-controller

Creates a Spring REST controller with CRUD endpoints backed by a Spring Data repository. Use this skill when a CRUD controller needs to be created, either standalone or as part of a larger task.

52

Quality

57%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Passed

No known issues

Optimize this skill with Tessl

npx tessl skill review --optimize ./skills/crud-rest-controller/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Discovery

75%

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 is functional and well-structured with clear 'what' and 'when' clauses, and occupies a distinct niche. However, it could benefit from more specific concrete actions beyond the general 'CRUD endpoints' and additional trigger terms that users might naturally use when requesting this kind of work.

Suggestions

List more specific actions such as 'generates GET, POST, PUT, DELETE endpoints, creates repository interface, adds exception handling' to improve specificity.

Add natural trigger terms users might say, such as 'REST API', 'Spring Boot', 'JPA', '@RestController', 'API endpoints', or 'entity CRUD'.

DimensionReasoningScore

Specificity

Names the domain (Spring REST controller) and the general action (CRUD endpoints backed by a Spring Data repository), but doesn't list specific concrete actions like 'create GET/POST/PUT/DELETE endpoints, generate repository interface, add pagination support'.

2 / 3

Completeness

Clearly answers both 'what' (creates a Spring REST controller with CRUD endpoints backed by a Spring Data repository) and 'when' (when a CRUD controller needs to be created, either standalone or as part of a larger task) with an explicit 'Use this skill when' clause.

3 / 3

Trigger Term Quality

Includes relevant terms like 'Spring REST controller', 'CRUD endpoints', and 'Spring Data repository', but misses common user variations like 'REST API', 'API endpoints', '@RestController', 'JPA', 'entity', or 'Spring Boot'.

2 / 3

Distinctiveness Conflict Risk

The description is quite specific to Spring REST controllers with CRUD + Spring Data repository, which is a clear niche unlikely to conflict with other skills like general code generation or non-Spring web frameworks.

3 / 3

Total

10

/

12

Passed

Implementation

39%

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 thorough and well-structured workflow for generating Spring CRUD controllers, with excellent sequencing and validation checkpoints. However, it is severely over-verbose — spending hundreds of tokens teaching Claude how to ask questions, recognize user intent, and apply decision-making principles that Claude already understands. The lack of bundle files undermines the many external file references, and the monolithic structure means Claude must process ~400+ lines of content for every invocation.

Suggestions

Reduce the skill by at least 50% — remove the extensive 'Decision-making principle' section, the 'How to ask' guidelines, and the Step 0 mental checklist. Claude already knows how to read conversation context, batch questions, and recognize user intent. Replace with a brief 'Prefer deriving answers from context before asking; batch related questions.' line.

Extract the AskUserQuestion usage rules, decision-making hierarchy, and smart-defaults logic into a separate referenced file (e.g., INTERACTION_GUIDELINES.md) to keep the main SKILL.md focused on the generation workflow.

Provide the bundle files (examples/_skeletons/, examples/_methods/, etc.) or at minimum include inline code snippets showing what the generated controller looks like, so the skill is actionable without external dependencies.

Consolidate the defaults tables — Block 1-4 tables and the auto-detected table could be a single compact table, cutting ~30 lines of formatting overhead.

DimensionReasoningScore

Conciseness

The skill is extremely verbose at ~400+ lines. It extensively explains decision-making principles, how to use AskUserQuestion, when to batch questions, and how to recognize user intent — all of which Claude already understands. The repeated emphasis on 'CRITICAL' rules, the exhaustive Step 0 mental checklist, and the lengthy 'How to ask' section are redundant. Much of this could be condensed to a fraction of its size.

1 / 3

Actionability

The skill provides a clear step-by-step workflow with specific tool calls, variable names, and file paths (e.g., `examples/_methods/{method-name}/{language}.md`). However, it contains no actual executable code — all code generation depends on external example files that are not provided in the bundle. The anti-hallucination checklist and variable substitution rules are concrete but the skill is essentially a process document rather than containing copy-paste-ready code.

2 / 3

Workflow Clarity

The workflow is clearly sequenced across Steps 0-6 with explicit validation checkpoints (anti-hallucination checklist, FQN handling rules, dependency verification via refresh_build_system_model). Each step has clear entry/exit conditions, lazy evaluation rules for when to call tools, and the decision-making hierarchy provides explicit feedback loops for user interaction.

3 / 3

Progressive Disclosure

Despite referencing numerous external files (examples/_skeletons/, examples/_methods/, examples/_beans/, examples/_dependencies/), no bundle files are provided, making it impossible to verify these references work. More critically, the SKILL.md itself is a monolithic wall of text — the decision-making principle, AskUserQuestion usage guidelines, and Step 0 context-reading instructions could all be extracted to separate reference files, but instead they bloat the main skill file significantly.

1 / 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.

Validation11 / 11 Passed

Validation for skill structure

No warnings or errors.

Repository
Amplicode/spring-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.