CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

add-api-endpoint

Add an endpoint to the backend.

Quality

61%

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

Fix and improve this skill with Tessl

tessl review fix ./review-plugin-creator/evals/derive-rubric-from-evidence/inputs/target-skill/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

65%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 body is maximally concise and cleanly organized, but it reads as a skeleton rather than a skill: it points at a directory and gestures at schemas, types, and testing without a single executable command or code example. An agent following it would have to invent nearly all of the implementation details.

Suggestions

Add a minimal executable Fastify route example (handler registration plus JSON schema) so step 1-2 are copy-paste ready rather than descriptive.

Replace 'Test it' with a concrete validation checkpoint, e.g., 'Run `npm test src/routes/<name>.test.ts` and fix failures before finishing', including a retry loop.

Specify the schema/type technology in use (e.g., TypeBox or JSON Schema) and the command that keeps types in sync, turning 'Make sure the types are in sync' into an actionable step.

DimensionReasoningScore

Conciseness

The body is a 13-line instruction with zero padding — no explanation of what Fastify is, what a route handler is, or how testing works. It assumes Claude's competence entirely; every token earns its place, matching the 'lean and efficient' anchor exactly.

5 / 5

Actionability

Only one concrete detail exists (the `src/routes/` directory); 'Add the request and response schema' names no schema technology (JSON schema, TypeBox, Zod), 'Make sure the types are in sync' gives no command or method, and 'Test it' specifies no test runner or command. This matches anchor 2 ('minimal concrete guidance; high-level hints but missing the specific steps to execute') — not level 3, because there is no partially-executable code, only hints.

2 / 5

Workflow Clarity

The four steps form a coherent sequence ending with a validation gesture ('Test it'), mirroring anchor 3's example ('1. Unpack 2. Edit 3. Repack 4. Test the output') — steps listed, but checkpoints are missing or implicit since no command, expected outcome, or failure handling is given. Not level 4, which requires most checkpoints concretely present.

3 / 5

Progressive Disclosure

This is a simple skill under 50 lines with no bundle files (no references/, scripts/, or assets/ directories exist) and no need for external references; per the rubric's simple-skills guideline, well-organized concise sections earn a 5. The single '## Steps' section is appropriately scoped with no inlined bulk content.

5 / 5

Total

15

/

20

Passed

Description

37%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 is lean but under-specified: it conveys only a single generic action and omits any 'when to use' guidance, trigger synonyms, or framework-specific terms. It would rarely be selected with confidence over related backend/API skills.

Suggestions

State multiple concrete actions, e.g., 'Add new REST endpoints to the Fastify backend: route handlers, request/response schemas, and type definitions' (improves specificity).

Add an explicit trigger clause such as 'Use when the user asks to add, create, or expose an API endpoint, route, or backend feature' (improves completeness and trigger quality).

Include natural synonyms users would actually say — 'API endpoint', 'route', 'Fastify', 'backend' — to reduce conflict with generic backend skills (improves distinctiveness).

DimensionReasoningScore

Specificity

"Add an endpoint to the backend" names the domain (backend) but offers only a single minimal action with no elaboration — no mention of API routes, schemas, Fastify, or HTTP methods. This matches the anchor 'Names the domain but actions are minimal or generic' rather than level 3, which requires 1-2 concrete, specific actions; 'endpoint' alone is too generic to count.

2 / 5

Completeness

There is a clear (if terse) 'what' — adding an endpoint to the backend — but no 'when' clause or equivalent trigger guidance, capping completeness at 3 per the judging guidelines. It cannot score 4 without any 'Use when...' phrasing.

3 / 5

Trigger Term Quality

Only two generic keywords appear ('endpoint', 'backend'); natural phrases users would say — 'API', 'route', 'REST', 'Fastify', 'expose an endpoint' — are all missing. This sits between anchor 2 ('one or two generic keywords') and anchor 3 ('some relevant keywords'), but is noticeably below the midpoint because 'API' itself is absent.

2 / 5

Distinctiveness Conflict Risk

"Endpoint" and "backend" give it a niche, but the description could overlap with any backend-development, API-design, or server-configuration skill, matching anchor 3 ('somewhat specific but could still overlap with similar skills'). Not level 4, since no framework or distinctive trigger narrows the overlap.

3 / 5

Total

10

/

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.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

tesslio/product-plugins

Path

review-plugin-creator/evals/derive-rubric-from-evidence/inputs/target-skill/SKILL.md

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.