Generate complete REST API implementations from OpenAPI specifications or database schemas. Use when generating RESTful API implementations. Trigger with phrases like "generate REST API", "create RESTful API", or "build REST endpoints".
59
51%
Does it follow best practices?
Impact
Pending
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./plugins/api-development/rest-api-generator/skills/generating-rest-apis/SKILL.mdQuality
Discovery
67%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 covers the basics with explicit 'Use when' and 'Trigger with' clauses, which is good for completeness. However, it lacks specificity about what a 'complete REST API implementation' entails and could benefit from more diverse trigger terms. The description is somewhat generic within the API generation space and could be more distinctive.
Suggestions
Add specific concrete actions the skill performs, e.g., 'Generates route handlers, request validation, error handling, and database models from OpenAPI specifications or database schemas'.
Expand trigger terms to include common variations like 'CRUD endpoints', 'swagger', 'API scaffold', 'API boilerplate', 'web service endpoints', or specific framework names if applicable.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | It names the domain (REST API implementations) and mentions inputs (OpenAPI specifications, database schemas), but doesn't list specific concrete actions beyond 'generate'. It lacks detail on what the implementation includes (e.g., route handlers, validation, middleware, error handling). | 2 / 3 |
Completeness | It clearly answers both 'what' (generate REST API implementations from OpenAPI specs or database schemas) and 'when' (explicit 'Use when' clause and 'Trigger with phrases' providing concrete trigger guidance). | 3 / 3 |
Trigger Term Quality | Includes some relevant trigger terms like 'REST API', 'RESTful API', 'REST endpoints', 'OpenAPI specifications', and 'database schemas'. However, it misses common variations users might say such as 'API scaffold', 'CRUD endpoints', 'swagger', 'API boilerplate', or 'web service'. | 2 / 3 |
Distinctiveness Conflict Risk | The focus on REST API generation from OpenAPI specs/database schemas is somewhat specific, but 'generate REST API' could overlap with general code generation skills or API-related skills. The scope of 'complete REST API implementations' is broad enough to potentially conflict with framework-specific or language-specific code generation skills. | 2 / 3 |
Total | 9 / 12 Passed |
Implementation
35%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill reads more like a feature specification or project requirements document than an actionable skill for Claude. Its biggest weakness is the complete absence of executable code examples despite covering a code generation task across four frameworks. The workflow is logically ordered but lacks validation checkpoints, and the referenced supporting files don't exist in the bundle.
Suggestions
Add concrete, executable code examples for at least one framework (e.g., a complete Express route file for a single resource) so Claude has a copy-paste-ready template to follow.
Include explicit validation checkpoints in the workflow, such as 'Run the test suite after generating routes to verify all endpoints return expected status codes' with the actual test command.
Convert the prose-based examples section into input/output pairs showing an actual OpenAPI spec snippet and the corresponding generated code.
Either provide the referenced bundle files (implementation.md, errors.md, examples.md) or inline the critical content; currently the skill delegates to non-existent files.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | The skill is moderately verbose with some unnecessary padding (e.g., listing every possible framework/language combination in prerequisites, the overview restating what the description already covers). The examples section describes scenarios in prose rather than showing concrete code, adding tokens without proportional value. | 2 / 3 |
Actionability | Despite listing 9 steps, there is zero executable code anywhere in the skill. No concrete commands, no code snippets, no copy-paste-ready examples. The instructions read as high-level descriptions ('Create route files implementing...', 'Implement controller logic with...') rather than actionable guidance with specific implementation patterns. | 1 / 3 |
Workflow Clarity | Steps are sequenced logically (scan → parse → generate routes → add middleware → test → update spec), but there are no validation checkpoints or feedback loops. For a code generation workflow that produces multiple interconnected files, there's no 'verify the generated code compiles/runs' step or iterative error recovery guidance. | 2 / 3 |
Progressive Disclosure | The skill references three external files (implementation.md, errors.md, examples.md) which is good structure, but none of these bundle files actually exist. The main file also contains a substantial error handling table and verbose examples section that could have been offloaded to those referenced files, creating an inconsistent split between inline and referenced content. | 2 / 3 |
Total | 7 / 12 Passed |
Validation
81%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 9 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
allowed_tools_field | 'allowed-tools' contains unusual tool name(s) | Warning |
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 9 / 11 Passed | |
3a2d27d
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.