CtrlK
BlogDocsLog inGet started
Tessl Logo

webiny-api-graphql-catalog

api/graphql — 7 abstractions.

53

Quality

67%

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 ./skills/user-skills/generated/api/graphql/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

92%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 an exemplary token-efficient catalog: lean entries with copy-paste imports and exact source paths, a clear unambiguous lookup workflow, and well-organized single-level structure that defers detail to source files appropriately. The only gap is the absence of a usage example showing how a response class is constructed and returned.

DimensionReasoningScore

Conciseness

The body is a lean catalog — each entry is exactly name, copy-paste import statement, source path, and a one-line description, with no padding and no explanation of GraphQL or Webiny concepts Claude already knows. Every token earns its place, matching the anchor-5 'lean and efficient' example.

5 / 5

Actionability

Each entry gives a literal copy-paste import ('import { Response } from "webiny/api/graphql"') and an exact source file path, plus a directive to read the source for exact types — mostly executable guidance with concrete commands. It falls short of anchor 5 only because there is no usage example (e.g. how to construct and return a Response in a resolver), leaving the most common case partly to the referenced source files.

4 / 5

Workflow Clarity

The 'How to Use' section lays out an unambiguous 4-step sequence (find the abstraction → read its source for exact types → import it → consult the named pattern skills), and per the rubric's simple-skill guidance a single-purpose lookup skill with one unambiguous action can score 5. No validation checkpoints are needed since the skill involves no destructive or batch operations.

5 / 5

Progressive Disclosure

No bundle files exist (references/, scripts/, assets/ are absent) and the skill is under 50 lines with no need for external references, which per the rubric guideline scores 5 with well-organized sections alone. The body is cleanly sectioned ('How to Use' vs the per-abstraction catalog), all in-body references point to real named skills rather than nested files, and deep detail is correctly deferred to the cited source files — references are one level deep and clearly signaled.

5 / 5

Total

19

/

20

Passed

Description

25%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 a terse label rather than a capability statement: it identifies the domain and item count but communicates no actions, no trigger guidance, and none of the natural terms (Webiny, GraphQL response, schema) a user would actually say. It would rarely be selected by trigger matching and does not distinguish itself from sibling catalog skills.

Suggestions

State concrete capabilities in third person, e.g. 'Catalogs the 7 GraphQL abstractions exported by @webiny/api-graphql — Response, ErrorResponse, ListResponse, ListErrorResponse, NotFoundResponse, NotAuthorizedResponse, GraphQLSchemaFactory — with import paths and source file locations.'

Add an explicit trigger clause, e.g. 'Use when building or modifying Webiny GraphQL handlers and you need the correct response class or schema extension abstraction.'

Include natural trigger terms and synonyms users would say — 'Webiny', 'GraphQL response', 'not found response', 'not authorized', 'GraphQL schema extension' — rather than only the package-internal path 'api/graphql'.

DimensionReasoningScore

Specificity

The description is 'api/graphql — 7 abstractions.' — it names the domain (api/graphql) and a count of items, but contains no action verbs or concrete capabilities whatsoever. It matches anchor 2 ('Names the domain but actions are minimal or generic') more than anchor 1 only because the domain is named and quantified; it is not entirely generic language like 'Helps with documents'.

2 / 5

Completeness

The 'what' is extremely vague ('7 abstractions' does not say what is done with them — it's a catalog, not a capability statement) and there is no 'when' clause at all, matching anchor 2 ('Has a vague what and no when'). Per the guideline, a missing 'Use when...' clause caps completeness at 3, and this sits below that cap because the 'what' itself is barely stated.

2 / 5

Trigger Term Quality

The only terms present are the technical path 'api/graphql' and the jargon word 'abstractions'; 'GraphQL' itself is a term users naturally say, which lifts it above anchor 1, but common natural phrases like 'Webiny', 'GraphQL response', 'not found response', or 'GraphQL schema' are all missing.

2 / 5

Distinctiveness Conflict Risk

The word 'Webiny' never appears, so 'api/graphql — 7 abstractions' could plausibly match any GraphQL-related skill in a Webiny or non-Webiny project — very broad with high overlap risk against sibling catalog skills (e.g. an api/http or api/graphql-security catalog would trigger similarly), matching anchor 2 rather than anchor 3's 'somewhat specific' framing.

2 / 5

Total

8

/

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
webiny/webiny-js
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.